Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
G
Geth-Modification
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
张蕾
Geth-Modification
Commits
0ecc5c81
Commit
0ecc5c81
authored
Jul 14, 2014
by
zelig
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
reactor test
parent
d1c89727
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
63 additions
and
0 deletions
+63
-0
reactor_test.go
ethreact/reactor_test.go
+63
-0
No files found.
ethreact/reactor_test.go
0 → 100644
View file @
0ecc5c81
package
ethreact
import
(
"fmt"
"testing"
)
func
TestReactorAdd
(
t
*
testing
.
T
)
{
reactor
:=
New
()
ch
:=
make
(
chan
Event
)
reactor
.
Subscribe
(
"test"
,
ch
)
if
reactor
.
eventHandlers
[
"test"
]
==
nil
{
t
.
Error
(
"Expected new eventHandler to be created"
)
}
reactor
.
Unsubscribe
(
"test"
,
ch
)
if
reactor
.
eventHandlers
[
"test"
]
!=
nil
{
t
.
Error
(
"Expected eventHandler to be removed"
)
}
}
func
TestReactorEvent
(
t
*
testing
.
T
)
{
var
name
string
reactor
:=
New
()
// Buffer the channel, so it doesn't block for this test
cap
:=
20
ch
:=
make
(
chan
Event
,
cap
)
reactor
.
Subscribe
(
"even"
,
ch
)
reactor
.
Subscribe
(
"odd"
,
ch
)
reactor
.
Post
(
"even"
,
"disappears"
)
// should not broadcast if engine not started
reactor
.
Start
()
for
i
:=
0
;
i
<
cap
;
i
++
{
if
i
%
2
==
0
{
name
=
"even"
}
else
{
name
=
"odd"
}
reactor
.
Post
(
name
,
i
)
}
reactor
.
Post
(
"test"
,
cap
)
// this should not block
i
:=
0
reactor
.
Flush
()
close
(
ch
)
for
event
:=
range
ch
{
fmt
.
Printf
(
"%d: %v"
,
i
,
event
)
if
i
%
2
==
0
{
name
=
"even"
}
else
{
name
=
"odd"
}
if
val
,
ok
:=
event
.
Resource
.
(
int
);
ok
{
if
i
!=
val
||
event
.
Name
!=
name
{
t
.
Error
(
"Expected event %d to be of type %s and resource %d, got "
,
i
,
name
,
i
,
val
)
}
}
else
{
t
.
Error
(
"Unable to cast"
)
}
i
++
}
if
i
!=
cap
{
t
.
Error
(
"excpected exactly %d events, got "
,
i
)
}
reactor
.
Stop
()
}
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment