mirror of
https://gitea.com/gitea/tea.git
synced 2026-10-26 11:01:25 +01:00
test: update the integration tests to the 1.0 command and output behavior
Signed-off-by: bircni <bircni@icloud.com>
This commit is contained in:
3 files changed
+14
-10
No files matched your search
@@ -86,7 +86,7 @@ func TestGiteaGitCredentialHelperClonesPrivateRepository(t *testing.T) {
|
|||||||
var checkout git.CheckoutResult
|
var checkout git.CheckoutResult
|
||||||
require.NoError(t, json.Unmarshal(out.Bytes(), &checkout))
|
require.NoError(t, json.Unmarshal(out.Bytes(), &checkout))
|
||||||
require.Equal(t, pull.HeadSHA, checkout.Commit)
|
require.Equal(t, pull.HeadSHA, checkout.Commit)
|
||||||
require.Equal(t, "pr/"+fmt.Sprint(pull.Number), checkout.Branch)
|
require.Equal(t, "feature", checkout.Branch)
|
||||||
branchesBefore, err := runner.Output(context.Background(), teaClone, false, "for-each-ref", "--format=%(refname):%(objectname)", "refs/heads/")
|
branchesBefore, err := runner.Output(context.Background(), teaClone, false, "for-each-ref", "--format=%(refname):%(objectname)", "refs/heads/")
|
||||||
require.NoError(t, err)
|
require.NoError(t, err)
|
||||||
out.Reset()
|
out.Reset()
|
||||||
@@ -102,7 +102,7 @@ func TestGiteaGitCredentialHelperClonesPrivateRepository(t *testing.T) {
|
|||||||
require.NoError(t, Execute(context.Background(), deps, []string{"pr", "checkout", fmt.Sprint(pull.Number), "-R", repo.FullName, "--cwd", teaClone, "--no-input", "--json"}))
|
require.NoError(t, Execute(context.Background(), deps, []string{"pr", "checkout", fmt.Sprint(pull.Number), "-R", repo.FullName, "--cwd", teaClone, "--no-input", "--json"}))
|
||||||
require.NoError(t, json.Unmarshal(out.Bytes(), &checkout))
|
require.NoError(t, json.Unmarshal(out.Bytes(), &checkout))
|
||||||
require.False(t, checkout.Detached)
|
require.False(t, checkout.Detached)
|
||||||
require.Equal(t, "pr/"+fmt.Sprint(pull.Number), checkout.Branch)
|
require.Equal(t, "feature", checkout.Branch)
|
||||||
branchesAfter, err = runner.Output(context.Background(), teaClone, false, "for-each-ref", "--format=%(refname):%(objectname)", "refs/heads/")
|
branchesAfter, err = runner.Output(context.Background(), teaClone, false, "for-each-ref", "--format=%(refname):%(objectname)", "refs/heads/")
|
||||||
require.NoError(t, err)
|
require.NoError(t, err)
|
||||||
require.Equal(t, branchesBefore, branchesAfter)
|
require.Equal(t, branchesBefore, branchesAfter)
|
||||||
@@ -131,12 +131,13 @@ func TestGiteaGitCredentialHelperClonesPrivateRepository(t *testing.T) {
|
|||||||
var synced git.SyncResult
|
var synced git.SyncResult
|
||||||
require.NoError(t, json.Unmarshal(out.Bytes(), &synced))
|
require.NoError(t, json.Unmarshal(out.Bytes(), &synced))
|
||||||
require.Equal(t, repo.DefaultBranch, synced.Branch)
|
require.Equal(t, repo.DefaultBranch, synced.Branch)
|
||||||
localHead, err = runner.Output(context.Background(), teaClone, false, "rev-parse", "HEAD")
|
// Sync updates the branch without switching to it, so read the branch rather than HEAD.
|
||||||
|
localHead, err = runner.Output(context.Background(), teaClone, false, "rev-parse", "refs/heads/"+synced.Branch)
|
||||||
require.NoError(t, err)
|
require.NoError(t, err)
|
||||||
require.Equal(t, synced.Commit, localHead)
|
require.Equal(t, synced.Commit, localHead)
|
||||||
contents, err := os.ReadFile(filepath.Join(teaClone, "sync.txt"))
|
contents, err := runner.Output(context.Background(), teaClone, false, "show", synced.Branch+":sync.txt")
|
||||||
require.NoError(t, err)
|
require.NoError(t, err)
|
||||||
require.Equal(t, "sync\n", string(contents))
|
require.Equal(t, "sync", strings.TrimSpace(contents))
|
||||||
if endpoint := os.Getenv("GITEA_TEA_TEST_SSH_ENDPOINT"); endpoint != "" {
|
if endpoint := os.Getenv("GITEA_TEA_TEST_SSH_ENDPOINT"); endpoint != "" {
|
||||||
verifySSHCloneAndCheckout(t, deps, repo, pull, user, environment, endpoint)
|
verifySSHCloneAndCheckout(t, deps, repo, pull, user, environment, endpoint)
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -12,6 +12,7 @@ import (
|
|||||||
"fmt"
|
"fmt"
|
||||||
"os"
|
"os"
|
||||||
"path/filepath"
|
"path/filepath"
|
||||||
|
"slices"
|
||||||
"strconv"
|
"strconv"
|
||||||
"strings"
|
"strings"
|
||||||
"testing"
|
"testing"
|
||||||
@@ -101,7 +102,7 @@ func TestGiteaMetadataLifecycle(t *testing.T) {
|
|||||||
require.Contains(t, foundRepos, generated)
|
require.Contains(t, foundRepos, generated)
|
||||||
execute("api", "user/starred/"+generated.FullName, "--method", "PUT")
|
execute("api", "user/starred/"+generated.FullName, "--method", "PUT")
|
||||||
require.NoError(t, json.Unmarshal(execute("repo", "list", "--starred", "--json"), &foundRepos))
|
require.NoError(t, json.Unmarshal(execute("repo", "list", "--starred", "--json"), &foundRepos))
|
||||||
require.Contains(t, foundRepos, generated)
|
require.True(t, slices.ContainsFunc(foundRepos, func(r services.Repository) bool { return r.ID == generated.ID }), "starred list misses the repository")
|
||||||
execute("api", "user/starred/"+generated.FullName, "--method", "DELETE")
|
execute("api", "user/starred/"+generated.FullName, "--method", "DELETE")
|
||||||
require.NoError(t, json.Unmarshal(execute("repo", "list", "--watched", "--limit", "1", "--page", "2", "--json"), &foundRepos))
|
require.NoError(t, json.Unmarshal(execute("repo", "list", "--watched", "--limit", "1", "--page", "2", "--json"), &foundRepos))
|
||||||
require.Len(t, foundRepos, 1)
|
require.Len(t, foundRepos, 1)
|
||||||
@@ -333,7 +334,9 @@ func TestGiteaMetadataLifecycle(t *testing.T) {
|
|||||||
out.Reset()
|
out.Reset()
|
||||||
diagnostics.Reset()
|
diagnostics.Reset()
|
||||||
require.NoError(t, Execute(context.Background(), deps, []string{"release", "asset", "delete", "v1", bulkAssets[0].Name, bulkAssets[1].Name, "--by-name", "-R", repo.FullName, "--yes"}))
|
require.NoError(t, Execute(context.Background(), deps, []string{"release", "asset", "delete", "v1", bulkAssets[0].Name, bulkAssets[1].Name, "--by-name", "-R", repo.FullName, "--yes"}))
|
||||||
require.Contains(t, diagnostics.String(), "Deleted asset")
|
require.Empty(t, diagnostics.String(), "confirmation lines are only written on a terminal")
|
||||||
|
require.NoError(t, json.Unmarshal(scoped("release", "asset", "list", "v1"), &assets))
|
||||||
|
require.Empty(t, assets)
|
||||||
scoped("release", "create", "v2", "--asset", assetFile)
|
scoped("release", "create", "v2", "--asset", assetFile)
|
||||||
require.NoError(t, json.Unmarshal(scoped("release", "asset", "list", "v2"), &assets))
|
require.NoError(t, json.Unmarshal(scoped("release", "asset", "list", "v2"), &assets))
|
||||||
require.Len(t, assets, 1)
|
require.Len(t, assets, 1)
|
||||||
@@ -425,11 +428,11 @@ func TestGiteaMetadataLifecycle(t *testing.T) {
|
|||||||
t.Errorf("organization repository cleanup: %v", err)
|
t.Errorf("organization repository cleanup: %v", err)
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
execute("team", "repo", "add", teamID, "-R", orgRepo.FullName)
|
execute("team", "repo", "add", teamID, orgRepo.FullName)
|
||||||
var teamRepos []services.Repository
|
var teamRepos []services.Repository
|
||||||
require.NoError(t, json.Unmarshal(execute("team", "repo", "list", teamID, "--json"), &teamRepos))
|
require.NoError(t, json.Unmarshal(execute("team", "repo", "list", teamID, "--json"), &teamRepos))
|
||||||
require.Len(t, teamRepos, 1)
|
require.Len(t, teamRepos, 1)
|
||||||
execute("team", "repo", "remove", teamID, "-R", orgRepo.FullName, "--yes")
|
execute("team", "repo", "remove", teamID, orgRepo.FullName, "--yes")
|
||||||
require.Equal(t, "[]\n", string(execute("team", "repo", "list", teamID, "--json")))
|
require.Equal(t, "[]\n", string(execute("team", "repo", "list", teamID, "--json")))
|
||||||
execute("team", "delete", teamID, "--yes")
|
execute("team", "delete", teamID, "--yes")
|
||||||
execute("variable", "set", "ORG_MODE", "--org", orgName, "--value", "org value")
|
execute("variable", "set", "ORG_MODE", "--org", orgName, "--value", "org value")
|
||||||
|
|||||||
@@ -47,7 +47,7 @@ func TestGiteaPullEditLifecycle(t *testing.T) {
|
|||||||
execute("label", "export", "-R", repo.FullName, "--output-file", exportPath)
|
execute("label", "export", "-R", repo.FullName, "--output-file", exportPath)
|
||||||
exported, err := os.ReadFile(exportPath)
|
exported, err := os.ReadFile(exportPath)
|
||||||
require.NoError(t, err)
|
require.NoError(t, err)
|
||||||
require.Contains(t, string(exported), "00ff00 review ;")
|
require.Contains(t, string(exported), "#00ff00 review\n")
|
||||||
jsonExportPath := exportPath + ".json"
|
jsonExportPath := exportPath + ".json"
|
||||||
execute("label", "export", "-R", repo.FullName, "--output-file", jsonExportPath, "--json")
|
execute("label", "export", "-R", repo.FullName, "--output-file", jsonExportPath, "--json")
|
||||||
jsonExport, err := os.ReadFile(jsonExportPath)
|
jsonExport, err := os.ReadFile(jsonExportPath)
|
||||||
|
|||||||
Reference in new issue
Block a user