File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -313,3 +313,11 @@ extension SortedArray {
313313 return . notFound( insertAt: left)
314314 }
315315}
316+
317+ public func == < Element: Equatable > ( lhs: SortedArray < Element > , rhs: SortedArray < Element > ) -> Bool {
318+ return lhs. _elements == rhs. _elements
319+ }
320+
321+ public func != < Element: Equatable > ( lhs: SortedArray < Element > , rhs: SortedArray < Element > ) -> Bool {
322+ return lhs. _elements != rhs. _elements
323+ }
Original file line number Diff line number Diff line change @@ -219,6 +219,18 @@ class SortedArrayTests: XCTestCase {
219219 sut. remove ( 3 )
220220 assertElementsEqual ( sut, [ 1 , 2 ] )
221221 }
222+
223+ func testIsEqual( ) {
224+ let sut = SortedArray ( unsorted: 1 ... 3 )
225+
226+ XCTAssertTrue ( sut == SortedArray ( unsorted: 1 ... 3 ) )
227+ }
228+
229+ func testIsNotEqual( ) {
230+ let sut = SortedArray ( unsorted: 1 ... 3 )
231+
232+ XCTAssertTrue ( sut != SortedArray ( unsorted: 1 ... 4 ) )
233+ }
222234}
223235
224236extension SortedArrayTests {
@@ -258,6 +270,8 @@ extension SortedArrayTests {
258270 ( " testRemoveElementAtBeginningPreservesSortOrder " , testRemoveElementAtBeginningPreservesSortOrder) ,
259271 ( " testRemoveElementInMiddlePreservesSortOrder " , testRemoveElementInMiddlePreservesSortOrder) ,
260272 ( " testRemoveElementAtEndPreservesSortOrder " , testRemoveElementAtEndPreservesSortOrder) ,
273+ ( " testImplements== " , testIsEqual) ,
274+ ( " testImplements!= " , testIsNotEqual) ,
261275 ]
262276 }
263277}
You can’t perform that action at this time.
0 commit comments