Skip to content

Commit e85c2af

Browse files
committed
Add regression test for RequiredAcks == RequireNone
This new test is required because all the other Writer tests use NewWriter() to create Writers, which sets RequiredAcks to RequireAll when 0 (None) was specified.
1 parent e386993 commit e85c2af

File tree

1 file changed

+28
-0
lines changed

1 file changed

+28
-0
lines changed

writer_test.go

+28
Original file line numberDiff line numberDiff line change
@@ -51,6 +51,10 @@ func TestWriter(t *testing.T) {
5151
scenario: "setting a non default balancer on the writer",
5252
function: testWriterSetsRightBalancer,
5353
},
54+
{
55+
scenario: "setting RequiredAcks to None in Writer doesn't cause a panic",
56+
function: testWriterRequiredAcksNone,
57+
},
5458
}
5559

5660
for _, test := range tests {
@@ -83,6 +87,30 @@ func testWriterClose(t *testing.T) {
8387
}
8488
}
8589

90+
func testWriterRequiredAcksNone(t *testing.T) {
91+
topic := makeTopic()
92+
createTopic(t, topic, 1)
93+
defer deleteTopic(t, topic)
94+
95+
w := &Writer{
96+
Addr: TCP("localhost:9092"),
97+
Topic: topic,
98+
Balancer: &RoundRobin{},
99+
RequiredAcks: RequireNone,
100+
}
101+
defer w.Close()
102+
103+
msg := Message{
104+
Key: []byte("ThisIsAKey"),
105+
Value: []byte("Test message for required acks test")}
106+
107+
err := w.WriteMessages(context.Background(), msg)
108+
if err != nil {
109+
t.Error(err)
110+
t.FailNow()
111+
}
112+
}
113+
86114
func testWriterSetsRightBalancer(t *testing.T) {
87115
const topic = "test-writer-1"
88116
balancer := &CRC32Balancer{}

0 commit comments

Comments
 (0)