Fix document pull unit test in cmd
TestPull unit test should not perform functional verification. The purpose of cmd unit tests should be testing proper cmd object creation, not actually run the command. Moreover, we don't have possibility to mock and track all the objects that created inside of called functions. We can only verify golden output with help or when command performs basic stuff just inside of RunE interface. Actual test of called methods performed in pkg module. Change-Id: I2ad6b76f67cbf59d798c0f2b93752b3e3b3b053d Signed-off-by: Ruslan Aliev <raliev@mirantis.com>
This commit is contained in:
parent
645aeeb293
commit
79555848f2
@ -17,46 +17,19 @@ package document
|
|||||||
import (
|
import (
|
||||||
"testing"
|
"testing"
|
||||||
|
|
||||||
fixtures "github.com/go-git/go-git-fixtures/v4"
|
|
||||||
|
|
||||||
"opendev.org/airship/airshipctl/pkg/config"
|
|
||||||
"opendev.org/airship/airshipctl/pkg/environment"
|
|
||||||
"opendev.org/airship/airshipctl/testutil"
|
"opendev.org/airship/airshipctl/testutil"
|
||||||
)
|
)
|
||||||
|
|
||||||
func getDummyAirshipSettings() *environment.AirshipCTLSettings {
|
|
||||||
settings := &environment.AirshipCTLSettings{Config: testutil.DummyConfig(), Create: true}
|
|
||||||
|
|
||||||
fx := fixtures.Basic().One()
|
|
||||||
|
|
||||||
mfst := settings.Config.Manifests["dummy_manifest"]
|
|
||||||
mfst.Repositories = map[string]*config.Repository{
|
|
||||||
"primary": {
|
|
||||||
URLString: fx.DotGit().Root(),
|
|
||||||
CheckoutOptions: &config.RepoCheckout{
|
|
||||||
Branch: "master",
|
|
||||||
ForceCheckout: false,
|
|
||||||
},
|
|
||||||
Auth: &config.RepoAuth{
|
|
||||||
Type: "http-basic",
|
|
||||||
},
|
|
||||||
},
|
|
||||||
}
|
|
||||||
return settings
|
|
||||||
}
|
|
||||||
|
|
||||||
func TestPull(t *testing.T) {
|
func TestPull(t *testing.T) {
|
||||||
cmdTests := []*testutil.CmdTest{
|
cmdTests := []*testutil.CmdTest{
|
||||||
{
|
{
|
||||||
Name: "document-pull-cmd",
|
Name: "document-pull-cmd-with-help",
|
||||||
CmdLine: "",
|
CmdLine: "--help",
|
||||||
Cmd: NewPullCommand(getDummyAirshipSettings()),
|
Cmd: NewPullCommand(nil),
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
|
|
||||||
for _, tt := range cmdTests {
|
for _, tt := range cmdTests {
|
||||||
testutil.RunTest(t, tt)
|
testutil.RunTest(t, tt)
|
||||||
}
|
}
|
||||||
|
|
||||||
testutil.CleanUpGitFixtures(t)
|
|
||||||
}
|
}
|
||||||
|
7
cmd/document/testdata/TestPullGoldenOutput/document-pull-cmd-with-help.golden
vendored
Normal file
7
cmd/document/testdata/TestPullGoldenOutput/document-pull-cmd-with-help.golden
vendored
Normal file
@ -0,0 +1,7 @@
|
|||||||
|
Pulls documents from remote git repository
|
||||||
|
|
||||||
|
Usage:
|
||||||
|
pull [flags]
|
||||||
|
|
||||||
|
Flags:
|
||||||
|
-h, --help help for pull
|
Loading…
Reference in New Issue
Block a user