Skip to content

Commit

Permalink
- Added: doc example test
Browse files Browse the repository at this point in the history
- Updated: Improved splited up bus benchmark test
- Bugfix: Wrong method call in README example
  • Loading branch information
donutloop committed Sep 30, 2017
1 parent 3b5137a commit 6519955
Show file tree
Hide file tree
Showing 3 changed files with 48 additions and 24 deletions.
2 changes: 1 addition & 1 deletion bus/README.md
Expand Up @@ -30,6 +30,6 @@ func main() {
return nil
})

b.Dispatch(new(msg))
b.Publish(new(msg))
}
```
42 changes: 19 additions & 23 deletions bus/bus_test.go
Expand Up @@ -101,50 +101,46 @@ func TestAddListenerBadFunc(t *testing.T) {
})
}

func BenchmarkRun(b *testing.B) {
func BenchmarkHandlerRun(b *testing.B) {
for n := 0; n < b.N; n++ {
b := bus.New()
bus := bus.New()

b.AddEventListener(func(m *msg) error {
bus.AddHandler(func(m *msg) error {
return nil
})

b.AddEventListener(func(m *msg) error {
return nil
})

b.AddEventListener(func(m *msg) error {
return nil
})

b.AddEventListener(func(m *msg) error {
return nil
})
if err := bus.Dispatch(new(msg)); err != nil {
b.Fatal(err)
}
}
}

b.AddEventListener(func(m *msg) error {
return nil
})
func BenchmarkListenerRun(b *testing.B) {
for n := 0; n < b.N; n++ {
bus := bus.New()

b.AddHandler(func(m *msg) error {
bus.AddEventListener(func(m *msg) error {
return nil
})

b.AddHandler(func(m *msg) error {
bus.AddEventListener(func(m *msg) error {
return nil
})

b.AddHandler(func(m *msg) error {
bus.AddEventListener(func(m *msg) error {
return nil
})

b.AddHandler(func(m *msg) error {
bus.AddEventListener(func(m *msg) error {
return nil
})

b.AddHandler(func(m *msg) error {
bus.AddEventListener(func(m *msg) error {
return nil
})

b.Dispatch(new(msg))
if err := bus.Publish(new(msg)); err != nil {
b.Fatal(err)
}
}
}
28 changes: 28 additions & 0 deletions bus/doc_test.go
@@ -0,0 +1,28 @@
package bus_test

import (
"fmt"
"github.com/donutloop/toolkit/bus"
)

// Creates a bus and adds a listener to a message afterward it publishes a new message
func ExampleBus() {

type msg struct {
Id int64
body string
}

b := bus.New()

b.AddEventListener(func(m *msg) error {
fmt.Println("db insert listener")
return nil
})

if err := b.Publish(new(msg)); err != nil {
fmt.Println(fmt.Sprintf("bus: %v", err))
}

// Output: db insert listener
}

0 comments on commit 6519955

Please sign in to comment.