aboutsummaryrefslogblamecommitdiffstats
path: root/ethutil/reactor_test.go
blob: 48c2f0df3594ae3236cf1a39561531a4f770d9a6 (plain) (tree)





























                                                                               
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")
    }
}