Browse Source

Separate program solutions and create tests folder

content-update
xpetit 3 years ago
parent
commit
633cf0e613
No known key found for this signature in database
GPG Key ID: 97C60669182C17A5
  1. 7
      go/tests/Dockerfile
  2. 2
      go/tests/entrypoint.sh
  3. 2
      go/tests/lib/lib.go
  4. 0
      go/tests/solutions/addprimesum_prog/main.go
  5. 0
      go/tests/solutions/alphamirror_prog/main.go
  6. 0
      go/tests/solutions/balancedstring_prog/main.go
  7. 0
      go/tests/solutions/boolean_prog/main.go
  8. 0
      go/tests/solutions/brackets_prog/main.go
  9. 0
      go/tests/solutions/brainfuck_prog/main.go
  10. 0
      go/tests/solutions/cat_prog/main.go
  11. 0
      go/tests/solutions/cleanstr_prog/main.go
  12. 0
      go/tests/solutions/comcheck_prog/main.go
  13. 0
      go/tests/solutions/costumeprofit_prog/main.go
  14. 0
      go/tests/solutions/countdown_prog/main.go
  15. 0
      go/tests/solutions/displaya_prog/main.go
  16. 0
      go/tests/solutions/displayalpham_prog/main.go
  17. 0
      go/tests/solutions/displayalrevm_prog/main.go
  18. 0
      go/tests/solutions/displayfile_prog/main.go
  19. 0
      go/tests/solutions/displayfirstparam_prog/main.go
  20. 0
      go/tests/solutions/displaylastparam_prog/main.go
  21. 0
      go/tests/solutions/displayz_prog/main.go
  22. 0
      go/tests/solutions/doop_prog/main.go
  23. 0
      go/tests/solutions/expandstr_prog/main.go
  24. 0
      go/tests/solutions/firstword_prog/main.go
  25. 0
      go/tests/solutions/fixthemain_prog/main.go
  26. 0
      go/tests/solutions/flags_prog/main.go
  27. 0
      go/tests/solutions/fprime_prog/main.go
  28. 0
      go/tests/solutions/gcd_prog/main.go
  29. 0
      go/tests/solutions/grouping_prog/main.go
  30. 0
      go/tests/solutions/hello_prog/main.go
  31. 0
      go/tests/solutions/hiddenp_prog/main.go
  32. 0
      go/tests/solutions/inter_prog/main.go
  33. 0
      go/tests/solutions/ispowerof2_prog/main.go
  34. 0
      go/tests/solutions/lastword_prog/main.go
  35. 0
      go/tests/solutions/nbrconvertalpha_prog/main.go
  36. 0
      go/tests/solutions/nenokku_prog/main.go
  37. 0
      go/tests/solutions/onlya_prog/main.go
  38. 0
      go/tests/solutions/onlyz_prog/main.go
  39. 0
      go/tests/solutions/options_prog/main.go
  40. 0
      go/tests/solutions/paramcount_prog/main.go
  41. 0
      go/tests/solutions/piglatin_prog/main.go
  42. 0
      go/tests/solutions/pilot_prog/main.go
  43. 0
      go/tests/solutions/point_prog/main.go
  44. 0
      go/tests/solutions/printalphabet_prog/main.go
  45. 0
      go/tests/solutions/printalphabetalt2_prog/main.go
  46. 0
      go/tests/solutions/printalphabetalt_prog/main.go
  47. 0
      go/tests/solutions/printalphabetg_prog/main.go
  48. 0
      go/tests/solutions/printalt2_prog/main.go
  49. 0
      go/tests/solutions/printalt_prog/main.go
  50. 0
      go/tests/solutions/printaltu2_prog/main.go
  51. 0
      go/tests/solutions/printaltu_prog/main.go
  52. 0
      go/tests/solutions/printbits_prog/main.go
  53. 0
      go/tests/solutions/printchessboard_prog/main.go
  54. 0
      go/tests/solutions/printdigits_prog/main.go
  55. 0
      go/tests/solutions/printhex_prog/main.go
  56. 0
      go/tests/solutions/printparams_prog/main.go
  57. 0
      go/tests/solutions/printprogramname_prog/main.go
  58. 0
      go/tests/solutions/printrevcomb_prog/main.go
  59. 0
      go/tests/solutions/printreversealphabet_prog/main.go
  60. 0
      go/tests/solutions/printreversealphabetalt2_prog/main.go
  61. 0
      go/tests/solutions/printreversealphabetalt_prog/main.go
  62. 0
      go/tests/solutions/printreversealphabetg_prog/main.go
  63. 0
      go/tests/solutions/printrot_prog/main.go
  64. 0
      go/tests/solutions/raid3_prog/main.go
  65. 0
      go/tests/solutions/range_prog/main.go
  66. 0
      go/tests/solutions/rectangle_prog/main.go
  67. 0
      go/tests/solutions/repeatalpha_prog/main.go
  68. 0
      go/tests/solutions/reverserange_prog/main.go
  69. 0
      go/tests/solutions/reversestrcap_prog/main.go
  70. 0
      go/tests/solutions/revparams_prog/main.go
  71. 0
      go/tests/solutions/revwstr_prog/main.go
  72. 0
      go/tests/solutions/robottoorigin_prog/main.go
  73. 0
      go/tests/solutions/romannumbers_prog/main.go
  74. 0
      go/tests/solutions/rostring_prog/main.go
  75. 0
      go/tests/solutions/rot13_prog/main.go
  76. 0
      go/tests/solutions/rotatevowels_prog/main.go
  77. 0
      go/tests/solutions/rpncalc_prog/main.go
  78. 0
      go/tests/solutions/searchreplace_prog/main.go
  79. 0
      go/tests/solutions/sortparams_prog/main.go
  80. 0
      go/tests/solutions/sudoku_prog/main.go
  81. 0
      go/tests/solutions/switchcase_prog/main.go
  82. 0
      go/tests/solutions/tabmult_prog/main.go
  83. 0
      go/tests/solutions/tetrisoptimizer_prog/board.go
  84. 0
      go/tests/solutions/tetrisoptimizer_prog/main.go
  85. 0
      go/tests/solutions/tetrisoptimizer_prog/samples/bad00.txt
  86. 0
      go/tests/solutions/tetrisoptimizer_prog/samples/bad01.txt
  87. 0
      go/tests/solutions/tetrisoptimizer_prog/samples/bad02.txt
  88. 0
      go/tests/solutions/tetrisoptimizer_prog/samples/bad03.txt
  89. 0
      go/tests/solutions/tetrisoptimizer_prog/samples/bad04.txt
  90. 0
      go/tests/solutions/tetrisoptimizer_prog/samples/badFormat.txt
  91. 0
      go/tests/solutions/tetrisoptimizer_prog/samples/good_01-1-2-0.00.txt
  92. 0
      go/tests/solutions/tetrisoptimizer_prog/samples/good_02-1-4-0.00.txt
  93. 0
      go/tests/solutions/tetrisoptimizer_prog/samples/good_03-2-4-0.00.txt
  94. 0
      go/tests/solutions/tetrisoptimizer_prog/samples/good_04-6-6-0.00.txt
  95. 0
      go/tests/solutions/tetrisoptimizer_prog/samples/good_05-21-10-0.00.txt
  96. 0
      go/tests/solutions/tetrisoptimizer_prog/samples/good_06-22-10-0.00.txt
  97. 0
      go/tests/solutions/tetrisoptimizer_prog/samples/good_07-26-11-0.00.txt
  98. 0
      go/tests/solutions/tetrisoptimizer_prog/samples/good_08-24-10-0.03.txt
  99. 0
      go/tests/solutions/tetrisoptimizer_prog/samples/good_09-11-7-0.07.txt
  100. 0
      go/tests/solutions/tetrisoptimizer_prog/samples/good_10-12-7-0.52.txt
  101. Some files were not shown because too many files changed in this diff diff.show_more

7
go/tests/Dockerfile

@ -4,6 +4,7 @@ ENV GIT_TERMINAL_PROMPT=0
RUN apk add --no-cache git
RUN go get golang.org/x/tools/cmd/goimports
RUN go get github.com/01-edu/rc
WORKDIR /piscine-go
RUN go mod init piscine-go
@ -13,9 +14,9 @@ WORKDIR /public/go/tests
COPY go.* ./
RUN go mod download
COPY lib lib
COPY prog prog
RUN go get github.com/01-edu/rc
RUN go install $(grep -rl ChallengeMain ./prog | rev | cut -d/ -f2- | rev)
COPY solutions solutions
COPY tests tests
RUN go install $(grep -rl ChallengeMain ./tests | rev | cut -d/ -f2- | rev)
RUN rm -rf /piscine-go

2
go/tests/entrypoint.sh

@ -52,5 +52,5 @@ if command -v "${EXERCISE}_test" >/dev/null 2>&1; then
"${EXERCISE}_test"
else
# The exercise is a function
go run "./prog/${EXERCISE}_test"
go run "./tests/${EXERCISE}_test"
fi

2
go/tests/lib/lib.go

@ -372,7 +372,7 @@ func ChallengeMainStdin(exercise, input string, args ...string) {
return fmt.Sprintf("echo $?\n%d\n$", code)
}
student, studentCode := run(path.Join("student", exercise))
solution, solutionCode := run(path.Join("github.com/01-edu/public/go/tests/prog", exercise+"_prog"))
solution, solutionCode := run(path.Join("github.com/01-edu/public/go/tests/solutions", exercise+"_prog"))
if solutionCode == 0 {
if studentCode != 0 {
Fatalln("Your program fails (non-zero exit status) when it should not :\n" +

0
go/tests/prog/addprimesum_prog/main.go → go/tests/solutions/addprimesum_prog/main.go

0
go/tests/prog/alphamirror_prog/main.go → go/tests/solutions/alphamirror_prog/main.go

0
go/tests/prog/balancedstring_prog/main.go → go/tests/solutions/balancedstring_prog/main.go

0
go/tests/prog/boolean_prog/main.go → go/tests/solutions/boolean_prog/main.go

0
go/tests/prog/brackets_prog/main.go → go/tests/solutions/brackets_prog/main.go

0
go/tests/prog/brainfuck_prog/main.go → go/tests/solutions/brainfuck_prog/main.go

0
go/tests/prog/cat_prog/main.go → go/tests/solutions/cat_prog/main.go

0
go/tests/prog/cleanstr_prog/main.go → go/tests/solutions/cleanstr_prog/main.go

0
go/tests/prog/comcheck_prog/main.go → go/tests/solutions/comcheck_prog/main.go

0
go/tests/prog/costumeprofit_prog/main.go → go/tests/solutions/costumeprofit_prog/main.go

0
go/tests/prog/countdown_prog/main.go → go/tests/solutions/countdown_prog/main.go

0
go/tests/prog/displaya_prog/main.go → go/tests/solutions/displaya_prog/main.go

0
go/tests/prog/displayalpham_prog/main.go → go/tests/solutions/displayalpham_prog/main.go

0
go/tests/prog/displayalrevm_prog/main.go → go/tests/solutions/displayalrevm_prog/main.go

0
go/tests/prog/displayfile_prog/main.go → go/tests/solutions/displayfile_prog/main.go

0
go/tests/prog/displayfirstparam_prog/main.go → go/tests/solutions/displayfirstparam_prog/main.go

0
go/tests/prog/displaylastparam_prog/main.go → go/tests/solutions/displaylastparam_prog/main.go

0
go/tests/prog/displayz_prog/main.go → go/tests/solutions/displayz_prog/main.go

0
go/tests/prog/doop_prog/main.go → go/tests/solutions/doop_prog/main.go

0
go/tests/prog/expandstr_prog/main.go → go/tests/solutions/expandstr_prog/main.go

0
go/tests/prog/firstword_prog/main.go → go/tests/solutions/firstword_prog/main.go

0
go/tests/prog/fixthemain_prog/main.go → go/tests/solutions/fixthemain_prog/main.go

0
go/tests/prog/flags_prog/main.go → go/tests/solutions/flags_prog/main.go

0
go/tests/prog/fprime_prog/main.go → go/tests/solutions/fprime_prog/main.go

0
go/tests/prog/gcd_prog/main.go → go/tests/solutions/gcd_prog/main.go

0
go/tests/prog/grouping_prog/main.go → go/tests/solutions/grouping_prog/main.go

0
go/tests/prog/hello_prog/main.go → go/tests/solutions/hello_prog/main.go

0
go/tests/prog/hiddenp_prog/main.go → go/tests/solutions/hiddenp_prog/main.go

0
go/tests/prog/inter_prog/main.go → go/tests/solutions/inter_prog/main.go

0
go/tests/prog/ispowerof2_prog/main.go → go/tests/solutions/ispowerof2_prog/main.go

0
go/tests/prog/lastword_prog/main.go → go/tests/solutions/lastword_prog/main.go

0
go/tests/prog/nbrconvertalpha_prog/main.go → go/tests/solutions/nbrconvertalpha_prog/main.go

0
go/tests/prog/nenokku_prog/main.go → go/tests/solutions/nenokku_prog/main.go

0
go/tests/prog/onlya_prog/main.go → go/tests/solutions/onlya_prog/main.go

0
go/tests/prog/onlyz_prog/main.go → go/tests/solutions/onlyz_prog/main.go

0
go/tests/prog/options_prog/main.go → go/tests/solutions/options_prog/main.go

0
go/tests/prog/paramcount_prog/main.go → go/tests/solutions/paramcount_prog/main.go

0
go/tests/prog/piglatin_prog/main.go → go/tests/solutions/piglatin_prog/main.go

0
go/tests/prog/pilot_prog/main.go → go/tests/solutions/pilot_prog/main.go

0
go/tests/prog/point_prog/main.go → go/tests/solutions/point_prog/main.go

0
go/tests/prog/printalphabet_prog/main.go → go/tests/solutions/printalphabet_prog/main.go

0
go/tests/prog/printalphabetalt2_prog/main.go → go/tests/solutions/printalphabetalt2_prog/main.go

0
go/tests/prog/printalphabetalt_prog/main.go → go/tests/solutions/printalphabetalt_prog/main.go

0
go/tests/prog/printalphabetg_prog/main.go → go/tests/solutions/printalphabetg_prog/main.go

0
go/tests/prog/printalt2_prog/main.go → go/tests/solutions/printalt2_prog/main.go

0
go/tests/prog/printalt_prog/main.go → go/tests/solutions/printalt_prog/main.go

0
go/tests/prog/printaltu2_prog/main.go → go/tests/solutions/printaltu2_prog/main.go

0
go/tests/prog/printaltu_prog/main.go → go/tests/solutions/printaltu_prog/main.go

0
go/tests/prog/printbits_prog/main.go → go/tests/solutions/printbits_prog/main.go

0
go/tests/prog/printchessboard_prog/main.go → go/tests/solutions/printchessboard_prog/main.go

0
go/tests/prog/printdigits_prog/main.go → go/tests/solutions/printdigits_prog/main.go

0
go/tests/prog/printhex_prog/main.go → go/tests/solutions/printhex_prog/main.go

0
go/tests/prog/printparams_prog/main.go → go/tests/solutions/printparams_prog/main.go

0
go/tests/prog/printprogramname_prog/main.go → go/tests/solutions/printprogramname_prog/main.go

0
go/tests/prog/printrevcomb_prog/main.go → go/tests/solutions/printrevcomb_prog/main.go

0
go/tests/prog/printreversealphabet_prog/main.go → go/tests/solutions/printreversealphabet_prog/main.go

0
go/tests/prog/printreversealphabetalt2_prog/main.go → go/tests/solutions/printreversealphabetalt2_prog/main.go

0
go/tests/prog/printreversealphabetalt_prog/main.go → go/tests/solutions/printreversealphabetalt_prog/main.go

0
go/tests/prog/printreversealphabetg_prog/main.go → go/tests/solutions/printreversealphabetg_prog/main.go

0
go/tests/prog/printrot_prog/main.go → go/tests/solutions/printrot_prog/main.go

0
go/tests/prog/raid3_prog/main.go → go/tests/solutions/raid3_prog/main.go

0
go/tests/prog/range_prog/main.go → go/tests/solutions/range_prog/main.go

0
go/tests/prog/rectangle_prog/main.go → go/tests/solutions/rectangle_prog/main.go

0
go/tests/prog/repeatalpha_prog/main.go → go/tests/solutions/repeatalpha_prog/main.go

0
go/tests/prog/reverserange_prog/main.go → go/tests/solutions/reverserange_prog/main.go

0
go/tests/prog/reversestrcap_prog/main.go → go/tests/solutions/reversestrcap_prog/main.go

0
go/tests/prog/revparams_prog/main.go → go/tests/solutions/revparams_prog/main.go

0
go/tests/prog/revwstr_prog/main.go → go/tests/solutions/revwstr_prog/main.go

0
go/tests/prog/robottoorigin_prog/main.go → go/tests/solutions/robottoorigin_prog/main.go

0
go/tests/prog/romannumbers_prog/main.go → go/tests/solutions/romannumbers_prog/main.go

0
go/tests/prog/rostring_prog/main.go → go/tests/solutions/rostring_prog/main.go

0
go/tests/prog/rot13_prog/main.go → go/tests/solutions/rot13_prog/main.go

0
go/tests/prog/rotatevowels_prog/main.go → go/tests/solutions/rotatevowels_prog/main.go

0
go/tests/prog/rpncalc_prog/main.go → go/tests/solutions/rpncalc_prog/main.go

0
go/tests/prog/searchreplace_prog/main.go → go/tests/solutions/searchreplace_prog/main.go

0
go/tests/prog/sortparams_prog/main.go → go/tests/solutions/sortparams_prog/main.go

0
go/tests/prog/sudoku_prog/main.go → go/tests/solutions/sudoku_prog/main.go

0
go/tests/prog/switchcase_prog/main.go → go/tests/solutions/switchcase_prog/main.go

0
go/tests/prog/tabmult_prog/main.go → go/tests/solutions/tabmult_prog/main.go

0
go/tests/prog/tetrisoptimizer_prog/board.go → go/tests/solutions/tetrisoptimizer_prog/board.go

0
go/tests/prog/tetrisoptimizer_prog/main.go → go/tests/solutions/tetrisoptimizer_prog/main.go

0
go/tests/prog/tetrisoptimizer_prog/samples/bad00.txt → go/tests/solutions/tetrisoptimizer_prog/samples/bad00.txt

0
go/tests/prog/tetrisoptimizer_prog/samples/bad01.txt → go/tests/solutions/tetrisoptimizer_prog/samples/bad01.txt

0
go/tests/prog/tetrisoptimizer_prog/samples/bad02.txt → go/tests/solutions/tetrisoptimizer_prog/samples/bad02.txt

0
go/tests/prog/tetrisoptimizer_prog/samples/bad03.txt → go/tests/solutions/tetrisoptimizer_prog/samples/bad03.txt

0
go/tests/prog/tetrisoptimizer_prog/samples/bad04.txt → go/tests/solutions/tetrisoptimizer_prog/samples/bad04.txt

0
go/tests/prog/tetrisoptimizer_prog/samples/badFormat.txt → go/tests/solutions/tetrisoptimizer_prog/samples/badFormat.txt

0
go/tests/prog/tetrisoptimizer_prog/samples/good_01-1-2-0.00.txt → go/tests/solutions/tetrisoptimizer_prog/samples/good_01-1-2-0.00.txt

0
go/tests/prog/tetrisoptimizer_prog/samples/good_02-1-4-0.00.txt → go/tests/solutions/tetrisoptimizer_prog/samples/good_02-1-4-0.00.txt

0
go/tests/prog/tetrisoptimizer_prog/samples/good_03-2-4-0.00.txt → go/tests/solutions/tetrisoptimizer_prog/samples/good_03-2-4-0.00.txt

0
go/tests/prog/tetrisoptimizer_prog/samples/good_04-6-6-0.00.txt → go/tests/solutions/tetrisoptimizer_prog/samples/good_04-6-6-0.00.txt

0
go/tests/prog/tetrisoptimizer_prog/samples/good_05-21-10-0.00.txt → go/tests/solutions/tetrisoptimizer_prog/samples/good_05-21-10-0.00.txt

0
go/tests/prog/tetrisoptimizer_prog/samples/good_06-22-10-0.00.txt → go/tests/solutions/tetrisoptimizer_prog/samples/good_06-22-10-0.00.txt

0
go/tests/prog/tetrisoptimizer_prog/samples/good_07-26-11-0.00.txt → go/tests/solutions/tetrisoptimizer_prog/samples/good_07-26-11-0.00.txt

0
go/tests/prog/tetrisoptimizer_prog/samples/good_08-24-10-0.03.txt → go/tests/solutions/tetrisoptimizer_prog/samples/good_08-24-10-0.03.txt

0
go/tests/prog/tetrisoptimizer_prog/samples/good_09-11-7-0.07.txt → go/tests/solutions/tetrisoptimizer_prog/samples/good_09-11-7-0.07.txt

0
go/tests/prog/tetrisoptimizer_prog/samples/good_10-12-7-0.52.txt → go/tests/solutions/tetrisoptimizer_prog/samples/good_10-12-7-0.52.txt

Some files were not shown because too many files changed in this diff diff.show_more

Loading…
Cancel
Save