diff --git a/ios/MullvadSettings/CustomListRepository.swift b/ios/MullvadSettings/CustomListRepository.swift index c6709782e2b2..9688618ac822 100644 --- a/ios/MullvadSettings/CustomListRepository.swift +++ b/ios/MullvadSettings/CustomListRepository.swift @@ -39,7 +39,7 @@ public struct CustomListRepository: CustomListRepositoryProtocol { public func save(list: CustomList) throws { var lists = fetchAll() - if let listWithSameName = lists.first(where: { $0.name.caseInsensitiveCompare(list.name) == .orderedSame }), + if let listWithSameName = lists.first(where: { $0.name.compare(list.name) == .orderedSame }), listWithSameName.id != list.id { throw CustomRelayListError.duplicateName } else if let index = lists.firstIndex(where: { $0.id == list.id }) { diff --git a/ios/MullvadVPN/View controllers/SelectLocation/CustomListLocationNodeBuilder.swift b/ios/MullvadVPN/View controllers/SelectLocation/CustomListLocationNodeBuilder.swift index e92a8bda8de7..3f2e22a96f92 100644 --- a/ios/MullvadVPN/View controllers/SelectLocation/CustomListLocationNodeBuilder.swift +++ b/ios/MullvadVPN/View controllers/SelectLocation/CustomListLocationNodeBuilder.swift @@ -17,7 +17,7 @@ struct CustomListLocationNodeBuilder { var customListLocationNode: CustomListLocationNode { let listNode = CustomListLocationNode( name: customList.name, - code: customList.name.lowercased(), + code: customList.name, locations: customList.locations, isActive: !customList.locations.isEmpty, customList: customList diff --git a/ios/MullvadVPNTests/MullvadVPN/View controllers/SelectLocation/CustomListRepositoryTests.swift b/ios/MullvadVPNTests/MullvadVPN/View controllers/SelectLocation/CustomListRepositoryTests.swift index bb54ec2a6ed8..5e08158ebb38 100644 --- a/ios/MullvadVPNTests/MullvadVPN/View controllers/SelectLocation/CustomListRepositoryTests.swift +++ b/ios/MullvadVPNTests/MullvadVPN/View controllers/SelectLocation/CustomListRepositoryTests.swift @@ -30,11 +30,13 @@ class CustomListRepositoryTests: XCTestCase { func testFailedAddingDuplicateCustomList() throws { let item1 = CustomList(name: "Netflix", locations: []) - let item2 = CustomList(name: "Netflix", locations: []) + let item2 = CustomList(name: "netflix", locations: []) + let item3 = CustomList(name: "Netflix", locations: []) try XCTAssertNoThrow(repository.save(list: item1)) + try XCTAssertNoThrow(repository.save(list: item2)) - XCTAssertThrowsError(try repository.save(list: item2)) { error in + XCTAssertThrowsError(try repository.save(list: item3)) { error in XCTAssertEqual(error as? CustomRelayListError, CustomRelayListError.duplicateName) } } diff --git a/ios/MullvadVPNTests/MullvadVPN/View controllers/SelectLocation/CustomListsDataSourceTests.swift b/ios/MullvadVPNTests/MullvadVPN/View controllers/SelectLocation/CustomListsDataSourceTests.swift index a14e2296f8d4..33a97fffcd3c 100644 --- a/ios/MullvadVPNTests/MullvadVPN/View controllers/SelectLocation/CustomListsDataSourceTests.swift +++ b/ios/MullvadVPNTests/MullvadVPN/View controllers/SelectLocation/CustomListsDataSourceTests.swift @@ -23,20 +23,20 @@ class CustomListsDataSourceTests: XCTestCase { let nodes = dataSource.nodes let netflixNode = try XCTUnwrap(nodes.first(where: { $0.name == "Netflix" })) - XCTAssertNotNil(netflixNode.descendantNodeFor(codes: ["netflix", "es1-wireguard"])) - XCTAssertNotNil(netflixNode.descendantNodeFor(codes: ["netflix", "se"])) - XCTAssertNotNil(netflixNode.descendantNodeFor(codes: ["netflix", "us", "dal"])) + XCTAssertNotNil(netflixNode.descendantNodeFor(codes: ["Netflix", "es1-wireguard"])) + XCTAssertNotNil(netflixNode.descendantNodeFor(codes: ["Netflix", "se"])) + XCTAssertNotNil(netflixNode.descendantNodeFor(codes: ["Netflix", "us", "dal"])) let youtubeNode = try XCTUnwrap(nodes.first(where: { $0.name == "Youtube" })) - XCTAssertNotNil(youtubeNode.descendantNodeFor(codes: ["youtube", "se2-wireguard"])) - XCTAssertNotNil(youtubeNode.descendantNodeFor(codes: ["youtube", "us", "dal"])) + XCTAssertNotNil(youtubeNode.descendantNodeFor(codes: ["Youtube", "se2-wireguard"])) + XCTAssertNotNil(youtubeNode.descendantNodeFor(codes: ["Youtube", "us", "dal"])) } func testParents() throws { let listNode = try XCTUnwrap(dataSource.nodes.first(where: { $0.name == "Netflix" })) - let countryNode = try XCTUnwrap(listNode.descendantNodeFor(codes: ["netflix-se"])) - let cityNode = try XCTUnwrap(listNode.descendantNodeFor(codes: ["netflix-se-got"])) - let hostNode = try XCTUnwrap(listNode.descendantNodeFor(codes: ["netflix-se10-wireguard"])) + let countryNode = try XCTUnwrap(listNode.descendantNodeFor(codes: ["Netflix", "se"])) + let cityNode = try XCTUnwrap(listNode.descendantNodeFor(codes: ["Netflix", "se", "got"])) + let hostNode = try XCTUnwrap(listNode.descendantNodeFor(codes: ["Netflix-se10-wireguard"])) XCTAssertNil(listNode.parent) XCTAssertEqual(countryNode.parent, listNode) @@ -48,8 +48,8 @@ class CustomListsDataSourceTests: XCTestCase { let nodes = dataSource.search(by: "got") let rootNode = RootLocationNode(children: nodes) - XCTAssertTrue(rootNode.descendantNodeFor(codes: ["netflix", "se", "got"])?.isHiddenFromSearch == false) - XCTAssertTrue(rootNode.descendantNodeFor(codes: ["netflix", "se", "sto"])?.isHiddenFromSearch == true) + XCTAssertTrue(rootNode.descendantNodeFor(codes: ["Netflix", "se", "got"])?.isHiddenFromSearch == false) + XCTAssertTrue(rootNode.descendantNodeFor(codes: ["Netflix", "se", "sto"])?.isHiddenFromSearch == true) } func testSearchWithEmptyText() throws { @@ -66,7 +66,7 @@ class CustomListsDataSourceTests: XCTestCase { let relays = UserSelectedRelays(locations: [.hostname("es", "mad", "es1-wireguard")], customListSelection: nil) let nodeByLocations = dataSource.node(by: relays, for: customLists.first!) - let nodeByCode = dataSource.nodes.first?.descendantNodeFor(codes: ["netflix", "es1-wireguard"]) + let nodeByCode = dataSource.nodes.first?.descendantNodeFor(codes: ["Netflix", "es1-wireguard"]) XCTAssertEqual(nodeByLocations, nodeByCode) }