From 86683113075913031be1969cc84705e9d9b8585b Mon Sep 17 00:00:00 2001 From: Mathew Polzin Date: Thu, 29 Nov 2018 20:10:56 -0800 Subject: [PATCH] better poly proxy tests --- Tests/JSONAPITests/Poly/PolyProxyTests.swift | 20 +++++++++++++++++++- 1 file changed, 19 insertions(+), 1 deletion(-) diff --git a/Tests/JSONAPITests/Poly/PolyProxyTests.swift b/Tests/JSONAPITests/Poly/PolyProxyTests.swift index 5da90fa..6863cff 100644 --- a/Tests/JSONAPITests/Poly/PolyProxyTests.swift +++ b/Tests/JSONAPITests/Poly/PolyProxyTests.swift @@ -25,11 +25,29 @@ public class PolyProxyTests: XCTestCase { XCTAssertEqual(polyUserA.relationships, .none) } - func test_UserAEncode() { + func test_UserAAndBEncodeEquality() { test_DecodeEncodeEquality(type: User.self, data: poly_user_stub_1) test_DecodeEncodeEquality(type: User.self, data: poly_user_stub_2) } + func test_AsymmetricEncodeDecodeUserA() { + let userA = decoded(type: UserA.self, data: poly_user_stub_1) + let polyUserA = decoded(type: User.self, data: poly_user_stub_1) + + let encodedPoly = try! JSONEncoder().encode(polyUserA) + + XCTAssertEqual(decoded(type: UserA.self, data: encodedPoly), userA) + } + + func test_AsymmetricEncodeDecodeUserB() { + let userB = decoded(type: UserB.self, data: poly_user_stub_2) + let polyUserB = decoded(type: User.self, data: poly_user_stub_2) + + let encodedPoly = try! JSONEncoder().encode(polyUserB) + + XCTAssertEqual(decoded(type: UserB.self, data: encodedPoly), userB) + } + func test_UserBDecode() { let polyUserB = decoded(type: User.self, data: poly_user_stub_2) let userB = decoded(type: UserB.self, data: poly_user_stub_2)