74 lines
2.2 KiB
Kotlin
74 lines
2.2 KiB
Kotlin
/*
|
|
*
|
|
* * Copyright © 2024 by Navi Technologies Limited
|
|
* * All rights reserved. Strictly confidential
|
|
*
|
|
*/
|
|
|
|
package com.navi.base
|
|
|
|
import com.navi.base.utils.AadhaarUtils
|
|
import org.junit.Assert.assertArrayEquals
|
|
import org.junit.Assert.assertFalse
|
|
import org.junit.Assert.assertTrue
|
|
import org.junit.Test
|
|
|
|
class AadhaarUtilsTest {
|
|
private val aadhaarUtils = AadhaarUtils()
|
|
|
|
@Test
|
|
fun `validateAadhaarNumber returns true for valid Aadhaar number`() {
|
|
val validAadhaar = "273838226780"
|
|
assertTrue(aadhaarUtils.isValidAadhaar(validAadhaar))
|
|
}
|
|
|
|
@Test
|
|
fun `validateAadhaarNumber returns false for invalid Aadhaar number`() {
|
|
val invalidAadhaar = "123456781235"
|
|
assertFalse(aadhaarUtils.isValidAadhaar(invalidAadhaar))
|
|
}
|
|
|
|
@Test
|
|
fun `validateAadhaarNumber returns false for non-numeric input`() {
|
|
val invalidAadhaar = "1234A6781234"
|
|
assertFalse(aadhaarUtils.isValidAadhaar(invalidAadhaar))
|
|
}
|
|
|
|
@Test
|
|
fun `validateAadhaarNumber returns false for input with less than 12 digits`() {
|
|
val shortAadhaar = "123456"
|
|
assertFalse(aadhaarUtils.isValidAadhaar(shortAadhaar))
|
|
}
|
|
|
|
@Test
|
|
fun `validateAadhaarNumber returns false for input with more than 12 digits`() {
|
|
val longAadhaar = "1234567890123"
|
|
assertFalse(aadhaarUtils.isValidAadhaar(longAadhaar))
|
|
}
|
|
|
|
@Test
|
|
fun `validateVerhoeff returns true for valid Verhoeff number`() {
|
|
val validVerhoeff = "236"
|
|
assertTrue(aadhaarUtils.validateVerhoeff(validVerhoeff))
|
|
}
|
|
|
|
@Test
|
|
fun `validateVerhoeff returns false for invalid Verhoeff number`() {
|
|
val invalidVerhoeff = "123"
|
|
assertFalse(aadhaarUtils.validateVerhoeff(invalidVerhoeff))
|
|
}
|
|
|
|
@Test
|
|
fun `stringToReversedIntArray correctly reverses string to int array`() {
|
|
val input = "12345"
|
|
val expected = intArrayOf(5, 4, 3, 2, 1)
|
|
assertArrayEquals(expected, aadhaarUtils.stringToReversedIntArray(input))
|
|
}
|
|
|
|
@Test(expected = NumberFormatException::class)
|
|
fun `stringToReversedIntArray throws exception for non-numeric input`() {
|
|
val input = "12A45"
|
|
aadhaarUtils.stringToReversedIntArray(input)
|
|
}
|
|
}
|