Skip to content

Commit e346e24

Browse files
committed
[test] add an omitted test
1 parent cc70677 commit e346e24

File tree

1 file changed

+17
-0
lines changed

1 file changed

+17
-0
lines changed

test/stdlib/UnsafeRawPointer.swift

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -54,6 +54,23 @@ UnsafeMutableRawPointerExtraTestSuite.test("initializeMemory") {
5454
expectEqual(5, Missile.missilesLaunched)
5555
}
5656

57+
UnsafeMutableRawPointerExtraTestSuite.test("initializeMemorySingleElement")
58+
.skip(.custom({
59+
if #available(SwiftStdlib 5.8, *) { return false } else { return true }
60+
}, reason: "Requires standard library from Swift 5.8"))
61+
.code {
62+
Missile.missilesLaunched = 0
63+
let p1 = UnsafeMutableRawPointer.allocate(
64+
byteCount: MemoryLayout<Missile>.stride, alignment: MemoryLayout<Missile>.alignment
65+
)
66+
defer { p1.deallocate() }
67+
var p2 = p1.initializeMemory(as: Missile.self, to: Missile(1))
68+
expectEqual(1, p2.pointee.number)
69+
expectEqual(p1, p2)
70+
p2.deinitialize()
71+
expectEqual(Missile.missilesLaunched, 1)
72+
}
73+
5774
UnsafeMutableRawPointerExtraTestSuite.test("bindMemory") {
5875
let sizeInBytes = 3 * MemoryLayout<Int>.stride
5976
let p1 = UnsafeMutableRawPointer.allocate(

0 commit comments

Comments
 (0)