Lines Matching +full:write +full:- +full:output
7 // https://www.apache.org/licenses/LICENSE-2.0
37 // The output function checks that the data is properly aligned and matches
50 // Write values smaller than the alignment. in TEST()
51 EXPECT_EQ(OkStatus(), writer.Write(kBytes.subspan(0, 1)).status()); in TEST()
52 EXPECT_EQ(OkStatus(), writer.Write(kBytes.subspan(1, 9)).status()); in TEST()
54 // Write values larger than the alignment but smaller than the buffer. in TEST()
55 EXPECT_EQ(OkStatus(), writer.Write(kBytes.subspan(10, 11)).status()); in TEST()
58 EXPECT_EQ(OkStatus(), writer.Write(kBytes.subspan(21, 11)).status()); in TEST()
61 EXPECT_EQ(OkStatus(), writer.Write(kBytes.subspan(32, 66)).status()); in TEST()
63 // Write nothing. in TEST()
64 EXPECT_EQ(OkStatus(), writer.Write(kBytes.subspan(98, 0)).status()); in TEST()
66 // Write the remaining data. in TEST()
67 EXPECT_EQ(OkStatus(), writer.Write(kBytes.subspan(98, 2)).status()); in TEST()
78 OutputToFunction output([](span<const byte> data) { in TEST() local
84 AlignedWriterBuffer<64> writer(3, output); in TEST()
86 writer.Write(as_bytes(span("What is this?"))).status()); in TEST()
87 EXPECT_EQ(called_with_bytes, 0u); // Buffer not full; no output yet. in TEST()
93 // Output class that can be programmed to fail for testing purposes.
97 struct OutputWithErrorInjection final : public Output {
118 OutputWithErrorInjection output; in TEST() local
121 AlignedWriterBuffer<4> writer(3, output); in TEST()
123 writer.Write(as_bytes(span("Everything is fine."))).status()); in TEST()
124 output.state = OutputWithErrorInjection::kBreakOnNext; in TEST()
126 writer.Write(as_bytes(span("No more writes, okay?"))).status()); in TEST()
134 OutputToFunction output([](span<const byte> data) { in TEST() local
138 AlignedWriterBuffer<22> writer(10, output); in TEST()
140 StatusWithSize result = writer.Write(as_bytes(span("12345678901"sv))); in TEST()
144 result = writer.Write(as_bytes(span("2345678901"sv))); in TEST()
150 result = writer.Write(as_bytes(span("2345678901234567890"sv))); in TEST()
156 OutputToFunction output( in TEST() local
159 AlignedWriterBuffer<4> writer(2, output); in TEST()
161 EXPECT_EQ(OkStatus(), writer.Write(as_bytes(span("12345678901"sv))).status()); in TEST()
169 OutputToFunction output([](span<const byte> data) { in TEST() local
173 AlignedWriterBuffer<20> writer(10, output); in TEST()
175 EXPECT_EQ(0u, writer.Write(as_bytes(span("12345678901"sv))).size()); in TEST()
206 size_t break_on_index_ = size_t(-1);
213 StatusWithSize result = writer.Write(input, kData.size()); in TEST()
228 StatusWithSize result = writer.Write(input, kData.size()); in TEST()
235 OutputWithErrorInjection output; in TEST() local
237 AlignedWriterBuffer<4> writer(3, output); in TEST()
238 output.state = OutputWithErrorInjection::kBreakOnNext; in TEST()
240 StatusWithSize result = writer.Write(input, kData.size()); in TEST()
242 EXPECT_EQ(3u, result.size()); // Attempted to write 3 bytes. in TEST()