@@ -24,6 +24,7 @@ class TestNSPersonNameComponents : XCTestCase {
24
24
static var allTests : [ ( String , ( TestNSPersonNameComponents ) -> ( ) throws -> Void ) ] {
25
25
return [
26
26
( " testCopy " , testCopy) ,
27
+ ( " testEquality " , testEquality) ,
27
28
]
28
29
}
29
30
@@ -39,6 +40,82 @@ class TestNSPersonNameComponents : XCTestCase {
39
40
XCTAssertEqual ( original. phoneticRepresentation!. givenName, copy. phoneticRepresentation!. givenName)
40
41
XCTAssertNil ( copy. phoneticRepresentation!. phoneticRepresentation)
41
42
}
43
+
44
+ private func makePersonNameComponentsWithTestValues( ) -> PersonNameComponents {
45
+ var components = PersonNameComponents ( )
46
+ components. namePrefix = " namePrefix "
47
+ components. givenName = " givenName "
48
+ components. middleName = " middleName "
49
+ components. familyName = " familyName "
50
+ components. nameSuffix = " nameSuffix "
51
+ components. nickname = " nickname "
52
+ components. phoneticRepresentation = {
53
+ var components = PersonNameComponents ( )
54
+ components. namePrefix = " phonetic_namePrefix "
55
+ components. givenName = " phonetic_givenName "
56
+ components. middleName = " phonetic_middleName "
57
+ components. familyName = " phonetic_familyName "
58
+ components. nameSuffix = " phonetic_nameSuffix "
59
+ components. nickname = " phonetic_nickname "
60
+ return components
61
+ } ( )
62
+ return components
63
+ }
64
+
65
+ func testEquality( ) {
66
+ do {
67
+ let lhs = PersonNameComponents ( )
68
+ let rhs = PersonNameComponents ( )
69
+ XCTAssertEqual ( lhs, rhs)
70
+ }
71
+ do {
72
+ let lhs = self . makePersonNameComponentsWithTestValues ( )
73
+ let rhs = self . makePersonNameComponentsWithTestValues ( )
74
+ XCTAssertEqual ( lhs, rhs)
75
+ }
76
+ do {
77
+ var lhs = self . makePersonNameComponentsWithTestValues ( )
78
+ lhs. namePrefix = " differentValue "
79
+ let rhs = self . makePersonNameComponentsWithTestValues ( )
80
+ XCTAssertNotEqual ( lhs, rhs)
81
+ }
82
+ do {
83
+ var lhs = self . makePersonNameComponentsWithTestValues ( )
84
+ lhs. givenName = " differentValue "
85
+ let rhs = self . makePersonNameComponentsWithTestValues ( )
86
+ XCTAssertNotEqual ( lhs, rhs)
87
+ }
88
+ do {
89
+ var lhs = self . makePersonNameComponentsWithTestValues ( )
90
+ lhs. middleName = " differentValue "
91
+ let rhs = self . makePersonNameComponentsWithTestValues ( )
92
+ XCTAssertNotEqual ( lhs, rhs)
93
+ }
94
+ do {
95
+ var lhs = self . makePersonNameComponentsWithTestValues ( )
96
+ lhs. familyName = " differentValue "
97
+ let rhs = self . makePersonNameComponentsWithTestValues ( )
98
+ XCTAssertNotEqual ( lhs, rhs)
99
+ }
100
+ do {
101
+ var lhs = self . makePersonNameComponentsWithTestValues ( )
102
+ lhs. nameSuffix = " differentValue "
103
+ let rhs = self . makePersonNameComponentsWithTestValues ( )
104
+ XCTAssertNotEqual ( lhs, rhs)
105
+ }
106
+ do {
107
+ var lhs = self . makePersonNameComponentsWithTestValues ( )
108
+ lhs. nickname = " differentValue "
109
+ let rhs = self . makePersonNameComponentsWithTestValues ( )
110
+ XCTAssertNotEqual ( lhs, rhs)
111
+ }
112
+ do {
113
+ var lhs = self . makePersonNameComponentsWithTestValues ( )
114
+ lhs. phoneticRepresentation? . namePrefix = " differentValue "
115
+ let rhs = self . makePersonNameComponentsWithTestValues ( )
116
+ XCTAssertNotEqual ( lhs, rhs)
117
+ }
118
+ }
42
119
}
43
120
44
121
0 commit comments