@@ -2306,27 +2306,23 @@ extension DataTests {
2306
2306
2307
2307
// we have more encodeToStringTests than we have encodeToDataTests.
2308
2308
// lets fix this by ensuring data output matches string output.
2309
- @Test func testBase64DataOutputMatchesStingOutput( ) {
2310
- for count in 0 ..< 10_000 {
2311
- let data = Data ( repeating: 0 , count: count)
2312
- let stringBase64 = data. base64EncodedString ( options: . lineLength64Characters)
2313
- let dataBase64 = data. base64EncodedData ( options: . lineLength64Characters)
2314
2309
2315
- #expect( stringBase64 == String ( decoding: dataBase64, as: Unicode . UTF8. self) )
2316
- }
2317
-
2318
- for count in 0 ..< 10_000 {
2319
- let data = Data ( repeating: 0 , count: count)
2320
- let stringBase64 = data. base64EncodedString ( options: . lineLength76Characters)
2321
- let dataBase64 = data. base64EncodedData ( options: . lineLength76Characters)
2322
-
2323
- #expect( stringBase64 == String ( decoding: dataBase64, as: Unicode . UTF8. self) )
2324
- }
2310
+ @Test (
2311
+ arguments: [
2312
+ Data . Base64EncodingOptions. lineLength64Characters,
2313
+ [ . lineLength64Characters, . endLineWithCarriageReturn] ,
2314
+ . lineLength76Characters,
2315
+ [ . lineLength64Characters, . endLineWithLineFeed] ,
2316
+ [ ] ,
2317
+ ]
2318
+ )
2319
+ func testBase64DataOutputMatchesStingOutput( options: Data . Base64EncodingOptions ) {
2320
+ let iterations = 1_000
2325
2321
2326
- for count in 0 ..< 10_000 {
2322
+ for count in 0 ..< iterations {
2327
2323
let data = Data ( repeating: 0 , count: count)
2328
- let stringBase64 = data. base64EncodedString ( )
2329
- let dataBase64 = data. base64EncodedData ( )
2324
+ let stringBase64 = data. base64EncodedString ( options : options )
2325
+ let dataBase64 = data. base64EncodedData ( options : options )
2330
2326
2331
2327
#expect( stringBase64 == String ( decoding: dataBase64, as: Unicode . UTF8. self) )
2332
2328
}
0 commit comments