package topic import ( "testing" "p78git.ddns.net/svi/gobus/api/netapi" ) /* Тест для топика шины данных */ type tester struct { t *testing.T topic *Topic } func TestTopic(t *testing.T) { sf := &tester{ t: t, } sf.create() } // Создание топика func (sf *tester) create() { sf.t.Logf("create") sf.createBad1() sf.createGood1() } func (sf *tester) createGood1() { sf.t.Logf("createGood1") msg := &netapi.TopicMsg{ Source: 0, Topic: "test_topic", BinMsg: []byte{}, StrUuid: "", } var err error sf.topic, err = NewTopic(msg) if err != nil { sf.t.Fatalf("createGood1(): err=%v", err) } if sf.topic == nil { sf.t.Fatalf("createGood1(): topic==nil") } if stat := sf.topic.Stat(); stat == nil { sf.t.Fatalf("createGood1(): stat==nil") } if msg1 := sf.topic.Get(); msg1 != msg { sf.t.Fatalf("createGood1(): msg!=msg1") } if name := sf.topic.Name(); name != "test_topic" { sf.t.Fatalf("createGood1(): name(%q)!='test_Topic'", name) } } // Нет имени топика func (sf *tester) createBad1() { sf.t.Logf("createBad1") topic, err := NewTopic(nil) if err == nil { sf.t.Fatalf("createBad1(): err==nil") } if topic != nil { sf.t.Fatalf("createBad1(): topic!=nil") } }