aboutsummaryrefslogtreecommitdiffstats
path: root/ethutil/reactor_test.go
diff options
context:
space:
mode:
Diffstat (limited to 'ethutil/reactor_test.go')
-rw-r--r--ethutil/reactor_test.go30
1 files changed, 30 insertions, 0 deletions
diff --git a/ethutil/reactor_test.go b/ethutil/reactor_test.go
new file mode 100644
index 000000000..48c2f0df3
--- /dev/null
+++ b/ethutil/reactor_test.go
@@ -0,0 +1,30 @@
+package ethutil
+
+import "testing"
+
+func TestReactorAdd(t *testing.T) {
+ engine := NewReactorEngine()
+ ch := make(chan React)
+ engine.Subscribe("test", ch)
+ if len(engine.patterns) != 1 {
+ t.Error("Expected patterns to be 1, got", len(engine.patterns))
+ }
+}
+
+func TestReactorEvent(t *testing.T) {
+ engine := NewReactorEngine()
+
+ // Buffer 1, so it doesn't block for this test
+ ch := make(chan React, 1)
+ engine.Subscribe("test", ch)
+ engine.Post("test", "hello")
+
+ value := <-ch
+ if val, ok := value.Resource.(string); ok {
+ if val != "hello" {
+ t.Error("Expected Resource to be 'hello', got", val)
+ }
+ } else {
+ t.Error("Unable to cast")
+ }
+}