@@ -4,62 +4,62 @@ import NIOCore
4
4
5
5
final class PostgresCodableTests : XCTestCase {
6
6
7
- // func testDecodeAnOptionalFromARow() {
8
- // let row = PostgresRow(
9
- // data: .makeTestDataRow(nil, ByteBuffer(string: "Hello world!")),
10
- // lookupTable: ["id": 0, "name": 1],
11
- // columns: [
12
- // RowDescription.Column(
13
- // name: "id",
14
- // tableOID: 1,
15
- // columnAttributeNumber: 1,
16
- // dataType: .text,
17
- // dataTypeSize: 0,
18
- // dataTypeModifier: 0,
19
- // format: .binary
20
- // ),
21
- // RowDescription.Column(
22
- // name: "id",
23
- // tableOID: 1,
24
- // columnAttributeNumber: 1,
25
- // dataType: .text,
26
- // dataTypeSize: 0,
27
- // dataTypeModifier: 0,
28
- // format: .binary
29
- // )
30
- // ]
31
- // )
32
- //
33
- // var result: (String?, String?)
34
- // XCTAssertNoThrow(result = try row.decode(String?.self , String?.self, context: .default ))
35
- // XCTAssertNil(result.0)
36
- // XCTAssertEqual(result.1, "Hello world!")
37
- // }
38
- //
39
- // func testDecodeMissingValueError() {
40
- // let row = PostgresRow(
41
- // data: .makeTestDataRow(nil),
42
- // lookupTable: ["name": 0],
43
- // columns: [
44
- // RowDescription.Column(
45
- // name: "id",
46
- // tableOID: 1,
47
- // columnAttributeNumber: 1,
48
- // dataType: .text,
49
- // dataTypeSize: 0,
50
- // dataTypeModifier: 0,
51
- // format: .binary
52
- // )
53
- // ]
54
- // )
55
- //
56
- // XCTAssertThrowsError(try row.decode(String.self, context: .default )) {
57
- // XCTAssertEqual(($0 as? PostgresDecodingError)?.line, #line - 1)
58
- // XCTAssertEqual(($0 as? PostgresDecodingError)?.file, #file)
59
- //
60
- // XCTAssertEqual(($0 as? PostgresDecodingError)?.code, .missingData)
61
- // XCTAssert(($0 as? PostgresDecodingError)?.targetType == String.self)
62
- // XCTAssertEqual(($0 as? PostgresDecodingError)?.postgresType, .text)
63
- // }
64
- // }
7
+ func testDecodeAnOptionalFromARow( ) {
8
+ let row = PostgresRow (
9
+ data: . makeTestDataRow( nil , ByteBuffer ( string: " Hello world! " ) ) ,
10
+ lookupTable: [ " id " : 0 , " name " : 1 ] ,
11
+ columns: [
12
+ RowDescription . Column (
13
+ name: " id " ,
14
+ tableOID: 1 ,
15
+ columnAttributeNumber: 1 ,
16
+ dataType: . text,
17
+ dataTypeSize: 0 ,
18
+ dataTypeModifier: 0 ,
19
+ format: . binary
20
+ ) ,
21
+ RowDescription . Column (
22
+ name: " id " ,
23
+ tableOID: 1 ,
24
+ columnAttributeNumber: 1 ,
25
+ dataType: . text,
26
+ dataTypeSize: 0 ,
27
+ dataTypeModifier: 0 ,
28
+ format: . binary
29
+ )
30
+ ]
31
+ )
32
+
33
+ var result : ( String ? , String ? )
34
+ XCTAssertNoThrow ( result = try row. decode ( ( String? , String? ) . self) )
35
+ XCTAssertNil ( result. 0 )
36
+ XCTAssertEqual ( result. 1 , " Hello world! " )
37
+ }
38
+
39
+ func testDecodeMissingValueError( ) {
40
+ let row = PostgresRow (
41
+ data: . makeTestDataRow( nil ) ,
42
+ lookupTable: [ " name " : 0 ] ,
43
+ columns: [
44
+ RowDescription . Column (
45
+ name: " id " ,
46
+ tableOID: 1 ,
47
+ columnAttributeNumber: 1 ,
48
+ dataType: . text,
49
+ dataTypeSize: 0 ,
50
+ dataTypeModifier: 0 ,
51
+ format: . binary
52
+ )
53
+ ]
54
+ )
55
+
56
+ XCTAssertThrowsError ( try row. decode ( String . self) ) {
57
+ XCTAssertEqual ( ( $0 as? PostgresDecodingError ) ? . line, #line - 1 )
58
+ XCTAssertEqual ( ( $0 as? PostgresDecodingError ) ? . file, #file)
59
+
60
+ XCTAssertEqual ( ( $0 as? PostgresDecodingError ) ? . code, . missingData)
61
+ XCTAssert ( ( $0 as? PostgresDecodingError ) ? . targetType == String . self)
62
+ XCTAssertEqual ( ( $0 as? PostgresDecodingError ) ? . postgresType, . text)
63
+ }
64
+ }
65
65
}
0 commit comments