Add more tests
This commit is contained in:
@@ -1 +0,0 @@
|
||||
package src_test
|
||||
60
src/reponames_test.go
Normal file
60
src/reponames_test.go
Normal file
@@ -0,0 +1,60 @@
|
||||
package src
|
||||
|
||||
import (
|
||||
"testing"
|
||||
|
||||
"github.com/stretchr/testify/assert"
|
||||
"github.com/stretchr/testify/require"
|
||||
)
|
||||
|
||||
func Test_extractSourceDest(t *testing.T) {
|
||||
src, dst, err := extractSourceDest("owner/repo")
|
||||
require.NoError(t, err)
|
||||
assert.Equal(t, "owner/repo", src)
|
||||
assert.Equal(t, "owner/repo", dst)
|
||||
|
||||
src, dst, err = extractSourceDest("src_owner/src_repo:dst_owner/dst_repo")
|
||||
require.NoError(t, err)
|
||||
assert.Equal(t, "src_owner/src_repo", src)
|
||||
assert.Equal(t, "dst_owner/dst_repo", dst)
|
||||
|
||||
src, dst, err = extractSourceDest("src_owner/src_repo:dst_owner/dst_repo:bogus/bogus")
|
||||
require.Error(t, err)
|
||||
}
|
||||
|
||||
func Test_validateNwo(t *testing.T) {
|
||||
nwo, err := validateNwo("owner/repo")
|
||||
require.NoError(t, err)
|
||||
assert.Equal(t, "owner/repo", nwo)
|
||||
|
||||
nwo, err = validateNwo(" owner/repo ")
|
||||
require.NoError(t, err)
|
||||
assert.Equal(t, "owner/repo", nwo)
|
||||
|
||||
// test shortest valid name
|
||||
nwo, err = validateNwo("a/b")
|
||||
require.NoError(t, err)
|
||||
assert.Equal(t, "a/b", nwo)
|
||||
|
||||
// no slash separator
|
||||
nwo, err = validateNwo("bogus")
|
||||
require.Error(t, err)
|
||||
|
||||
// no owner
|
||||
nwo, err = validateNwo("/bogus")
|
||||
require.Error(t, err)
|
||||
|
||||
// no repo name
|
||||
nwo, err = validateNwo("bogus/")
|
||||
require.Error(t, err)
|
||||
|
||||
nwo, err = validateNwo("bogus whitespace/bogus")
|
||||
require.Error(t, err)
|
||||
|
||||
nwo, err = validateNwo("bogus/bogus/bogus")
|
||||
require.Error(t, err)
|
||||
|
||||
// A separate destination is only permitted for "repo names", not NWOs.
|
||||
nwo, err = validateNwo("owner/repo:bogus/bogus")
|
||||
require.Error(t, err)
|
||||
}
|
||||
Reference in New Issue
Block a user