Skip to content

Commit

Permalink
Merge branch 'kazhuravlev/master'
Browse files Browse the repository at this point in the history
  • Loading branch information
mattfarina committed Aug 9, 2022
2 parents bfa99d9 + 29228f0 commit 3248ef7
Show file tree
Hide file tree
Showing 2 changed files with 33 additions and 0 deletions.
17 changes: 17 additions & 0 deletions version.go
Original file line number Diff line number Diff line change
Expand Up @@ -207,6 +207,23 @@ func NewVersion(v string) (*Version, error) {
return sv, nil
}

// New creates a new instance of Version with each of the parts passed in as
// arguments instead of parsing a version string.
func New(major, minor, patch uint64, pre, metadata string) *Version {
v := Version{
major: major,
minor: minor,
patch: patch,
pre: pre,
metadata: metadata,
original: "",
}

v.original = v.String()

return &v
}

// MustParse parses a given version and panics on error.
func MustParse(v string) *Version {
sv, err := NewVersion(v)
Expand Down
16 changes: 16 additions & 0 deletions version_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -99,6 +99,22 @@ func TestNewVersion(t *testing.T) {
}
}

func TestNew(t *testing.T) {
// v0.1.2
v := New(0, 1, 2, "", "")

if v.String() != "0.1.2" {
t.Errorf("expected version 0.1.2 but got %q", v.String())
}

// v1.2.3-alpha.1+foo.bar
v = New(1, 2, 3, "alpha.1", "foo.bar")

if v.String() != "1.2.3-alpha.1+foo.bar" {
t.Errorf("expected version 1.2.3-alpha.1+foo.bar but got %q", v.String())
}
}

func TestOriginal(t *testing.T) {
tests := []string{
"1.2.3",
Expand Down

0 comments on commit 3248ef7

Please sign in to comment.