assertPrime method
Asserts that this number is prime.
A prime number is a natural number greater than 1 that is only divisible by 1 and itself. This method uses trial division to check primality.
Throws a test failure if this number is not prime.
Example:
2.assertPrime(); // Passes
3.assertPrime(); // Passes
5.assertPrime(); // Passes
7.assertPrime(); // Passes
11.assertPrime(); // Passes
4.assertPrime(); // Fails
6.assertPrime(); // Fails
1.assertPrime(); // Fails (1 is not prime by definition)
message
: Optional custom message for the failure reason.
Implementation
void assertPrime({String? message}) {
if (this <= 1) {
fail(message ?? '$this is not prime');
}
if (this <= 3) return;
if (this % 2 == 0 || this % 3 == 0) {
fail(message ?? '$this is not prime');
}
for (var i = 5; i * i <= this; i += 6) {
if (this % i == 0 || this % (i + 2) == 0) {
fail(message ?? '$this is not prime');
}
}
}