Skip to content

Commit 5727cc3

Browse files
Added test for batch writer failure
1 parent 80ccdd1 commit 5727cc3

File tree

1 file changed

+27
-0
lines changed

1 file changed

+27
-0
lines changed

triton/write_batch_test.go

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -77,3 +77,30 @@ func TestBatchWriterTimeExceeded(t *testing.T) {
7777
t.Fatal("Batcher did not write when time exceeded")
7878
}
7979
}
80+
81+
func TestBatchWriterFailed(t *testing.T) {
82+
configString := bytes.NewBufferString(`
83+
my_stream:
84+
name: test-stream
85+
partition_key: value
86+
region: us-west-1
87+
`)
88+
c, _ := NewConfigFromFile(configString)
89+
config, _ := c.ConfigForName("my_stream")
90+
91+
r := Record(map[string]interface{}{"value": "test-value"})
92+
w := NewTestWriter(config, &FailingKinesisService{}, 1)
93+
bw := NewBatchWriterSize(w, 1, 1*time.Hour)
94+
bw.WriteRecords(r)
95+
96+
// wait for write -- this is technically a race condition
97+
time.Sleep(1 * time.Millisecond)
98+
99+
select {
100+
case <-bw.Errors():
101+
// expected behavior
102+
default:
103+
t.Fatal("Write did not fail as expected")
104+
}
105+
106+
}

0 commit comments

Comments
 (0)