summaryrefslogtreecommitdiffstats
path: root/clover/cloverctl/src/cloverctl/cmd/get_testresult.go
diff options
context:
space:
mode:
Diffstat (limited to 'clover/cloverctl/src/cloverctl/cmd/get_testresult.go')
-rw-r--r--clover/cloverctl/src/cloverctl/cmd/get_testresult.go75
1 files changed, 75 insertions, 0 deletions
diff --git a/clover/cloverctl/src/cloverctl/cmd/get_testresult.go b/clover/cloverctl/src/cloverctl/cmd/get_testresult.go
new file mode 100644
index 0000000..f9d8e6d
--- /dev/null
+++ b/clover/cloverctl/src/cloverctl/cmd/get_testresult.go
@@ -0,0 +1,75 @@
+// Copyright (c) Authors of Clover
+//
+// All rights reserved. This program and the accompanying materials
+// are made available under the terms of the Apache License, Version 2.0
+// which accompanies this distribution, and is available at
+// http://www.apache.org/licenses/LICENSE-2.0
+
+package cmd
+
+import (
+ "fmt"
+ "os"
+ "gopkg.in/resty.v1"
+ "github.com/spf13/cobra"
+)
+
+var testresultCmd = &cobra.Command{
+ Use: "testresult",
+ Short: "Get test results from jmeter L7 client emulation",
+ Long: ``,
+ Run: func(cmd *cobra.Command, args []string) {
+ getResult("log")
+ },
+}
+
+var log_testresultCmd = &cobra.Command{
+ Use: "log",
+ Short: "Get jmeter summary log results",
+ Long: ``,
+ Run: func(cmd *cobra.Command, args []string) {
+ getResult("log")
+ },
+}
+
+var detail_testresultCmd = &cobra.Command{
+ Use: "detail",
+ Short: "Get jmeter detailed results",
+ Long: ``,
+ Run: func(cmd *cobra.Command, args []string) {
+ getResult("detail")
+ },
+}
+
+func init() {
+ getCmd.AddCommand(testresultCmd)
+ testresultCmd.AddCommand(log_testresultCmd)
+ testresultCmd.AddCommand(detail_testresultCmd)
+}
+
+func getResult(result_type string) {
+ checkControllerIP()
+ switch result_type {
+ case "detail":
+ url := controllerIP + "/jmeter/results/results"
+ resp, err := resty.R().
+ Get(url)
+ if err != nil {
+ fmt.Printf("Cannot connect to controller: %v\n", err)
+ os.Exit(1)
+ }
+ fmt.Printf("\nResponse Body: %v\n", resp)
+ case "log":
+ url := controllerIP + "/jmeter/results/log"
+ resp, err := resty.R().
+ Get(url)
+ if err != nil {
+ fmt.Printf("Cannot connect to controller: %v\n", err)
+ os.Exit(1)
+ }
+ fmt.Printf("\nResponse Body: %v\n", resp)
+ default:
+ msg := "Unrecoginized jmeter result type"
+ fmt.Printf("%s - use 'log' or 'detail'", msg)
+ }
+}