@@ -7,15 +7,8 @@ import HTTP
7
7
8
8
class SerializerTests : XCTestCase {
9
9
static var allTests = [
10
- ( " testInit " , testInit) ,
11
10
( " testBasic " , testBasic) ,
12
11
]
13
-
14
-
15
- func testInit( ) throws {
16
- let serializer = try FormData . Serializer ( boundary: " foo " )
17
- XCTAssertEqual ( serializer. boundary, " foo " . bytes)
18
- }
19
12
20
13
public func testBasic( ) throws {
21
14
let part1 = Part ( headers: [
@@ -27,30 +20,31 @@ class SerializerTests: XCTestCase {
27
20
let field1 = Field ( name: " title " , filename: nil , part: part1)
28
21
let field2 = Field ( name: " image " , filename: " image.jpg " , part: part2)
29
22
30
- let serializer = try FormData . Serializer ( boundary: " boundary42 " )
23
+ let multipart = try Multipart . Serializer ( boundary: " boundary42 " )
24
+ let serializer = FormData . Serializer ( multipart: multipart)
31
25
32
26
var serialized : Bytes = [ ]
33
27
34
- serializer. multipartSerializer . onSerialize = { bytes in
28
+ serializer. multipart . onSerialize = { bytes in
35
29
serialized += bytes
36
30
}
37
31
38
32
try serializer. serialize ( field1)
39
33
try serializer. serialize ( field2)
40
- try serializer. multipartSerializer . finish ( )
34
+ try serializer. multipart . finish ( )
41
35
42
36
var expected = " "
43
37
44
- expected += " --boundary42 \n "
45
- expected += " Content-Disposition: form-data; name= \" title \" \n "
46
- expected += " Content-Type: text/plain; charset=us-ascii \n "
47
- expected += " \n "
48
- expected += " Systems should choose the 'best' type based on the local environment and references, in some cases even through user interaction. \n "
49
- expected += " --boundary42 \n "
50
- expected += " Content-Disposition: form-data; name= \" image \" ; filename= \" image.jpg \" \n "
51
- expected += " \n "
52
- expected += " Test123 \n "
53
- expected += " --boundary42-- \n "
38
+ expected += " --boundary42 \r \ n"
39
+ expected += " Content-Disposition: form-data; name= \" title \" \r \ n"
40
+ expected += " Content-Type: text/plain; charset=us-ascii \r \ n"
41
+ expected += " \r \ n"
42
+ expected += " Systems should choose the 'best' type based on the local environment and references, in some cases even through user interaction. \r \ n"
43
+ expected += " --boundary42 \r \ n"
44
+ expected += " Content-Disposition: form-data; name= \" image \" ; filename= \" image.jpg \" \r \ n"
45
+ expected += " \r \ n"
46
+ expected += " Test123 \r \ n"
47
+ expected += " --boundary42-- \r \ n"
54
48
55
49
XCTAssertEqual ( serialized. string, expected)
56
50
}
0 commit comments