From db5782028aaff99dbf15c62d851a4f6ec8227748 Mon Sep 17 00:00:00 2001 From: Jakob Unterwurzacher Date: Tue, 4 Oct 2016 22:29:14 +0200 Subject: tests: skip tests with -openssl=false on Go 1.4 and lower Go versions 1.4 and lower lack NewGCMWithNonceSize(), which causes a panic in the test. --- tests/example_filesystems/example_filesystems_test.go | 8 +++++++- tests/matrix/matrix_test.go | 8 +++++++- 2 files changed, 14 insertions(+), 2 deletions(-) (limited to 'tests') diff --git a/tests/example_filesystems/example_filesystems_test.go b/tests/example_filesystems/example_filesystems_test.go index 8b01555..2b0c2ca 100644 --- a/tests/example_filesystems/example_filesystems_test.go +++ b/tests/example_filesystems/example_filesystems_test.go @@ -12,6 +12,7 @@ import ( "os" "testing" + "github.com/rfjakob/gocryptfs/internal/cryptocore" "github.com/rfjakob/gocryptfs/tests/test_helpers" ) @@ -22,7 +23,12 @@ var opensslOpt string func TestMain(m *testing.M) { // Make "testing.Verbose()" return the correct value flag.Parse() - for _, opensslOpt = range []string{"-openssl=false", "-openssl=true"} { + variants := []string{"-openssl=true", "-openssl=false"} + if !cryptocore.HaveModernGoGCM { + fmt.Printf("Skipping Go GCM variant, Go installation is too old") + variants = variants[:1] + } + for _, opensslOpt = range variants { if testing.Verbose() { fmt.Printf("example_filesystems: testing with %q\n", opensslOpt) } diff --git a/tests/matrix/matrix_test.go b/tests/matrix/matrix_test.go index 6a96909..b4c5668 100644 --- a/tests/matrix/matrix_test.go +++ b/tests/matrix/matrix_test.go @@ -22,6 +22,7 @@ import ( "syscall" "testing" + "github.com/rfjakob/gocryptfs/internal/cryptocore" "github.com/rfjakob/gocryptfs/internal/syscallcompat" "github.com/rfjakob/gocryptfs/tests/test_helpers" ) @@ -34,7 +35,12 @@ var plaintextnames bool func TestMain(m *testing.M) { // Make "testing.Verbose()" return the correct value flag.Parse() - for _, openssl := range []bool{true, false} { + opensslVariants := []bool{true, false} + if !cryptocore.HaveModernGoGCM { + fmt.Printf("Skipping Go GCM variant, Go installation is too old") + opensslVariants = opensslVariants[:1] + } + for _, openssl := range opensslVariants { for _, plaintextnames = range []bool{true, false} { if testing.Verbose() { fmt.Printf("matrix: testing openssl=%v plaintextnames=%v\n", openssl, plaintextnames) -- cgit v1.2.3