Skip to content

Commit 8ad5b46

Browse files
committed
Fix incorrect tests for biased representation reading and writing
1 parent c7b033e commit 8ad5b46

4 files changed

Lines changed: 36 additions & 36 deletions

File tree

Tests/BitByteDataTests/LsbBitReaderTests.swift

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -162,9 +162,9 @@ class LsbBitReaderTests: XCTestCase {
162162
let repr = SignedNumberRepresentation.biased(bias: 127)
163163
let reader: LsbBitReader
164164
if MemoryLayout<Int>.size == 8 {
165-
reader = LsbBitReader(data: Data([253, 133, 183, 127, 4, 71, 0, 0x7E, 0, 0, 0, 0, 0, 0, 0x80]))
165+
reader = LsbBitReader(data: Data([253, 133, 183, 127, 4, 71, 0, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x7F]))
166166
} else if MemoryLayout<Int>.size == 4 {
167-
reader = LsbBitReader(data: Data([253, 133, 183, 127, 4, 71, 0, 0x7E, 0, 0, 0x80]))
167+
reader = LsbBitReader(data: Data([253, 133, 183, 127, 4, 71, 0, 0xFF, 0xFF, 0xFF, 0x7F]))
168168
} else {
169169
XCTFail("Unsupported Int bit width.")
170170
return
@@ -178,16 +178,16 @@ class LsbBitReaderTests: XCTestCase {
178178
XCTAssertEqual(reader.signedInt(fromBits: 12, representation: repr), -56)
179179
XCTAssertFalse(reader.isAligned)
180180
reader.align()
181-
XCTAssertEqual(reader.signedInt(fromBits: Int.bitWidth, representation: repr), Int.max)
181+
XCTAssertEqual(reader.signedInt(fromBits: Int.bitWidth, representation: repr), Int.max - 127)
182182
}
183183

184184
func testSignedIntFromBits_Biased_E3() {
185185
let repr = SignedNumberRepresentation.biased(bias: 3)
186186
let reader: LsbBitReader
187187
if MemoryLayout<Int>.size == 8 {
188-
reader = LsbBitReader(data: Data([240, 129, 9, 176, 3, 3, 2, 0, 0, 0, 0, 0, 0, 0x80]))
188+
reader = LsbBitReader(data: Data([240, 129, 9, 176, 3, 3, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x7F]))
189189
} else if MemoryLayout<Int>.size == 4 {
190-
reader = LsbBitReader(data: Data([240, 129, 9, 176, 3, 3, 2, 0, 0, 0x80]))
190+
reader = LsbBitReader(data: Data([240, 129, 9, 176, 3, 3, 0xFF, 0xFF, 0xFF, 0x7F]))
191191
} else {
192192
XCTFail("Unsupported Int bit width.")
193193
return
@@ -205,16 +205,16 @@ class LsbBitReaderTests: XCTestCase {
205205
reader.align()
206206
XCTAssertTrue(reader.isAligned)
207207
XCTAssertEqual(reader.signedInt(fromBits: 8, representation: repr), 0)
208-
XCTAssertEqual(reader.signedInt(fromBits: Int.bitWidth, representation: repr), Int.max)
208+
XCTAssertEqual(reader.signedInt(fromBits: Int.bitWidth, representation: repr), Int.max - 3)
209209
}
210210

211211
func testSignedIntFromBits_Biased_E1023() {
212212
let repr = SignedNumberRepresentation.biased(bias: 1023)
213213
let reader: LsbBitReader
214214
if MemoryLayout<Int>.size == 8 {
215-
reader = LsbBitReader(data: Data([0, 0, 255, 3, 0xFE, 3, 0, 0, 0, 0, 0, 0x80]))
215+
reader = LsbBitReader(data: Data([0, 0, 255, 3, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x7F]))
216216
} else if MemoryLayout<Int>.size == 4 {
217-
reader = LsbBitReader(data: Data([0, 0, 255, 3, 0xFE, 3, 0, 0x80]))
217+
reader = LsbBitReader(data: Data([0, 0, 255, 3, 0xFF, 0xFF, 0xFF, 0x7F]))
218218
} else {
219219
XCTFail("Unsupported Int bit width.")
220220
return
@@ -228,7 +228,7 @@ class LsbBitReaderTests: XCTestCase {
228228
XCTAssertFalse(reader.isAligned)
229229
reader.align()
230230
XCTAssertTrue(reader.isAligned)
231-
XCTAssertEqual(reader.signedInt(fromBits: Int.bitWidth, representation: repr), Int.max)
231+
XCTAssertEqual(reader.signedInt(fromBits: Int.bitWidth, representation: repr), Int.max - 1023)
232232
}
233233

234234
func testSignedIntFromBits_RN2() {

Tests/BitByteDataTests/LsbBitWriterTests.swift

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -156,11 +156,11 @@ class LsbBitWriterTests: XCTestCase {
156156
XCTAssertEqual(writer.data, Data([253, 133, 183, 127, 4, 71]))
157157
writer.align()
158158
XCTAssertEqual(writer.data, Data([253, 133, 183, 127, 4, 71, 0]))
159-
writer.write(signedNumber: Int.max, bitsCount: Int.bitWidth, representation: repr)
159+
writer.write(signedNumber: Int.max - 127, bitsCount: Int.bitWidth, representation: repr)
160160
if Int.bitWidth == 64 {
161-
XCTAssertEqual(writer.data, Data([253, 133, 183, 127, 4, 71, 0, 0x7E, 0, 0, 0, 0, 0, 0, 0x80]))
161+
XCTAssertEqual(writer.data, Data([253, 133, 183, 127, 4, 71, 0, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x7F]))
162162
} else if Int.bitWidth == 32 {
163-
XCTAssertEqual(writer.data, Data([253, 133, 183, 127, 4, 71, 0, 0x7E, 0, 0, 0x80]))
163+
XCTAssertEqual(writer.data, Data([253, 133, 183, 127, 4, 71, 0, 0xFF, 0xFF, 0xFF, 0x7F]))
164164
}
165165
}
166166

@@ -185,11 +185,11 @@ class LsbBitWriterTests: XCTestCase {
185185
XCTAssertEqual(writer.data, Data([240, 129, 9, 176, 3]))
186186
writer.write(signedNumber: 0, bitsCount: 8, representation: repr)
187187
XCTAssertEqual(writer.data, Data([240, 129, 9, 176, 3, 3]))
188-
writer.write(signedNumber: Int.max, bitsCount: Int.bitWidth, representation: repr)
188+
writer.write(signedNumber: Int.max - 3, bitsCount: Int.bitWidth, representation: repr)
189189
if Int.bitWidth == 64 {
190-
XCTAssertEqual(writer.data, Data([240, 129, 9, 176, 3, 3, 2, 0, 0, 0, 0, 0, 0, 0x80]))
190+
XCTAssertEqual(writer.data, Data([240, 129, 9, 176, 3, 3, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x7F]))
191191
} else if Int.bitWidth == 32 {
192-
XCTAssertEqual(writer.data, Data([240, 129, 9, 176, 3, 3, 2, 0, 0, 0x80]))
192+
XCTAssertEqual(writer.data, Data([240, 129, 9, 176, 3, 3, 0xFF, 0xFF, 0xFF, 0x7F]))
193193
}
194194
}
195195

@@ -208,11 +208,11 @@ class LsbBitWriterTests: XCTestCase {
208208
writer.align()
209209
XCTAssertTrue(writer.isAligned)
210210
XCTAssertEqual(writer.data, Data([0, 0, 255, 3]))
211-
writer.write(signedNumber: Int.max, bitsCount: Int.bitWidth, representation: repr)
211+
writer.write(signedNumber: Int.max - 1023, bitsCount: Int.bitWidth, representation: repr)
212212
if Int.bitWidth == 64 {
213-
XCTAssertEqual(writer.data, Data([0, 0, 255, 3, 0xFE, 3, 0, 0, 0, 0, 0, 0x80]))
213+
XCTAssertEqual(writer.data, Data([0, 0, 255, 3, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x7F]))
214214
} else if Int.bitWidth == 32 {
215-
XCTAssertEqual(writer.data, Data([0, 0, 255, 3, 0xFE, 3, 0, 0x80]))
215+
XCTAssertEqual(writer.data, Data([0, 0, 255, 3, 0xFF, 0xFF, 0xFF, 0x7F]))
216216
}
217217
}
218218

Tests/BitByteDataTests/MsbBitReaderTests.swift

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -162,9 +162,9 @@ class MsbBitReaderTests: XCTestCase {
162162
let repr = SignedNumberRepresentation.biased(bias: 127)
163163
let reader: MsbBitReader
164164
if MemoryLayout<Int>.size == 8 {
165-
reader = MsbBitReader(data: Data([253, 133, 183, 127, 4, 71, 0, 0x80, 0, 0, 0, 0, 0, 0, 0x7E]))
165+
reader = MsbBitReader(data: Data([253, 133, 183, 127, 4, 71, 0, 0x7F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF]))
166166
} else if MemoryLayout<Int>.size == 4 {
167-
reader = MsbBitReader(data: Data([253, 133, 183, 127, 4, 71, 0, 0x80, 0, 0, 0x7E]))
167+
reader = MsbBitReader(data: Data([253, 133, 183, 127, 4, 71, 0, 0x7F, 0xFF, 0xFF, 0xFF]))
168168
} else {
169169
XCTFail("Unsupported Int bit width.")
170170
return
@@ -178,16 +178,16 @@ class MsbBitReaderTests: XCTestCase {
178178
XCTAssertEqual(reader.signedInt(fromBits: 12, representation: repr), 1009)
179179
XCTAssertFalse(reader.isAligned)
180180
reader.align()
181-
XCTAssertEqual(reader.signedInt(fromBits: Int.bitWidth, representation: repr), Int.max)
181+
XCTAssertEqual(reader.signedInt(fromBits: Int.bitWidth, representation: repr), Int.max - 127)
182182
}
183183

184184
func testSignedIntFromBits_Biased_E3() {
185185
let repr = SignedNumberRepresentation.biased(bias: 3)
186186
let reader: MsbBitReader
187187
if MemoryLayout<Int>.size == 8 {
188-
reader = MsbBitReader(data: Data([240, 129, 9, 176, 3, 3, 0x80, 0, 0, 0, 0, 0, 0, 2]))
188+
reader = MsbBitReader(data: Data([240, 129, 9, 176, 3, 3, 0x7F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF]))
189189
} else if MemoryLayout<Int>.size == 4 {
190-
reader = MsbBitReader(data: Data([240, 129, 9, 176, 3, 3, 0x80, 0, 0, 2]))
190+
reader = MsbBitReader(data: Data([240, 129, 9, 176, 3, 3, 0x7F, 0xFF, 0xFF, 0xFF]))
191191
} else {
192192
XCTFail("Unsupported Int bit width.")
193193
return
@@ -205,16 +205,16 @@ class MsbBitReaderTests: XCTestCase {
205205
reader.align()
206206
XCTAssertTrue(reader.isAligned)
207207
XCTAssertEqual(reader.signedInt(fromBits: 8, representation: repr), 0)
208-
XCTAssertEqual(reader.signedInt(fromBits: Int.bitWidth, representation: repr), Int.max)
208+
XCTAssertEqual(reader.signedInt(fromBits: Int.bitWidth, representation: repr), Int.max - 3)
209209
}
210210

211211
func testSignedIntFromBits_Biased_E1023() {
212212
let repr = SignedNumberRepresentation.biased(bias: 1023)
213213
let reader: MsbBitReader
214214
if MemoryLayout<Int>.size == 8 {
215-
reader = MsbBitReader(data: Data([0, 0, 255, 3, 0x80, 0, 0, 0, 0, 0, 3, 0xFE]))
215+
reader = MsbBitReader(data: Data([0, 0, 255, 3, 0x7F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF]))
216216
} else if MemoryLayout<Int>.size == 4 {
217-
reader = MsbBitReader(data: Data([0, 0, 255, 3, 0x80, 0, 3, 0xFE]))
217+
reader = MsbBitReader(data: Data([0, 0, 255, 3, 0x7F, 0xFF, 0xFF, 0xFF]))
218218
} else {
219219
XCTFail("Unsupported Int bit width.")
220220
return
@@ -228,7 +228,7 @@ class MsbBitReaderTests: XCTestCase {
228228
XCTAssertFalse(reader.isAligned)
229229
reader.align()
230230
XCTAssertTrue(reader.isAligned)
231-
XCTAssertEqual(reader.signedInt(fromBits: Int.bitWidth, representation: repr), Int.max)
231+
XCTAssertEqual(reader.signedInt(fromBits: Int.bitWidth, representation: repr), Int.max - 1023)
232232
}
233233

234234
func testSignedIntFromBits_RN2() {

Tests/BitByteDataTests/MsbBitWriterTests.swift

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -156,11 +156,11 @@ class MsbBitWriterTests: XCTestCase {
156156
XCTAssertEqual(writer.data, Data([253, 133, 183, 127, 4, 4]))
157157
writer.align()
158158
XCTAssertEqual(writer.data, Data([253, 133, 183, 127, 4, 4, 112]))
159-
writer.write(signedNumber: Int.max, bitsCount: Int.bitWidth, representation: repr)
159+
writer.write(signedNumber: Int.max - 127, bitsCount: Int.bitWidth, representation: repr)
160160
if Int.bitWidth == 64 {
161-
XCTAssertEqual(writer.data, Data([253, 133, 183, 127, 4, 4, 112, 0x80, 0, 0, 0, 0, 0, 0, 0x7E]))
161+
XCTAssertEqual(writer.data, Data([253, 133, 183, 127, 4, 4, 112, 0x7F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF]))
162162
} else if Int.bitWidth == 32 {
163-
XCTAssertEqual(writer.data, Data([253, 133, 183, 127, 4, 4, 112, 0x80, 0, 0, 0x7E]))
163+
XCTAssertEqual(writer.data, Data([253, 133, 183, 127, 4, 4, 112, 0x7F, 0xFF, 0xFF, 0xFF]))
164164
}
165165
}
166166

@@ -185,11 +185,11 @@ class MsbBitWriterTests: XCTestCase {
185185
XCTAssertEqual(writer.data, Data([15, 129, 0, 158, 192]))
186186
writer.write(signedNumber: 0, bitsCount: 8, representation: repr)
187187
XCTAssertEqual(writer.data, Data([15, 129, 0, 158, 192, 3]))
188-
writer.write(signedNumber: Int.max, bitsCount: Int.bitWidth, representation: repr)
188+
writer.write(signedNumber: Int.max - 3, bitsCount: Int.bitWidth, representation: repr)
189189
if Int.bitWidth == 64 {
190-
XCTAssertEqual(writer.data, Data([15, 129, 0, 158, 192, 3, 0x80, 0, 0, 0, 0, 0, 0, 2]))
190+
XCTAssertEqual(writer.data, Data([15, 129, 0, 158, 192, 3, 0x7F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF]))
191191
} else if Int.bitWidth == 32 {
192-
XCTAssertEqual(writer.data, Data([15, 129, 0, 158, 192, 3, 0x80, 0, 0, 2]))
192+
XCTAssertEqual(writer.data, Data([15, 129, 0, 158, 192, 3, 0x7F, 0xFF, 0xFF, 0xFF]))
193193
}
194194
}
195195

@@ -208,11 +208,11 @@ class MsbBitWriterTests: XCTestCase {
208208
writer.align()
209209
XCTAssertTrue(writer.isAligned)
210210
XCTAssertEqual(writer.data, Data([0, 0, 127, 224]))
211-
writer.write(signedNumber: Int.max, bitsCount: Int.bitWidth, representation: repr)
211+
writer.write(signedNumber: Int.max - 1023, bitsCount: Int.bitWidth, representation: repr)
212212
if Int.bitWidth == 64 {
213-
XCTAssertEqual(writer.data, Data([0, 0, 127, 224, 0x80, 0, 0, 0, 0, 0, 3, 0xFE]))
213+
XCTAssertEqual(writer.data, Data([0, 0, 127, 224, 0x7F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF]))
214214
} else if Int.bitWidth == 32 {
215-
XCTAssertEqual(writer.data, Data([0, 0, 127, 224, 0x80, 0, 3, 0xFE]))
215+
XCTAssertEqual(writer.data, Data([0, 0, 127, 224, 0x7F, 0xFF, 0xFF, 0xFF]))
216216
}
217217
}
218218

0 commit comments

Comments
 (0)