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.

api_repo_lfs_migrate_test.go 1.8KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253
  1. // Copyright 2021 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 integrations
  5. import (
  6. "net/http"
  7. "path"
  8. "testing"
  9. "code.gitea.io/gitea/models"
  10. "code.gitea.io/gitea/models/unittest"
  11. "code.gitea.io/gitea/modules/lfs"
  12. "code.gitea.io/gitea/modules/setting"
  13. api "code.gitea.io/gitea/modules/structs"
  14. "code.gitea.io/gitea/services/migrations"
  15. "github.com/stretchr/testify/assert"
  16. )
  17. func TestAPIRepoLFSMigrateLocal(t *testing.T) {
  18. defer prepareTestEnv(t)()
  19. oldImportLocalPaths := setting.ImportLocalPaths
  20. oldAllowLocalNetworks := setting.Migrations.AllowLocalNetworks
  21. setting.ImportLocalPaths = true
  22. setting.Migrations.AllowLocalNetworks = true
  23. assert.NoError(t, migrations.Init())
  24. user := unittest.AssertExistsAndLoadBean(t, &models.User{ID: 1}).(*models.User)
  25. session := loginUser(t, user.Name)
  26. token := getTokenForLoggedInUser(t, session)
  27. req := NewRequestWithJSON(t, "POST", "/api/v1/repos/migrate?token="+token, &api.MigrateRepoOptions{
  28. CloneAddr: path.Join(setting.RepoRootPath, "migration/lfs-test.git"),
  29. RepoOwnerID: user.ID,
  30. RepoName: "lfs-test-local",
  31. LFS: true,
  32. })
  33. resp := MakeRequest(t, req, NoExpectedStatus)
  34. assert.EqualValues(t, http.StatusCreated, resp.Code)
  35. store := lfs.NewContentStore()
  36. ok, _ := store.Verify(lfs.Pointer{Oid: "fb8f7d8435968c4f82a726a92395be4d16f2f63116caf36c8ad35c60831ab041", Size: 6})
  37. assert.True(t, ok)
  38. ok, _ = store.Verify(lfs.Pointer{Oid: "d6f175817f886ec6fbbc1515326465fa96c3bfd54a4ea06cfd6dbbd8340e0152", Size: 6})
  39. assert.True(t, ok)
  40. setting.ImportLocalPaths = oldImportLocalPaths
  41. setting.Migrations.AllowLocalNetworks = oldAllowLocalNetworks
  42. assert.NoError(t, migrations.Init()) // reset old migration settings
  43. }