actions_test.go 744 B

12345678910111213141516171819202122232425262728293031323334353637383940
  1. package main
  2. import (
  3. "encoding/json"
  4. "sparrow/pkg/models"
  5. "sparrow/pkg/utils"
  6. "testing"
  7. "github.com/go-martini/martini"
  8. "github.com/martini-contrib/render"
  9. )
  10. func startServer() {
  11. martini.Env = martini.Prod
  12. handler := martini.Classic()
  13. handler.Use(render.Renderer())
  14. route(handler)
  15. handler.Run()
  16. }
  17. func struct2string(tar interface{}) string {
  18. bytes, err := json.Marshal(tar)
  19. if err != nil {
  20. return ""
  21. }
  22. return string(bytes)
  23. }
  24. func TestUserLogin(t *testing.T) {
  25. go startServer()
  26. req := models.LoginRequest{
  27. UserName: "lijian",
  28. Password: "lijian",
  29. }
  30. body, err := utils.SendHttpRequest("http://localhost:3000/api/v1/login", struct2string(req), "POST", nil)
  31. if err != nil {
  32. t.Fatal(err)
  33. }
  34. t.Fatal(string(body))
  35. }