/*
 * Copyright (c) 2024. looly(loolly@aliyun.com)
 * Hutool is licensed under Mulan PSL v2.
 * You can use this software according to the terms and conditions of the Mulan PSL v2.
 * You may obtain a copy of Mulan PSL v2 at:
 *          https://license.coscl.org.cn/MulanPSL2
 * THIS SOFTWARE IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
 * EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
 * MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
 * See the Mulan PSL v2 for more details.
 */

package org.dromara.hutool.core.codec;

import org.junit.jupiter.api.Test;

import static org.junit.jupiter.api.Assertions.*;

class LuhnTest {
	@Test
	void checkTest() {
		assertTrue(Luhn.check("6225760008219524"));

		assertFalse(Luhn.check("123456"));
		assertFalse(Luhn.check(""));
		assertFalse(Luhn.check("abc"));
		assertFalse(Luhn.check("622576000821952a"));
	}

	@Test
	void getCheckDigitTest() {
		int checkDigit = Luhn.getCheckDigit("6225760008219524", true);
		assertEquals(4, checkDigit);

		checkDigit = Luhn.getCheckDigit("622576000821952", false);
		assertEquals(4, checkDigit);
	}
}
