gmp_mod.phpt 856 B

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051
  1. --TEST--
  2. gmp_mod tests()
  3. --EXTENSIONS--
  4. gmp
  5. --FILE--
  6. <?php
  7. try {
  8. var_dump(gmp_mod("",""));
  9. } catch (\ValueError $e) {
  10. echo $e->getMessage() . \PHP_EOL;
  11. }
  12. var_dump(gmp_mod(0,1));
  13. var_dump(gmp_mod(0,-1));
  14. try {
  15. var_dump(gmp_mod(-1,0));
  16. } catch (\DivisionByZeroError $e) {
  17. echo $e->getMessage() . \PHP_EOL;
  18. }
  19. try {
  20. var_dump(gmp_mod(array(), array()));
  21. } catch (\TypeError $e) {
  22. echo $e->getMessage() . \PHP_EOL;
  23. }
  24. $a = gmp_init("-100000000");
  25. $b = gmp_init("353467");
  26. var_dump(gmp_mod($a, $b));
  27. echo "Done\n";
  28. ?>
  29. --EXPECT--
  30. gmp_mod(): Argument #1 ($num1) is not an integer string
  31. object(GMP)#2 (1) {
  32. ["num"]=>
  33. string(1) "0"
  34. }
  35. object(GMP)#2 (1) {
  36. ["num"]=>
  37. string(1) "0"
  38. }
  39. Modulo by zero
  40. gmp_mod(): Argument #1 ($num1) must be of type GMP|string|int, array given
  41. object(GMP)#4 (1) {
  42. ["num"]=>
  43. string(5) "31161"
  44. }
  45. Done