package com.peachpasswords.ui.pairing import org.junit.Assert.assertEquals import org.junit.Assert.assertNull import org.junit.Test class AdoptVaultPasswordValidationTest { @Test fun empty_password_is_blocked() { assertEquals("Enter a password.", adoptionPasswordBlocker("", "", score = 0)) } @Test fun short_password_names_the_length_requirement() { assertEquals( "Use at least 12 characters.", adoptionPasswordBlocker("too-short", "too-short", score = 3), ) } @Test fun missing_confirmation_is_named() { assertEquals( "Confirm your password.", adoptionPasswordBlocker("long enough password", "", score = 3), ) } @Test fun typo_names_the_mismatch() { assertEquals( "Passwords don’t match.", adoptionPasswordBlocker("long enough password", "long enough passw0rd", score = 3), ) } @Test fun weak_matching_password_is_blocked() { assertEquals( "Use a stronger password or longer passphrase.", adoptionPasswordBlocker("aaaaaaaaaaaa", "aaaaaaaaaaaa", score = 1), ) } @Test fun strong_matching_password_is_ready() { assertNull( adoptionPasswordBlocker( "a long varied passphrase 42!", "a long varied passphrase 42!", score = 3, ), ) } }