letsencrypt.bats 2.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113
  1. #!/usr/bin/env bats
  2. if [ "${PATH#*/usr/local/hestia/bin*}" = "$PATH" ]; then
  3. . /etc/profile.d/hestia.sh
  4. fi
  5. load 'test_helper/bats-support/load'
  6. load 'test_helper/bats-assert/load'
  7. load 'test_helper/bats-file/load'
  8. function random() {
  9. head /dev/urandom | tr -dc 0-9 | head -c$1
  10. }
  11. function setup() {
  12. source /tmp/hestia-le-env.sh
  13. source $HESTIA/func/main.sh
  14. source $HESTIA/conf/hestia.conf
  15. source $HESTIA/func/ip.sh
  16. }
  17. @test "[ User ] Create new user" {
  18. run v-add-user $user $user $user@hestiacp.com default "Super Test"
  19. assert_success
  20. refute_output
  21. }
  22. @test "[ DNS ]Create DNS domain" {
  23. run v-add-dns-domain $user $domain $ip
  24. assert_success
  25. refute_output
  26. }
  27. @test "[ Web ] Create web domain" {
  28. run v-add-web-domain $user $domain $ip yes "www.$domain,renewal.$domain"
  29. assert_success
  30. refute_output
  31. }
  32. @test "[ Web ] Request new certificate for web domain" {
  33. run v-add-letsencrypt-domain $user $domain "www.$domain,renewal.$domain"
  34. assert_success
  35. refute_output
  36. }
  37. @test "[ Mail ] Create mail domain" {
  38. run v-add-mail-domain $user $domain
  39. assert_success
  40. refute_output
  41. }
  42. @test "[ Mail ] Request new Certificate for Mail Domain" {
  43. run v-add-letsencrypt-domain $user $domain "" "yes"
  44. assert_success
  45. refute_output
  46. }
  47. @test "[ All ] Run renewal script for LE" {
  48. run v-update-letsencrypt-ssl
  49. assert_success
  50. refute_output
  51. }
  52. @test [ Web ] Delete web ssl" {
  53. run v-delete-letsencrypt-domain $user $domain "yes"
  54. assert_success
  55. refute_output
  56. }
  57. @test [ Mail ] Delete mail ssl" {
  58. run v-delete-letsencrypt-domain $user $domain "yes" "yes"
  59. assert_success
  60. refute_output
  61. }
  62. @test "[ Web ] Delete web domain" {
  63. run v-delete-web-domain $user $domain "yes"
  64. assert_success
  65. refute_output
  66. }
  67. @test "[ Redirect ] Create web domain" {
  68. run v-add-web-domain $user "redirect.$domain" $ip yes
  69. assert_success
  70. refute_output
  71. }
  72. @test "[ Redirect ] Add Domain redirect to other website" {
  73. run v-add-web-domain-redirect $user "redirect.$domain" "https://hestiacp.com" 301 "yes"
  74. assert_success
  75. refute_output
  76. }
  77. @test "[ Redirect ] Request new certificate for web {
  78. run v-add-letsencrypt-domain $user "redirect.$domain" ""
  79. assert_success
  80. refute_output
  81. }
  82. @test "[ Redirect ] Run renewal script for LE Redirected domain" {
  83. run v-update-letsencrypt-ssl
  84. assert_success
  85. refute_output
  86. }
  87. @test "Delete user" {
  88. run v-delete-user $user
  89. assert_success
  90. refute_output
  91. }