Skip to content

Commit b970d75

Browse files
committed
[test] exercise UnsafeRawBufferPointer._copyContents
1 parent af036db commit b970d75

File tree

1 file changed

+12
-0
lines changed

1 file changed

+12
-0
lines changed

test/stdlib/UnsafeRawBufferPointer.swift

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -407,6 +407,18 @@ UnsafeRawBufferPointerTestSuite.test("subscript.range.wide") {
407407
buffer[0..<2] = buffer[0..<3]
408408
}
409409

410+
UnsafeRawBufferPointerTestSuite.test("_copyContents") {
411+
let a = Array<UInt8>(0..<20)
412+
let b = UnsafeMutableBufferPointer<UInt8>.allocate(capacity: 10*a.count)
413+
defer { b.deallocate() }
414+
var (unwritten, written) = a.withUnsafeBytes {
415+
bytes in
416+
bytes._copyContents(initializing: b)
417+
}
418+
expectNil(unwritten.next())
419+
expectEqual(written, a.count)
420+
}
421+
410422
UnsafeRawBufferPointerTestSuite.test("copyMemory.overflow") {
411423
var buffer = UnsafeMutableRawBufferPointer.allocate(byteCount: 3, alignment: MemoryLayout<UInt>.alignment)
412424
defer { buffer.deallocate() }

0 commit comments

Comments
 (0)