github.com/Ilhicas/nomad@v1.0.4-0.20210304152020-e86851182bc3/command/license_get_test.go (about) 1 package command 2 3 import ( 4 "testing" 5 "time" 6 7 "github.com/hashicorp/nomad/api" 8 "github.com/mitchellh/cli" 9 "github.com/stretchr/testify/require" 10 ) 11 12 var _ cli.Command = &LicenseGetCommand{} 13 14 func TestCommand_LicenseGet_OSSErr(t *testing.T) { 15 t.Parallel() 16 17 srv, _, url := testServer(t, false, nil) 18 defer srv.Shutdown() 19 20 ui := cli.NewMockUi() 21 cmd := &LicenseGetCommand{Meta: Meta{Ui: ui}} 22 23 code := cmd.Run([]string{"-address=" + url}) 24 if srv.Enterprise { 25 require.Equal(t, 0, code) 26 } else { 27 require.Equal(t, 1, code) 28 require.Contains(t, ui.ErrorWriter.String(), "Nomad Enterprise only endpoint") 29 } 30 } 31 32 func TestOutputLicenseReply(t *testing.T) { 33 now := time.Now() 34 lic := &api.LicenseReply{ 35 License: &api.License{ 36 LicenseID: "licenseID", 37 CustomerID: "customerID", 38 InstallationID: "*", 39 IssueTime: now, 40 StartTime: now, 41 ExpirationTime: now.Add(1 * time.Hour), 42 TerminationTime: now, 43 Product: "nomad", 44 Flags: map[string]interface{}{ 45 "": nil, 46 }, 47 }, 48 } 49 50 ui := cli.NewMockUi() 51 52 require.Equal(t, 0, OutputLicenseReply(ui, lic)) 53 54 out := ui.OutputWriter.String() 55 require.Contains(t, out, "Customer ID") 56 require.Contains(t, out, "License ID") 57 }