diff options
author | Michael Muré <batolettre@gmail.com> | 2019-06-07 02:53:21 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2019-06-07 02:53:21 +0200 |
commit | d69dcce806d280ddbd6a4fb17700153bc03da90b (patch) | |
tree | da07a7beadc77b3fe5e99f09bd38d919566a0191 /bridge/launchpad/config_test.go | |
parent | a9629dbad15f0e80ea244eb81abda4ddc08f7a0e (diff) | |
parent | 1c2ad95960c09d029e6306ac5a5ea76c58e8b5c9 (diff) | |
download | git-bug-d69dcce806d280ddbd6a4fb17700153bc03da90b.tar.gz git-bug-d69dcce806d280ddbd6a4fb17700153bc03da90b.zip |
Merge pull request #153 from A-Hilaly/bridge-configuration
[Breaking] Bridge configuration enhancements
Diffstat (limited to 'bridge/launchpad/config_test.go')
-rw-r--r-- | bridge/launchpad/config_test.go | 93 |
1 files changed, 93 insertions, 0 deletions
diff --git a/bridge/launchpad/config_test.go b/bridge/launchpad/config_test.go new file mode 100644 index 00000000..275c0d24 --- /dev/null +++ b/bridge/launchpad/config_test.go @@ -0,0 +1,93 @@ +package launchpad + +import ( + "testing" + + "github.com/stretchr/testify/assert" +) + +func TestSplitURL(t *testing.T) { + type args struct { + url string + } + type want struct { + project string + err error + } + tests := []struct { + name string + args args + want want + }{ + { + name: "default project url", + args: args{ + url: "https://launchpad.net/ubuntu", + }, + want: want{ + project: "ubuntu", + err: nil, + }, + }, + { + name: "project bugs url", + args: args{ + url: "https://bugs.launchpad.net/ubuntu", + }, + want: want{ + project: "ubuntu", + err: nil, + }, + }, + { + name: "bad url", + args: args{ + url: "https://launchpa.net/ubuntu", + }, + want: want{ + err: ErrBadProjectURL, + }, + }, + } + + for _, tt := range tests { + t.Run(tt.name, func(t *testing.T) { + project, err := splitURL(tt.args.url) + assert.Equal(t, tt.want.err, err) + assert.Equal(t, tt.want.project, project) + }) + } +} + +func TestValidateProject(t *testing.T) { + type args struct { + project string + } + tests := []struct { + name string + args args + want bool + }{ + { + name: "public project", + args: args{ + project: "ubuntu", + }, + want: true, + }, + { + name: "non existing project", + args: args{ + project: "cant-find-this", + }, + want: false, + }, + } + + for _, tt := range tests { + t.Run(tt.name, func(t *testing.T) { + ok, _ := validateProject(tt.args.project) + assert.Equal(t, tt.want, ok) + }) + } +} |