diff options
| -rw-r--r-- | ios/MullvadVPNTests/AccountTokenInputTests.swift | 22 |
1 files changed, 21 insertions, 1 deletions
diff --git a/ios/MullvadVPNTests/AccountTokenInputTests.swift b/ios/MullvadVPNTests/AccountTokenInputTests.swift index 40933105eb..82a09e1285 100644 --- a/ios/MullvadVPNTests/AccountTokenInputTests.swift +++ b/ios/MullvadVPNTests/AccountTokenInputTests.swift @@ -93,13 +93,33 @@ class AccountTokenInputTests: XCTestCase { func testInvalidCharactersReplacesTextFieldTextWithFormattedString() { let input = AccountTokenInput(string: kSampleToken) - let invalidRange = NSRange(location: 5, length: 0) + let invalidRange = NSRange(location: kSampleToken.count + 1, length: 0) + let textField = UITextField() + + _ = input.textField(textField, shouldChangeCharactersIn: invalidRange, replacementString: "´") + + XCTAssertEqual(textField.text, input.formattedString) + } + + func testDeleteCharacterOutsideOfTokenBoundaryDoesNotDeleteAnything() { + let input = AccountTokenInput(string: kSampleToken) + let invalidRange = NSRange(location: kSampleToken.count + 1, length: 1) let textField = UITextField() _ = input.textField(textField, shouldChangeCharactersIn: invalidRange, replacementString: "") XCTAssertEqual(textField.text, input.formattedString) } + + func testDeleteLastCharacter() { + let input = AccountTokenInput(string: kSampleToken) + let lastCharacterRange = NSRange(location: kSampleToken.count, length: 1) + let textField = UITextField() + + _ = input.textField(textField, shouldChangeCharactersIn: lastCharacterRange, replacementString: "") + + XCTAssertEqual(textField.text, "1234 567") + } } private extension String { |
