2018-11-11 18:09:52 +01:00
|
|
|
//
|
|
|
|
|
// AdditionFieldTest.swift
|
|
|
|
|
// passKitTests
|
|
|
|
|
//
|
|
|
|
|
// Created by Danny Moesch on 30.09.18.
|
|
|
|
|
// Copyright © 2018 Bob Sun. All rights reserved.
|
|
|
|
|
//
|
|
|
|
|
|
|
|
|
|
import XCTest
|
|
|
|
|
|
|
|
|
|
@testable import passKit
|
|
|
|
|
|
2024-11-24 13:14:38 +01:00
|
|
|
final class AdditionFieldTest: XCTestCase {
|
2018-11-11 18:09:52 +01:00
|
|
|
func testAdditionField() {
|
2018-12-15 21:48:35 +01:00
|
|
|
let field1 = AdditionField(title: "key", content: "value")
|
|
|
|
|
let field2 = AdditionField(title: "no content")
|
|
|
|
|
let field3 = AdditionField(content: "no title")
|
2018-11-11 18:09:52 +01:00
|
|
|
|
|
|
|
|
XCTAssertEqual(field1.asString, "key: value")
|
2018-12-15 21:48:35 +01:00
|
|
|
XCTAssertEqual(field2.asString, "no content: ")
|
2018-11-11 18:09:52 +01:00
|
|
|
XCTAssertEqual(field3.asString, "no title")
|
|
|
|
|
|
2018-12-15 21:51:22 +01:00
|
|
|
XCTAssert(field1.asTuple == ("key", "value"))
|
|
|
|
|
XCTAssert(field2.asTuple == ("no content", ""))
|
|
|
|
|
XCTAssert(field3.asTuple == ("", "no title"))
|
2018-11-11 18:09:52 +01:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
func testAdditionFieldEquals() {
|
|
|
|
|
XCTAssertEqual("key" => "value", "key" => "value")
|
|
|
|
|
XCTAssertNotEqual("key" => "value", "key" => "some other value")
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
func testInfixAdditionFieldInitialization() {
|
|
|
|
|
XCTAssertEqual("key" => "value", AdditionField(title: "key", content: "value"))
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
func testAdditionFieldOperators() {
|
|
|
|
|
let field1 = "key" => "value"
|
|
|
|
|
let field2 = "some other key" => "some other value"
|
|
|
|
|
let field3 = "" => "no title"
|
|
|
|
|
|
|
|
|
|
XCTAssertEqual("start" | field1, "start\nkey: value")
|
|
|
|
|
XCTAssertEqual("" | field1, "\nkey: value")
|
|
|
|
|
XCTAssertEqual(field1 | "end", "key: value\nend")
|
|
|
|
|
XCTAssertEqual(field1 | "", "key: value")
|
|
|
|
|
XCTAssertEqual("start" | field1 | field2, "start\nkey: value\nsome other key: some other value")
|
|
|
|
|
XCTAssertEqual(field1 | field2 | "end", "key: value\nsome other key: some other value\nend")
|
|
|
|
|
XCTAssertEqual(field1 | field2 | field3, "key: value\nsome other key: some other value\nno title")
|
|
|
|
|
XCTAssertEqual("check" => "for right" | "operator" => "precedence", "check: for right\noperator: precedence")
|
|
|
|
|
}
|
|
|
|
|
}
|