(config TestConfig, writerBroker *streamclient.Broker, streamMeta *wshrpc.StreamMeta)
| 181 | } |
| 182 | |
| 183 | func runWriterMode(config TestConfig, writerBroker *streamclient.Broker, streamMeta *wshrpc.StreamMeta) chan error { |
| 184 | writer, err := writerBroker.CreateStreamWriter(streamMeta) |
| 185 | if err != nil { |
| 186 | fmt.Printf("failed to create stream writer: %v\n", err) |
| 187 | return nil |
| 188 | } |
| 189 | fmt.Printf(" Stream writer created\n") |
| 190 | |
| 191 | generator := NewTestDataGenerator(config.DataSize) |
| 192 | |
| 193 | done := make(chan error, 1) |
| 194 | go func() { |
| 195 | _, copyErr := io.Copy(writer, generator) |
| 196 | closeErr := writer.Close() |
| 197 | if copyErr != nil && copyErr != io.EOF { |
| 198 | done <- copyErr |
| 199 | } else { |
| 200 | done <- closeErr |
| 201 | } |
| 202 | }() |
| 203 | |
| 204 | return done |
| 205 | } |
| 206 | |
| 207 | // BrokerDataSender implements DataSender interface |
| 208 | type BrokerDataSender struct { |
no test coverage detected