From 2a08bd64aff008724124bd8709bcef9fed03dd92 Mon Sep 17 00:00:00 2001 From: Jan Safranek Date: Tue, 2 Jul 2019 12:01:55 +0200 Subject: [PATCH] Add public functions to define CSI external tests 3rd party test suites that want to include external CSI tests may not use "flags" for cmdline parsing. --- test/e2e/storage/external/external.go | 11 +++++++++-- test/e2e/storage/external/external_test.go | 2 +- 2 files changed, 10 insertions(+), 3 deletions(-) diff --git a/test/e2e/storage/external/external.go b/test/e2e/storage/external/external.go index a539a54f347..3b712dd252a 100644 --- a/test/e2e/storage/external/external.go +++ b/test/e2e/storage/external/external.go @@ -68,7 +68,14 @@ func (t testDriverParameter) String() string { } func (t testDriverParameter) Set(filename string) error { - driver, err := t.loadDriverDefinition(filename) + return AddDriverDefinition(filename) +} + +// AddDriverDefinition defines ginkgo tests for CSI driver definition file. +// Either --storage.testdriver cmdline argument or AddDriverDefinition can be used +// to define the tests. +func AddDriverDefinition(filename string) error { + driver, err := loadDriverDefinition(filename) if err != nil { return err } @@ -84,7 +91,7 @@ func (t testDriverParameter) Set(filename string) error { return nil } -func (t testDriverParameter) loadDriverDefinition(filename string) (*driverDefinition, error) { +func loadDriverDefinition(filename string) (*driverDefinition, error) { if filename == "" { return nil, errors.New("missing file name") } diff --git a/test/e2e/storage/external/external_test.go b/test/e2e/storage/external/external_test.go index ea788870ddd..25bcba1d91b 100644 --- a/test/e2e/storage/external/external_test.go +++ b/test/e2e/storage/external/external_test.go @@ -64,7 +64,7 @@ func TestDriverParameter(t *testing.T) { } for _, testcase := range testcases { - actual, err := testDriverParameter{}.loadDriverDefinition(testcase.filename) + actual, err := loadDriverDefinition(testcase.filename) if testcase.err == "" { assert.NoError(t, err, testcase.name) } else {