From f5eb343bd452c4fc3a9e0f6793247162a17817c3 Mon Sep 17 00:00:00 2001 From: Mathew Polzin Date: Mon, 29 Jul 2019 20:41:22 -0700 Subject: [PATCH] Complete test coverage of APIDescription --- .../APIDescription/APIDescriptionTests.swift | 23 +++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/Tests/JSONAPITests/APIDescription/APIDescriptionTests.swift b/Tests/JSONAPITests/APIDescription/APIDescriptionTests.swift index d5706b6..9640352 100644 --- a/Tests/JSONAPITests/APIDescription/APIDescriptionTests.swift +++ b/Tests/JSONAPITests/APIDescription/APIDescriptionTests.swift @@ -10,6 +10,17 @@ import JSONAPI class APIDescriptionTests: XCTestCase { + func test_init() { + let _ = APIDescription(version: "hello", + meta: .none) + let _ = APIDescription(version: "world", + meta: .init(hello: "there", + number: 2)) + let _ = NoAPIDescription() + + XCTAssertEqual(NoAPIDescription(), NoAPIDescription.none) + } + func test_NoDescriptionString() { XCTAssertEqual(String(describing: NoAPIDescription()), "No JSON:API Object") } @@ -18,12 +29,18 @@ class APIDescriptionTests: XCTestCase { let description = decoded(type: APIDescription.self, data: api_description_empty) XCTAssertEqual(description.version, "1.0") + + test_DecodeEncodeEquality(type: APIDescription.self, + data: api_description_empty) } func test_WithVersion() { let description = decoded(type: APIDescription.self, data: api_description_with_version) XCTAssertEqual(description.version, "1.5") + + test_DecodeEncodeEquality(type: APIDescription.self, + data: api_description_with_version) } func test_WithMeta() { @@ -32,6 +49,9 @@ class APIDescriptionTests: XCTestCase { XCTAssertEqual(description.version, "1.0") XCTAssertEqual(description.meta.hello, "world") XCTAssertEqual(description.meta.number, 10) + + test_DecodeEncodeEquality(type: APIDescription.self, + data: api_description_with_meta) } func test_WithVersionAndMeta() { @@ -40,6 +60,9 @@ class APIDescriptionTests: XCTestCase { XCTAssertEqual(description.version, "2.0") XCTAssertEqual(description.meta.hello, "world") XCTAssertEqual(description.meta.number, 10) + + test_DecodeEncodeEquality(type: APIDescription.self, + data: api_description_with_version_and_meta) } func test_failsMissingMeta() {