/
NikolayIvkin
/
TheAlgorithms
Обзор
Документация
Войти
/
NikolayIvkin
/
TheAlgorithms
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
master
src/test/java/com/thealgorithms/bitmanipulation/IsPowerTwoTest.java
51 строка
2 KB
Hardik Pawar
Enhance docs, add more tests in `ArrayCombination` (#5842)
26 окт 2024, 11:50
Не верифицирован
26 окт 2024, 11:50
009c2b3
Код
Авторство
О чём код?
package com.thealgorithms.bitmanipulation; import static org.junit.jupiter.api.Assertions.assertFalse; import static org.junit.jupiter.api.Assertions.assertTrue; import java.util.stream.Stream; import org.junit.jupiter.params.ParameterizedTest; import org.junit.jupiter.params.provider.Arguments; import org.junit.jupiter.params.provider.MethodSource; /** * Test case for IsPowerTwo class * @author Bama Charan Chhandogi (https://github.com/BamaCharanChhandogi) */ public class IsPowerTwoTest { @ParameterizedTest @MethodSource("provideNumbersForPowerTwo") public void testIsPowerTwo(int number, boolean expected) { if (expected) { assertTrue(IsPowerTwo.isPowerTwo(number)); } else { assertFalse(IsPowerTwo.isPowerTwo(number)); } } private static Stream<Arguments> provideNumbersForPowerTwo() { return Stream.of(Arguments.of(1, Boolean.TRUE), // 2^0 Arguments.of(2, Boolean.TRUE), // 2^1 Arguments.of(4, Boolean.TRUE), // 2^2 Arguments.of(8, Boolean.TRUE), // 2^3 Arguments.of(16, Boolean.TRUE), // 2^4 Arguments.of(32, Boolean.TRUE), // 2^5 Arguments.of(64, Boolean.TRUE), // 2^6 Arguments.of(128, Boolean.TRUE), // 2^7 Arguments.of(256, Boolean.TRUE), // 2^8 Arguments.of(1024, Boolean.TRUE), // 2^10 Arguments.of(0, Boolean.FALSE), // 0 is not a power of two Arguments.of(-1, Boolean.FALSE), // Negative number Arguments.of(-2, Boolean.FALSE), // Negative number Arguments.of(-4, Boolean.FALSE), // Negative number Arguments.of(3, Boolean.FALSE), // 3 is not a power of two Arguments.of(5, Boolean.FALSE), // 5 is not a power of two Arguments.of(6, Boolean.FALSE), // 6 is not a power of two Arguments.of(15, Boolean.FALSE), // 15 is not a power of two Arguments.of(1000, Boolean.FALSE), // 1000 is not a power of two Arguments.of(1023, Boolean.FALSE) // 1023 is not a power of two ); } }