Skip to content

Commit a92b27a

Browse files
glbrnttWendellXY
authored andcommitted
Remove unused code (grpc#1549)
Motivation: We added a coalescing message framer in grpc#1539 and grpc#1546. The old framer is no longer used. Modification: - Remote the now unused message writer and tests Result: Less unused code.
1 parent 81c7a32 commit a92b27a

File tree

3 files changed

+39
-292
lines changed

3 files changed

+39
-292
lines changed

Sources/GRPC/LengthPrefixedMessageWriter.swift

-133
This file was deleted.

Tests/GRPCTests/GRPCClientStateMachineTests.swift

+39-50
Original file line numberDiff line numberDiff line change
@@ -38,16 +38,21 @@ class GRPCClientStateMachineTests: GRPCTestCase {
3838
func writeMessage(_ message: String) throws -> ByteBuffer {
3939
let buffer = self.allocator.buffer(string: message)
4040

41-
var writer = LengthPrefixedMessageWriter(compression: .none, allocator: .init())
42-
var (buffer1, buffer2) = try writer.write(
43-
buffer: buffer,
44-
compressed: false
45-
)
46-
47-
if var buffer2 = buffer2 {
48-
buffer1.writeBuffer(&buffer2)
41+
var writer = CoalescingLengthPrefixedMessageWriter(compression: .none, allocator: .init())
42+
writer.append(buffer: buffer, compress: false, promise: nil)
43+
44+
var result: ByteBuffer?
45+
while let next = writer.next() {
46+
switch next.0 {
47+
case let .success(buffer):
48+
result.setOrWriteImmutableBuffer(buffer)
49+
case let .failure(error):
50+
throw error
51+
}
4952
}
50-
return buffer1
53+
54+
// We wrote a message, we must get at least one buffer out (or throw).
55+
return result!
5156
}
5257

5358
/// Writes a message into the given `buffer`.
@@ -1119,6 +1124,14 @@ extension GRPCClientStateMachineTests {
11191124
class ReadStateTests: GRPCTestCase {
11201125
var allocator = ByteBufferAllocator()
11211126

1127+
func writeMessage(_ message: String) -> ByteBuffer {
1128+
var buffer = self.allocator.buffer(capacity: 5 + message.utf8.count)
1129+
buffer.writeInteger(UInt8(0))
1130+
buffer.writeInteger(UInt32(message.utf8.count))
1131+
buffer.writeBytes(message.utf8)
1132+
return buffer
1133+
}
1134+
11221135
func testReadWhenNoExpectedMessages() {
11231136
var state: ReadState = .notReading
11241137
var buffer = self.allocator.buffer(capacity: 0)
@@ -1129,86 +1142,62 @@ class ReadStateTests: GRPCTestCase {
11291142
}
11301143

11311144
func testReadWithLeftOverBytesForOneExpectedMessage() throws {
1132-
// Write a message into the buffer:
1133-
let message = ByteBuffer(string: "Hello!")
1134-
var writer = LengthPrefixedMessageWriter(compression: .none)
1135-
var buffers = try writer.write(buffer: message)
1136-
XCTAssertNil(buffers.1)
1145+
var buffer = self.writeMessage("Hello!")
11371146
// And some extra junk bytes:
11381147
let bytes: [UInt8] = [0x00]
1139-
buffers.0.writeBytes(bytes)
1148+
buffer.writeBytes(bytes)
11401149

11411150
var state: ReadState = .one()
1142-
state.readMessages(&buffers.0, maxLength: .max).assertFailure {
1151+
state.readMessages(&buffer, maxLength: .max).assertFailure {
11431152
XCTAssertEqual($0, .leftOverBytes)
11441153
}
11451154
state.assertNotReading()
11461155
}
11471156

11481157
func testReadTooManyMessagesForOneExpectedMessages() throws {
11491158
// Write a message into the buffer twice:
1150-
let message = ByteBuffer(string: "Hello!")
1151-
var writer = LengthPrefixedMessageWriter(compression: .none)
1152-
var buffers1 = try writer.write(buffer: message)
1153-
var buffers2 = try writer.write(buffer: message)
1154-
XCTAssertNil(buffers1.1)
1155-
XCTAssertNil(buffers2.1)
1156-
buffers1.0.writeBuffer(&buffers2.0)
1159+
var buffer1 = self.writeMessage("Hello!")
1160+
let buffer2 = buffer1
1161+
buffer1.writeImmutableBuffer(buffer2)
11571162

11581163
var state: ReadState = .one()
1159-
state.readMessages(&buffers1.0, maxLength: .max).assertFailure {
1164+
state.readMessages(&buffer1, maxLength: .max).assertFailure {
11601165
XCTAssertEqual($0, .cardinalityViolation)
11611166
}
11621167
state.assertNotReading()
11631168
}
11641169

11651170
func testReadOneMessageForOneExpectedMessages() throws {
1166-
// Write a message into the buffer twice:
1167-
let message = ByteBuffer(string: "Hello!")
1168-
var writer = LengthPrefixedMessageWriter(compression: .none)
1169-
var (buffer, other) = try writer.write(buffer: message)
1170-
XCTAssertNil(other)
1171-
1171+
var buffer = self.writeMessage("Hello!")
11721172
var state: ReadState = .one()
11731173
state.readMessages(&buffer, maxLength: .max).assertSuccess {
1174-
XCTAssertEqual($0, [message])
1174+
XCTAssertEqual($0, [ByteBuffer(string: "Hello!")])
11751175
}
11761176

11771177
// We shouldn't be able to read anymore.
11781178
state.assertNotReading()
11791179
}
11801180

11811181
func testReadOneMessageForManyExpectedMessages() throws {
1182-
// Write a message into the buffer twice:
1183-
let message = ByteBuffer(string: "Hello!")
1184-
var writer = LengthPrefixedMessageWriter(compression: .none)
1185-
var (buffer, other) = try writer.write(buffer: message)
1186-
XCTAssertNil(other)
1187-
1182+
var buffer = self.writeMessage("Hello!")
11881183
var state: ReadState = .many()
11891184
state.readMessages(&buffer, maxLength: .max).assertSuccess {
1190-
XCTAssertEqual($0, [message])
1185+
XCTAssertEqual($0, [ByteBuffer(string: "Hello!")])
11911186
}
11921187

11931188
// We should still be able to read.
11941189
state.assertReading()
11951190
}
11961191

11971192
func testReadManyMessagesForManyExpectedMessages() throws {
1198-
// Write a message into the buffer twice:
1199-
let message = ByteBuffer(string: "Hello!")
1200-
var writer = LengthPrefixedMessageWriter(compression: .none)
1201-
1202-
var (first, _) = try writer.write(buffer: message)
1203-
var (second, _) = try writer.write(buffer: message)
1204-
var (third, _) = try writer.write(buffer: message)
1205-
1206-
first.writeBuffer(&second)
1207-
first.writeBuffer(&third)
1193+
let lengthPrefixed = self.writeMessage("Hello!")
1194+
var buffer = lengthPrefixed
1195+
buffer.writeImmutableBuffer(lengthPrefixed)
1196+
buffer.writeImmutableBuffer(lengthPrefixed)
12081197

12091198
var state: ReadState = .many()
1210-
state.readMessages(&first, maxLength: .max).assertSuccess {
1211-
XCTAssertEqual($0, [message, message, message])
1199+
state.readMessages(&buffer, maxLength: .max).assertSuccess {
1200+
XCTAssertEqual($0, Array(repeating: ByteBuffer(string: "Hello!"), count: 3))
12121201
}
12131202

12141203
// We should still be able to read.

Tests/GRPCTests/LengthPrefixedMessageWriterTests.swift

-109
This file was deleted.

0 commit comments

Comments
 (0)