summaryrefslogtreecommitdiffstatsci
path: root/src/caskbench.cpp
diff options
context:
space:
mode:
authorBryce Harrington <b.harrington@samsung.com>2014-06-05 03:59:30 +0900
committerBryce Harrington <b.harrington@samsung.com>2014-06-05 03:59:30 +0900
commit5a3b5116b86d4089f2dae320387350a7e0c01083 (patch)
treec7fce3f15d47ecf8d52409c0e2bf3b5e0257ab17 /src/caskbench.cpp
parente6b88a7ba97be9b8d5e41a46c1f3965ac94a0b32 (diff)
parenta7581e68ec410283a845e4d3e625417c736b9687 (diff)
Merge pull request #75 from Samsung/Issue_72
Added command line option to display the tests available for execution. ref: https://github.com/Samsung/caskbench/issues/72
Diffstat (limited to 'src/caskbench.cpp')
-rw-r--r--src/caskbench.cpp25
1 files changed, 25 insertions, 0 deletions
diff --git a/src/caskbench.cpp b/src/caskbench.cpp
index 62a68df..379d611 100644
--- a/src/caskbench.cpp
+++ b/src/caskbench.cpp
@@ -55,6 +55,7 @@ typedef struct _caskbench_options {
double tolerance;
int canvas_width;
int canvas_height;
+ int list_tests;
const char **tests;
} caskbench_options_t;
@@ -104,6 +105,22 @@ print_surfaces_available()
#endif
}
+static void
+print_tests_available()
+{
+ char *token = NULL;
+ char test_name[MAX_BUFFER];
+ for (int c = 0; c < num_perf_tests; c = c+2) {
+ memset (test_name, 0, sizeof(test_name));
+ strncpy (test_name, perf_tests[c].name, strlen(perf_tests[c].name));
+ token = strtok (test_name, "-");
+ if (token) {
+ token = strtok (NULL, "-");
+ printf("%s\n", token);
+ }
+ }
+}
+
void
process_options(caskbench_options_t *opt, int argc, char *argv[])
{
@@ -197,6 +214,9 @@ process_options(caskbench_options_t *opt, int argc, char *argv[])
{"canvas_height", 'h', POPT_ARG_INT, &opt->canvas_height, 0,
"Height of canvas used for each test case (defaults to 400)",
NULL},
+ {"list-tests", '\0', POPT_ARG_NONE, &opt->list_tests, 0,
+ "List the tests available for execution",
+ NULL},
POPT_AUTOHELP
{NULL}
};
@@ -377,6 +397,11 @@ main (int argc, char *argv[])
print_surfaces_available();
exit(0);
}
+ if (opt.list_tests) {
+ print_tests_available();
+ exit(0);
+ }
+
if (opt.output_file) {
// start writing json to output file
fp = fopen(opt.output_file, "w");