Ви не можете вибрати більше 25 тем Теми мають розпочинатися з літери або цифри, можуть містити дефіси (-) і не повинні перевищувати 35 символів.

user_redirect_test.go 1.8KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869
  1. // Copyright 2020 The Gitea Authors. All rights reserved.
  2. // Use of this source code is governed by a MIT-style
  3. // license that can be found in the LICENSE file.
  4. package models
  5. import (
  6. "testing"
  7. "github.com/stretchr/testify/assert"
  8. )
  9. func TestLookupUserRedirect(t *testing.T) {
  10. assert.NoError(t, PrepareTestDatabase())
  11. userID, err := LookupUserRedirect("olduser1")
  12. assert.NoError(t, err)
  13. assert.EqualValues(t, 1, userID)
  14. _, err = LookupUserRedirect("doesnotexist")
  15. assert.True(t, IsErrUserRedirectNotExist(err))
  16. }
  17. func TestNewUserRedirect(t *testing.T) {
  18. // redirect to a completely new name
  19. assert.NoError(t, PrepareTestDatabase())
  20. user := AssertExistsAndLoadBean(t, &User{ID: 1}).(*User)
  21. assert.NoError(t, newUserRedirect(x, user.ID, user.Name, "newusername"))
  22. AssertExistsAndLoadBean(t, &UserRedirect{
  23. LowerName: user.LowerName,
  24. RedirectUserID: user.ID,
  25. })
  26. AssertExistsAndLoadBean(t, &UserRedirect{
  27. LowerName: "olduser1",
  28. RedirectUserID: user.ID,
  29. })
  30. }
  31. func TestNewUserRedirect2(t *testing.T) {
  32. // redirect to previously used name
  33. assert.NoError(t, PrepareTestDatabase())
  34. user := AssertExistsAndLoadBean(t, &User{ID: 1}).(*User)
  35. assert.NoError(t, newUserRedirect(x, user.ID, user.Name, "olduser1"))
  36. AssertExistsAndLoadBean(t, &UserRedirect{
  37. LowerName: user.LowerName,
  38. RedirectUserID: user.ID,
  39. })
  40. AssertNotExistsBean(t, &UserRedirect{
  41. LowerName: "olduser1",
  42. RedirectUserID: user.ID,
  43. })
  44. }
  45. func TestNewUserRedirect3(t *testing.T) {
  46. // redirect for a previously-unredirected user
  47. assert.NoError(t, PrepareTestDatabase())
  48. user := AssertExistsAndLoadBean(t, &User{ID: 2}).(*User)
  49. assert.NoError(t, newUserRedirect(x, user.ID, user.Name, "newusername"))
  50. AssertExistsAndLoadBean(t, &UserRedirect{
  51. LowerName: user.LowerName,
  52. RedirectUserID: user.ID,
  53. })
  54. }