router_anonym_test.go 2.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394
  1. package router_anonym
  2. import (
  3. "net/http"
  4. "testing"
  5. "git.p78su.freemyip.com/svi/gostore/pkg/mock/mock_service"
  6. "git.p78su.freemyip.com/svi/gostore/pkg/mock/mock_web"
  7. "github.com/gofiber/fiber/v2"
  8. )
  9. type tester struct {
  10. t *testing.T
  11. serv *mock_service.MockService
  12. web *mock_web.MockWeb
  13. anonRouter *RouterAnonym
  14. }
  15. func TestRouterAnonym(t *testing.T) {
  16. sf := &tester{
  17. t: t,
  18. }
  19. sf.create()
  20. sf.get()
  21. sf.time()
  22. }
  23. // Получение времени с сервера
  24. func (sf *tester) time() {
  25. sf.t.Log("time")
  26. app := fiber.New()
  27. app.Get("/anonym/time", sf.anonRouter.time)
  28. req, err := http.NewRequest("GET", "/anonym/time", nil)
  29. if err != nil {
  30. sf.t.Fatalf("time(): err=\n\t%v", err)
  31. }
  32. resp, err := app.Test(req)
  33. if err != nil {
  34. sf.t.Fatalf("time(): err=\n\t%v", err)
  35. }
  36. defer resp.Body.Close()
  37. }
  38. // Получение страницы размещения анонимного ключа
  39. func (sf *tester) get() {
  40. sf.t.Log("get")
  41. app := fiber.New()
  42. app.Get("/anonym", sf.anonRouter.get)
  43. req, err := http.NewRequest("GET", "/anonym", nil)
  44. if err != nil {
  45. sf.t.Fatalf("get(): err=\n\t%v", err)
  46. }
  47. resp, err := app.Test(req)
  48. if err != nil {
  49. sf.t.Fatalf("get(): err=\n\t%v", err)
  50. }
  51. defer resp.Body.Close()
  52. }
  53. // Создание роутера анонимных ключей
  54. func (sf *tester) create() {
  55. sf.t.Log("create")
  56. sf.createBad1()
  57. sf.createGood1()
  58. }
  59. func (sf *tester) createGood1() {
  60. sf.t.Log("createGood1")
  61. var err error
  62. sf.anonRouter, err = NewRouterAnonym(sf.web)
  63. if err != nil {
  64. sf.t.Fatalf("createGood1(): err=\n\t%v", err)
  65. }
  66. if sf.anonRouter == nil {
  67. sf.t.Fatalf("createGood1(): anonRouter==nil")
  68. }
  69. }
  70. // Нет объекта веб-сервера
  71. func (sf *tester) createBad1() {
  72. sf.t.Log("createBad1")
  73. sf.serv = mock_service.NewMockService()
  74. var err error
  75. sf.web, err = mock_web.NewMockWeb(sf.serv)
  76. if err != nil {
  77. sf.t.Fatalf("createBad1(): err=\n\t%v", err)
  78. }
  79. sf.anonRouter, err = NewRouterAnonym(nil)
  80. if err == nil {
  81. sf.t.Fatalf("createBad1(): err==nil")
  82. }
  83. if sf.anonRouter != nil {
  84. sf.t.Fatalf("createBad1(): anonRouter!=nil")
  85. }
  86. }