factor.test 2.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990
  1. #!/bin/sh
  2. # tests/factor.test - test functionality of factor.
  3. #
  4. # Copyright (c) 1999, 2003, 2004 Joseph Samuel Myers.
  5. # All rights reserved.
  6. #
  7. # Redistribution and use in source and binary forms, with or without
  8. # modification, are permitted provided that the following conditions
  9. # are met:
  10. # 1. Redistributions of source code must retain the above copyright
  11. # notice, this list of conditions and the following disclaimer.
  12. # 2. Redistributions in binary form must reproduce the above copyright
  13. # notice, this list of conditions and the following disclaimer in the
  14. # documentation and/or other materials provided with the distribution.
  15. # 3. The name of the author may not be used to endorse or promote products
  16. # derived from this software without specific prior written permission.
  17. #
  18. # THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
  19. # IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
  20. # OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
  21. # IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
  22. # INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
  23. # BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
  24. # LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
  25. # AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
  26. # OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
  27. # OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  28. # SUCH DAMAGE.
  29. set -e
  30. . tests/common
  31. testexec factor factor/factor
  32. testno 1
  33. factor/factor 123456789 >test.out 2>&1 || failtest
  34. compare test.out tests/factor.123456789
  35. rm -f test.out
  36. testno 2
  37. factor/factor 987654321 >test.out 2>&1 || failtest
  38. compare test.out tests/factor.987654321
  39. rm -f test.out
  40. testno 3
  41. factor/factor 123 456 >test.out 2>&1 || failtest
  42. compare test.out tests/factor.123456
  43. rm -f test.out
  44. testno 4
  45. factor/factor <<EOF >test.out 2>&1 || failtest
  46. 123
  47. 456
  48. EOF
  49. compare test.out tests/factor.123456
  50. rm -f test.out
  51. testno 5
  52. factor/factor 8675309 >test.out 2>&1 || failtest
  53. compare test.out tests/factor.8675309
  54. rm -f test.out
  55. if grep -q HAVE_OPENSSL include/bsd-games.h; then
  56. testno 6
  57. factor/factor 6172538568 >test.out 2>&1 || failtest
  58. compare test.out tests/factor.6172538568
  59. rm -f test.out
  60. testno 7
  61. factor/factor 987654321987654 >test.out 2>&1 || failtest
  62. compare test.out tests/factor.987654321987654
  63. rm -f test.out
  64. testno 8
  65. factor/factor 987654321987654321987 >test.out 2>&1 || failtest
  66. compare test.out tests/factor.987654321987654321987
  67. rm -f test.out
  68. testno 9
  69. factor/factor 99999999999991 >test.out 2>&1 || failtest
  70. compare test.out tests/factor.99999999999991
  71. rm -f test.out
  72. testno 10
  73. factor/factor 2147483647111311 >test.out 2>&1 || failtest
  74. compare test.out tests/factor.2147483647111311
  75. rm -f test.out
  76. fi