Encrypted messaging app
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

44 lines
990 B

2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
  1. package Auth_test
  2. import (
  3. "net/http"
  4. "testing"
  5. "git.tovijaeschke.xyz/tovi/Capsule/Backend/Database"
  6. "git.tovijaeschke.xyz/tovi/Capsule/Backend/Models"
  7. "git.tovijaeschke.xyz/tovi/Capsule/Backend/Tests"
  8. )
  9. func Test_Logout(t *testing.T) {
  10. client, ts, err := Tests.InitTestEnv()
  11. defer ts.Close()
  12. if err != nil {
  13. t.Errorf("Expected nil, recieved %s", err.Error())
  14. return
  15. }
  16. resp, err := client.Get(ts.URL + "/api/v1/logout")
  17. if err != nil {
  18. t.Errorf("Expected user record, recieved %s", err.Error())
  19. return
  20. }
  21. if resp.StatusCode != http.StatusOK {
  22. t.Errorf("Expected %d, recieved %d", http.StatusOK, resp.StatusCode)
  23. return
  24. }
  25. var session Models.Session
  26. u, err := Database.GetUserByUsername("test")
  27. if err != nil {
  28. t.Errorf("Expected user record, recieved %s", err.Error())
  29. return
  30. }
  31. err = Database.DB.First(&session, "user_id = ?", u.ID.String()).Error
  32. if err == nil {
  33. t.Errorf("Expected no session record, recieved %s", session.UserID)
  34. return
  35. }
  36. }