ソースを参照

add some testing

tags/v1.1.0-rc1
Shivaram Lingamneni 5年前
コミット
dee9740e68
1個のファイルの変更23行の追加0行の削除
  1. 23
    0
      irc/modes/modes_test.go

+ 23
- 0
irc/modes/modes_test.go ファイルの表示

@@ -77,6 +77,16 @@ func TestSetMode(t *testing.T) {
77 77
 	}
78 78
 }
79 79
 
80
+func TestModeString(t *testing.T) {
81
+	set := NewModeSet()
82
+	set.SetMode('A', true)
83
+	set.SetMode('z', true)
84
+
85
+	if modeString := set.String(); !(modeString == "Az" || modeString == "Za") {
86
+		t.Errorf("unexpected modestring: %s", modeString)
87
+	}
88
+}
89
+
80 90
 func TestNilReceivers(t *testing.T) {
81 91
 	set := NewModeSet()
82 92
 	set = nil
@@ -113,3 +123,16 @@ func TestHighestChannelUserMode(t *testing.T) {
113 123
 		t.Errorf("nil modeset should have the zero mode as highest channel-user mode")
114 124
 	}
115 125
 }
126
+
127
+func BenchmarkModeString(b *testing.B) {
128
+	set := NewModeSet()
129
+	set.SetMode('A', true)
130
+	set.SetMode('N', true)
131
+	set.SetMode('b', true)
132
+	set.SetMode('i', true)
133
+	set.SetMode('x', true)
134
+	b.ResetTimer()
135
+	for i := 0; i < b.N; i++ {
136
+		_ = set.String()
137
+	}
138
+}

読み込み中…
キャンセル
保存