@@ -1076,7 +1076,11 @@ class LoggingTest: XCTestCase {
1076
1076
let testString = " hello \u{0} world "
1077
1077
log. critical ( " \( testString) " )
1078
1078
1079
+ #if os(Windows)
1080
+ let size = _read ( readFD, readBuffer, 256 )
1081
+ #else
1079
1082
let size = read ( readFD, readBuffer, 256 )
1083
+ #endif
1080
1084
1081
1085
let output = String (
1082
1086
decoding: UnsafeRawBufferPointer ( start: UnsafeRawPointer ( readBuffer) , count: numericCast ( size) ) ,
@@ -1094,11 +1098,20 @@ class LoggingTest: XCTestCase {
1094
1098
LoggingSystem . bootstrapInternal { StreamLogHandler ( label: $0, stream: logStream) }
1095
1099
Logger ( label: " test " ) . critical ( " test " )
1096
1100
1101
+ #if os(Windows)
1102
+ let size = _read ( readFD, readBuffer, 256 )
1103
+ #else
1097
1104
let size = read ( readFD, readBuffer, 256 )
1105
+ #endif
1098
1106
XCTAssertGreaterThan ( size, - 1 , " expected flush " )
1099
1107
1100
1108
logStream. flush ( )
1109
+
1110
+ #if os(Windows)
1111
+ let size2 = _read ( readFD, readBuffer, 256 )
1112
+ #else
1101
1113
let size2 = read ( readFD, readBuffer, 256 )
1114
+ #endif
1102
1115
XCTAssertEqual ( size2, - 1 , " expected no flush " )
1103
1116
}
1104
1117
// default flushing
@@ -1107,11 +1120,20 @@ class LoggingTest: XCTestCase {
1107
1120
LoggingSystem . bootstrapInternal { StreamLogHandler ( label: $0, stream: logStream) }
1108
1121
Logger ( label: " test " ) . critical ( " test " )
1109
1122
1123
+ #if os(Windows)
1124
+ let size = _read ( readFD, readBuffer, 256 )
1125
+ #else
1110
1126
let size = read ( readFD, readBuffer, 256 )
1127
+ #endif
1111
1128
XCTAssertEqual ( size, - 1 , " expected no flush " )
1112
1129
1113
1130
logStream. flush ( )
1131
+
1132
+ #if os(Windows)
1133
+ let size2 = _read ( readFD, readBuffer, 256 )
1134
+ #else
1114
1135
let size2 = read ( readFD, readBuffer, 256 )
1136
+ #endif
1115
1137
XCTAssertGreaterThan ( size2, - 1 , " expected flush " )
1116
1138
}
1117
1139
}
@@ -1123,14 +1145,15 @@ class LoggingTest: XCTestCase {
1123
1145
let err = _pipe ( $0. baseAddress, 256 , _O_BINARY)
1124
1146
XCTAssertEqual ( err, 0 , " _pipe failed \( err) " )
1125
1147
}
1148
+ let writeFD = _fdopen ( fds [ 1 ] , " w " )
1126
1149
#else
1127
1150
fds. withUnsafeMutableBufferPointer { ptr in
1128
1151
let err = pipe ( ptr. baseAddress!)
1129
1152
XCTAssertEqual ( err, 0 , " pipe failed \( err) " )
1130
1153
}
1154
+ let writeFD = fdopen ( fds [ 1 ] , " w " )
1131
1155
#endif
1132
1156
1133
- let writeFD = fdopen ( fds [ 1 ] , " w " )
1134
1157
let writeBuffer = UnsafeMutablePointer< Int8> . allocate( capacity: 256 )
1135
1158
defer {
1136
1159
writeBuffer. deinitialize ( count: 256 )
@@ -1163,7 +1186,11 @@ class LoggingTest: XCTestCase {
1163
1186
body ( writeFD!, readFD, readBuffer)
1164
1187
1165
1188
for fd in fds {
1189
+ #if os(Windows)
1190
+ _close ( fd)
1191
+ #else
1166
1192
close ( fd)
1193
+ #endif
1167
1194
}
1168
1195
}
1169
1196
0 commit comments