You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by nf...@apache.org on 2020/11/17 10:46:41 UTC
[camel-k] 07/12: Add test for property-file and dependency flags
for local-run.
This is an automated email from the ASF dual-hosted git repository.
nferraro pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/camel-k.git
commit 430ba1b6d9eced7ae2be9f3550bcc4753b7c3e28
Author: Doru Bercea <gh...@ibm.com>
AuthorDate: Tue Nov 10 16:41:15 2020 -0500
Add test for property-file and dependency flags for local-run.
---
pkg/cmd/local_run.go | 6 ++--
pkg/cmd/local_run_test.go | 76 +++++++++++++++++++++++++++++++++++++++++++++++
2 files changed, 79 insertions(+), 3 deletions(-)
diff --git a/pkg/cmd/local_run.go b/pkg/cmd/local_run.go
index 5959a8e..654ffce 100644
--- a/pkg/cmd/local_run.go
+++ b/pkg/cmd/local_run.go
@@ -65,7 +65,7 @@ where <type> is one of {`+strings.Join(acceptedDependencyTypes, "|")+`}.`)
type localRunCmdOptions struct {
*RootCmdOptions
- PropertiesFiles []string `mapstructure:"property-files"`
+ PropertyFiles []string `mapstructure:"property-files"`
AdditionalDependencies []string `mapstructure:"dependencies"`
}
@@ -77,7 +77,7 @@ func (command *localRunCmdOptions) validate(args []string) error {
}
// Validate properties file.
- err = validateFiles(command.PropertiesFiles)
+ err = validateFiles(command.PropertyFiles)
if err != nil {
return nil
}
@@ -103,7 +103,7 @@ func (command *localRunCmdOptions) run(args []string) error {
}
// Run the integration locally.
- err = RunLocalIntegration(command.PropertiesFiles, dependencies, args)
+ err = RunLocalIntegration(command.PropertyFiles, dependencies, args)
if err != nil {
return nil
}
diff --git a/pkg/cmd/local_run_test.go b/pkg/cmd/local_run_test.go
new file mode 100644
index 0000000..2858021
--- /dev/null
+++ b/pkg/cmd/local_run_test.go
@@ -0,0 +1,76 @@
+/*
+Licensed to the Apache Software Foundation (ASF) under one or more
+contributor license agreements. See the NOTICE file distributed with
+this work for additional information regarding copyright ownership.
+The ASF licenses this file to You under the Apache License, Version 2.0
+(the "License"); you may not use this file except in compliance with
+the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing, software
+distributed under the License is distributed on an "AS IS" BASIS,
+WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+See the License for the specific language governing permissions and
+limitations under the License.
+*/
+
+package cmd
+
+import (
+ "testing"
+
+ "github.com/apache/camel-k/pkg/util/test"
+ "github.com/spf13/cobra"
+)
+
+func addTestLocalRunCmd(options *RootCmdOptions, rootCmd *cobra.Command) *localRunCmdOptions {
+ //add a testing version of run Command
+ localRunCmd, localRunCmdOptions := newCmdLocalRun(options)
+ localRunCmd.RunE = func(c *cobra.Command, args []string) error {
+ return nil
+ }
+ localRunCmd.Args = test.ArbitraryArgs
+ rootCmd.AddCommand(localRunCmd)
+ return localRunCmdOptions
+}
+
+func TestLocalRunPropertyFileFlag(t *testing.T) {
+ options, rootCmd := kamelTestPreAddCommandInit()
+
+ localRunCmdOptions := addTestLocalRunCmd(options, rootCmd)
+
+ kamelTestPostAddCommandInit(t, rootCmd)
+
+ _, err := test.ExecuteCommand(rootCmd, "local-run", "route.java", "--property-file", "file1.properties", "--property-file", "file2.properties")
+ if err != nil {
+ t.Fatalf("Unexpected error: %v", err)
+ }
+
+ if len(localRunCmdOptions.PropertyFiles) != 2 {
+ t.Fatalf("Property files expected to contain: \n %v elements\nGot:\n %v elements\n", 2, len(localRunCmdOptions.PropertyFiles))
+ }
+ if localRunCmdOptions.PropertyFiles[0] != "file1.properties" || localRunCmdOptions.PropertyFiles[1] != "file2.properties" {
+ t.Fatalf("Property files expected to be: \n %v\nGot:\n %v\n", "[file1.properties, file2.properties]", localRunCmdOptions.PropertyFiles)
+ }
+}
+
+func TestLocalRunAdditionalDependenciesFlag(t *testing.T) {
+ options, rootCmd := kamelTestPreAddCommandInit()
+
+ localRunCmdOptions := addTestLocalRunCmd(options, rootCmd)
+
+ kamelTestPostAddCommandInit(t, rootCmd)
+
+ _, err := test.ExecuteCommand(rootCmd, "local-run", "route.java", "-d", "mvn:camel-component-1", "-d", "mvn:camel-component-2")
+ if err != nil {
+ t.Fatalf("Unexpected error: %v", err)
+ }
+
+ if len(localRunCmdOptions.AdditionalDependencies) != 2 {
+ t.Fatalf("Additional dependencies expected to contain: \n %v elements\nGot:\n %v elements\n", 2, len(localRunCmdOptions.AdditionalDependencies))
+ }
+ if localRunCmdOptions.AdditionalDependencies[0] != "mvn:camel-component-1" || localRunCmdOptions.AdditionalDependencies[1] != "mvn:camel-component-2" {
+ t.Fatalf("Additional dependencies expected to be: \n %v\nGot:\n %v\n", "[mvn:camel-component-1, mvn:camel-component-2]", localRunCmdOptions.AdditionalDependencies)
+ }
+}