UpdateVersionFile function
Added UpdateVersionFile to the repo/manifest_version package.
This updates the chromeos_version.sh file and pushes the change
to a specified remote.
BUG=chromium:980346
TEST=run_tests.sh
Change-Id: Ib4900aac418561303d22bddbcf69f5f71dad9264
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/infra/go/+/1701757
Commit-Queue: Jack Neus <jackneus@google.com>
Tested-by: Jack Neus <jackneus@google.com>
Reviewed-by: Evan Hernandez <evanhernandez@chromium.org>
diff --git a/internal/git/git_test.go b/internal/git/git_test.go
index 853c867..b632426 100644
--- a/internal/git/git_test.go
+++ b/internal/git/git_test.go
@@ -4,6 +4,7 @@
package git
import (
+ "fmt"
"go.chromium.org/chromiumos/infra/go/internal/cmd"
"gotest.tools/assert"
"regexp"
@@ -105,3 +106,67 @@
assert.NilError(t, err)
assert.Equal(t, res, sha)
}
+
+func TestCreateBranch(t *testing.T) {
+ fakeGitRepo := "top-secret-project"
+ branchName := "project z"
+
+ CommandRunnerImpl = cmd.FakeCommandRunner{
+ ExpectedDir: fakeGitRepo,
+ ExpectedCmd: []string{"git", "checkout", "-B", branchName, "HEAD"},
+ }
+ assert.NilError(t, CreateBranch(fakeGitRepo, branchName))
+}
+
+func TestCommitAll(t *testing.T) {
+ fakeGitRepo := "repo"
+ commitMsg := "commit"
+
+ CommandRunnerImpl = &cmd.FakeCommandRunnerMulti{
+ CommandRunners: []cmd.FakeCommandRunner{
+ {
+ ExpectedDir: fakeGitRepo,
+ ExpectedCmd: []string{"git", "add", "-A"},
+ },
+ {
+ ExpectedDir: fakeGitRepo,
+ ExpectedCmd: []string{"git", "commit", "-m", commitMsg},
+ },
+ },
+ }
+
+ err := CommitAll(fakeGitRepo, commitMsg)
+ assert.NilError(t, err)
+}
+
+func TestPushChanges(t *testing.T) {
+ fakeGitRepo := "da-bank"
+ commitMsg := "da-money"
+ localRef := "da-vault"
+
+ remoteRef := RemoteRef{
+ Remote: "da-family",
+ Ref: "da-van",
+ }
+
+ pushStr := fmt.Sprintf("%s:%s", localRef, remoteRef.Ref)
+ CommandRunnerImpl = &cmd.FakeCommandRunnerMulti{
+ CommandRunners: []cmd.FakeCommandRunner{
+ {
+ ExpectedDir: fakeGitRepo,
+ ExpectedCmd: []string{"git", "add", "-A"},
+ },
+ {
+ ExpectedDir: fakeGitRepo,
+ ExpectedCmd: []string{"git", "commit", "-m", commitMsg},
+ },
+ {
+ ExpectedDir: fakeGitRepo,
+ ExpectedCmd: []string{"git", "push", remoteRef.Remote, pushStr, "--dry-run"},
+ },
+ },
+ }
+
+ err := PushChanges(fakeGitRepo, localRef, commitMsg, true, remoteRef)
+ assert.NilError(t, err)
+}