Browse Source

Prelim no-network broker tests.

Evan Huus 12 years ago
parent
commit
51c44f4aa6
1 changed files with 44 additions and 0 deletions
  1. 44 0
      protocol/broker_test.go

+ 44 - 0
protocol/broker_test.go

@@ -0,0 +1,44 @@
+package protocol
+
+import "testing"
+
+func TestBrokerEquals(t *testing.T) {
+	var b1, b2 *Broker
+
+	b1 = nil
+	b2 = nil
+
+	if !b1.Equals(b2) {
+		t.Error("Two nil brokers didn't compare equal.")
+	}
+
+	b1 = NewBroker("abc", 123)
+
+	if b1.Equals(b2) {
+		t.Error("Non-nil and nil brokers compared equal.")
+	}
+	if b2.Equals(b1) {
+		t.Error("Nil and non-nil brokers compared equal.")
+	}
+
+	b2 = NewBroker("abc", 1234)
+	if b1.Equals(b2) || b2.Equals(b1) {
+		t.Error("Brokers with different ports compared equal.")
+	}
+
+	b2 = NewBroker("abcd", 123)
+	if b1.Equals(b2) || b2.Equals(b1) {
+		t.Error("Brokers with different hosts compared equal.")
+	}
+
+	b2 = NewBroker("abc", 123)
+	b2.id = -2
+	if b1.Equals(b2) || b2.Equals(b1) {
+		t.Error("Brokers with different ids compared equal.")
+	}
+
+	b2.id = -1
+	if !b1.Equals(b2) || !b2.Equals(b1) {
+		t.Error("Similar brokers did not compare equal.")
+	}
+}