OpenCores
URL https://opencores.org/ocsvn/openrisc/openrisc/trunk

Subversion Repositories openrisc

[/] [openrisc/] [trunk/] [gnu-dev/] [or1k-gcc/] [libgo/] [go/] [testing/] [script/] [script_test.go] - Blame information for rev 747

Details | Compare with Previous | View Log

Line No. Rev Author Line
1 747 jeremybenn
// Copyright 2009 The Go Authors. All rights reserved.
2
// Use of this source code is governed by a BSD-style
3
// license that can be found in the LICENSE file.
4
 
5
package script
6
 
7
import (
8
        "testing"
9
)
10
 
11
func TestNoop(t *testing.T) {
12
        err := Perform(0, nil)
13
        if err != nil {
14
                t.Errorf("Got error: %s", err)
15
        }
16
}
17
 
18
func TestSimple(t *testing.T) {
19
        c := make(chan int)
20
        defer close(c)
21
 
22
        a := NewEvent("send", nil, Send{c, 1})
23
        b := NewEvent("recv", []*Event{a}, Recv{c, 1})
24
 
25
        err := Perform(0, []*Event{a, b})
26
        if err != nil {
27
                t.Errorf("Got error: %s", err)
28
        }
29
}
30
 
31
func TestFail(t *testing.T) {
32
        c := make(chan int)
33
        defer close(c)
34
 
35
        a := NewEvent("send", nil, Send{c, 2})
36
        b := NewEvent("recv", []*Event{a}, Recv{c, 1})
37
 
38
        err := Perform(0, []*Event{a, b})
39
        if err == nil {
40
                t.Errorf("Failed to get expected error")
41
        } else if _, ok := err.(ReceivedUnexpected); !ok {
42
                t.Errorf("Error returned was of the wrong type: %s", err)
43
        }
44
}
45
 
46
func TestClose(t *testing.T) {
47
        c := make(chan int)
48
 
49
        a := NewEvent("close", nil, Close{c})
50
        b := NewEvent("closed", []*Event{a}, Closed{c})
51
 
52
        err := Perform(0, []*Event{a, b})
53
        if err != nil {
54
                t.Errorf("Got error: %s", err)
55
        }
56
}
57
 
58
func matchOne(v interface{}) bool {
59
        if i, ok := v.(int); ok && i == 1 {
60
                return true
61
        }
62
        return false
63
}
64
 
65
func TestRecvMatch(t *testing.T) {
66
        c := make(chan int)
67
 
68
        a := NewEvent("send", nil, Send{c, 1})
69
        b := NewEvent("recv", []*Event{a}, RecvMatch{c, matchOne})
70
 
71
        err := Perform(0, []*Event{a, b})
72
        if err != nil {
73
                t.Errorf("Got error: %s", err)
74
        }
75
}

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.