Skip to content

Commit 1efe6f8

Browse files
authored
Fix Windows warnings (#331)
# Motivation Fixes #330. We had a few warnings since we were using deprecated POSIX methods on Windows. # Modification Moves to the non-deprecated underscored methods. # Result Windows build is warning free.
1 parent ee1bfd3 commit 1efe6f8

File tree

1 file changed

+28
-1
lines changed

1 file changed

+28
-1
lines changed

Tests/LoggingTests/LoggingTest.swift

+28-1
Original file line numberDiff line numberDiff line change
@@ -1076,7 +1076,11 @@ class LoggingTest: XCTestCase {
10761076
let testString = "hello\u{0} world"
10771077
log.critical("\(testString)")
10781078

1079+
#if os(Windows)
1080+
let size = _read(readFD, readBuffer, 256)
1081+
#else
10791082
let size = read(readFD, readBuffer, 256)
1083+
#endif
10801084

10811085
let output = String(
10821086
decoding: UnsafeRawBufferPointer(start: UnsafeRawPointer(readBuffer), count: numericCast(size)),
@@ -1094,11 +1098,20 @@ class LoggingTest: XCTestCase {
10941098
LoggingSystem.bootstrapInternal { StreamLogHandler(label: $0, stream: logStream) }
10951099
Logger(label: "test").critical("test")
10961100

1101+
#if os(Windows)
1102+
let size = _read(readFD, readBuffer, 256)
1103+
#else
10971104
let size = read(readFD, readBuffer, 256)
1105+
#endif
10981106
XCTAssertGreaterThan(size, -1, "expected flush")
10991107

11001108
logStream.flush()
1109+
1110+
#if os(Windows)
1111+
let size2 = _read(readFD, readBuffer, 256)
1112+
#else
11011113
let size2 = read(readFD, readBuffer, 256)
1114+
#endif
11021115
XCTAssertEqual(size2, -1, "expected no flush")
11031116
}
11041117
// default flushing
@@ -1107,11 +1120,20 @@ class LoggingTest: XCTestCase {
11071120
LoggingSystem.bootstrapInternal { StreamLogHandler(label: $0, stream: logStream) }
11081121
Logger(label: "test").critical("test")
11091122

1123+
#if os(Windows)
1124+
let size = _read(readFD, readBuffer, 256)
1125+
#else
11101126
let size = read(readFD, readBuffer, 256)
1127+
#endif
11111128
XCTAssertEqual(size, -1, "expected no flush")
11121129

11131130
logStream.flush()
1131+
1132+
#if os(Windows)
1133+
let size2 = _read(readFD, readBuffer, 256)
1134+
#else
11141135
let size2 = read(readFD, readBuffer, 256)
1136+
#endif
11151137
XCTAssertGreaterThan(size2, -1, "expected flush")
11161138
}
11171139
}
@@ -1123,14 +1145,15 @@ class LoggingTest: XCTestCase {
11231145
let err = _pipe($0.baseAddress, 256, _O_BINARY)
11241146
XCTAssertEqual(err, 0, "_pipe failed \(err)")
11251147
}
1148+
let writeFD = _fdopen(fds[1], "w")
11261149
#else
11271150
fds.withUnsafeMutableBufferPointer { ptr in
11281151
let err = pipe(ptr.baseAddress!)
11291152
XCTAssertEqual(err, 0, "pipe failed \(err)")
11301153
}
1154+
let writeFD = fdopen(fds[1], "w")
11311155
#endif
11321156

1133-
let writeFD = fdopen(fds[1], "w")
11341157
let writeBuffer = UnsafeMutablePointer<Int8>.allocate(capacity: 256)
11351158
defer {
11361159
writeBuffer.deinitialize(count: 256)
@@ -1163,7 +1186,11 @@ class LoggingTest: XCTestCase {
11631186
body(writeFD!, readFD, readBuffer)
11641187

11651188
for fd in fds {
1189+
#if os(Windows)
1190+
_close(fd)
1191+
#else
11661192
close(fd)
1193+
#endif
11671194
}
11681195
}
11691196

0 commit comments

Comments
 (0)