log_topic_test.go 1.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. package log_topic
  2. import (
  3. "testing"
  4. "gitp78su.ipnodns.ru/svi/kern/v4/lev2/kctx"
  5. "gitp78su.ipnodns.ru/svi/kern/v4/lev2/lti/bus_ent"
  6. "gitp78su.ipnodns.ru/svi/kern/v4/lev2/lti/bus_ent/topic"
  7. "gitp78su.ipnodns.ru/svi/kern/v4/lev2/lti/kbus_local/client_bus_local"
  8. )
  9. type tester struct {
  10. t *testing.T
  11. }
  12. func TestLogTopic(t *testing.T) {
  13. sf := &tester{
  14. t: t,
  15. }
  16. sf.new()
  17. }
  18. // Создаёт новый топик для логирования.
  19. func (sf *tester) new() {
  20. sf.t.Log("new")
  21. sf.newGood1()
  22. }
  23. // Правильное создание топика.
  24. func (sf *tester) newGood1() {
  25. sf.t.Log("newGood1")
  26. busClient := client_bus_local.NewClientBusLocal()
  27. qTopicTest := bus_ent.ITopicFix(topic.NewTopic("test_topic"))
  28. client := NewLogTopic(qTopicTest, busClient).Hassert("newGood1()")
  29. res := client.Pub([]byte("test_msg"))
  30. if res.IsErr() {
  31. sf.t.Fatalf("newGood1(): err=%v", res.Err())
  32. }
  33. kCtx := kctx.GetKernelCtx()
  34. kCtx.Cancel()
  35. kCtx.Wg().Wait()
  36. res = client.Pub([]byte("test_msg"))
  37. if !res.IsErr() {
  38. sf.t.Fatalf("newGood1(): err==nil")
  39. }
  40. }