Merge pull request #1239 from dotcloud/fix_utils_tests

fix error in utils tests
This commit is contained in:
Victor Vieux 2013-07-19 06:59:07 -07:00
commit d93742fe9a
1 changed files with 9 additions and 22 deletions

View File

@ -60,9 +60,9 @@ func TestWriteBroadcaster(t *testing.T) {
// Test 1: Both bufferA and bufferB should contain "foo" // Test 1: Both bufferA and bufferB should contain "foo"
bufferA := &dummyWriter{} bufferA := &dummyWriter{}
writer.AddWriter(bufferA) writer.AddWriter(bufferA, "")
bufferB := &dummyWriter{} bufferB := &dummyWriter{}
writer.AddWriter(bufferB) writer.AddWriter(bufferB, "")
writer.Write([]byte("foo")) writer.Write([]byte("foo"))
if bufferA.String() != "foo" { if bufferA.String() != "foo" {
@ -76,7 +76,7 @@ func TestWriteBroadcaster(t *testing.T) {
// Test2: bufferA and bufferB should contain "foobar", // Test2: bufferA and bufferB should contain "foobar",
// while bufferC should only contain "bar" // while bufferC should only contain "bar"
bufferC := &dummyWriter{} bufferC := &dummyWriter{}
writer.AddWriter(bufferC) writer.AddWriter(bufferC, "")
writer.Write([]byte("bar")) writer.Write([]byte("bar"))
if bufferA.String() != "foobar" { if bufferA.String() != "foobar" {
@ -91,35 +91,22 @@ func TestWriteBroadcaster(t *testing.T) {
t.Errorf("Buffer contains %v", bufferC.String()) t.Errorf("Buffer contains %v", bufferC.String())
} }
// Test3: Test removal // Test3: Test eviction on failure
writer.RemoveWriter(bufferB)
writer.Write([]byte("42"))
if bufferA.String() != "foobar42" {
t.Errorf("Buffer contains %v", bufferA.String())
}
if bufferB.String() != "foobar" {
t.Errorf("Buffer contains %v", bufferB.String())
}
if bufferC.String() != "bar42" {
t.Errorf("Buffer contains %v", bufferC.String())
}
// Test4: Test eviction on failure
bufferA.failOnWrite = true bufferA.failOnWrite = true
writer.Write([]byte("fail")) writer.Write([]byte("fail"))
if bufferA.String() != "foobar42" { if bufferA.String() != "foobar" {
t.Errorf("Buffer contains %v", bufferA.String()) t.Errorf("Buffer contains %v", bufferA.String())
} }
if bufferC.String() != "bar42fail" { if bufferC.String() != "barfail" {
t.Errorf("Buffer contains %v", bufferC.String()) t.Errorf("Buffer contains %v", bufferC.String())
} }
// Even though we reset the flag, no more writes should go in there // Even though we reset the flag, no more writes should go in there
bufferA.failOnWrite = false bufferA.failOnWrite = false
writer.Write([]byte("test")) writer.Write([]byte("test"))
if bufferA.String() != "foobar42" { if bufferA.String() != "foobar" {
t.Errorf("Buffer contains %v", bufferA.String()) t.Errorf("Buffer contains %v", bufferA.String())
} }
if bufferC.String() != "bar42failtest" { if bufferC.String() != "barfailtest" {
t.Errorf("Buffer contains %v", bufferC.String()) t.Errorf("Buffer contains %v", bufferC.String())
} }
@ -141,7 +128,7 @@ func TestRaceWriteBroadcaster(t *testing.T) {
writer := NewWriteBroadcaster() writer := NewWriteBroadcaster()
c := make(chan bool) c := make(chan bool)
go func() { go func() {
writer.AddWriter(devNullCloser(0)) writer.AddWriter(devNullCloser(0), "")
c <- true c <- true
}() }()
writer.Write([]byte("hello")) writer.Write([]byte("hello"))