macos: make testing without openssl work properly
On MacOS, building and testing without openssl is much easier. The tests should skip tests that fail because of missing openssl instead of aborting. Fixes https://github.com/rfjakob/gocryptfs/issues/123
This commit is contained in:
parent
61e964457d
commit
ccf1a84e41
|
@ -23,7 +23,7 @@ func TestSplitRange(t *testing.T) {
|
|||
testRange{6654, 8945})
|
||||
|
||||
key := make([]byte, cryptocore.KeyLen)
|
||||
cc := cryptocore.New(key, cryptocore.BackendOpenSSL, DefaultIVBits, true, false)
|
||||
cc := cryptocore.New(key, cryptocore.BackendGoGCM, DefaultIVBits, true, false)
|
||||
f := New(cc, DefaultBS, false)
|
||||
|
||||
for _, r := range ranges {
|
||||
|
@ -51,7 +51,7 @@ func TestCiphertextRange(t *testing.T) {
|
|||
testRange{6654, 8945})
|
||||
|
||||
key := make([]byte, cryptocore.KeyLen)
|
||||
cc := cryptocore.New(key, cryptocore.BackendOpenSSL, DefaultIVBits, true, false)
|
||||
cc := cryptocore.New(key, cryptocore.BackendGoGCM, DefaultIVBits, true, false)
|
||||
f := New(cc, DefaultBS, false)
|
||||
|
||||
for _, r := range ranges {
|
||||
|
@ -74,7 +74,7 @@ func TestCiphertextRange(t *testing.T) {
|
|||
|
||||
func TestBlockNo(t *testing.T) {
|
||||
key := make([]byte, cryptocore.KeyLen)
|
||||
cc := cryptocore.New(key, cryptocore.BackendOpenSSL, DefaultIVBits, true, false)
|
||||
cc := cryptocore.New(key, cryptocore.BackendGoGCM, DefaultIVBits, true, false)
|
||||
f := New(cc, DefaultBS, false)
|
||||
|
||||
b := f.CipherOffToBlockNo(788)
|
||||
|
|
|
@ -2,17 +2,15 @@ package cryptocore
|
|||
|
||||
import (
|
||||
"testing"
|
||||
|
||||
"github.com/rfjakob/gocryptfs/internal/stupidgcm"
|
||||
)
|
||||
|
||||
// "New" should accept at least these param combinations
|
||||
func TestCryptoCoreNew(t *testing.T) {
|
||||
key := make([]byte, 32)
|
||||
for _, useHKDF := range []bool{true, false} {
|
||||
c := New(key, BackendOpenSSL, 128, useHKDF, false)
|
||||
if c.IVLen != 16 {
|
||||
t.Fail()
|
||||
}
|
||||
c = New(key, BackendGoGCM, 96, useHKDF, false)
|
||||
c := New(key, BackendGoGCM, 96, useHKDF, false)
|
||||
if c.IVLen != 12 {
|
||||
t.Fail()
|
||||
}
|
||||
|
@ -20,6 +18,13 @@ func TestCryptoCoreNew(t *testing.T) {
|
|||
if c.IVLen != 16 {
|
||||
t.Fail()
|
||||
}
|
||||
if stupidgcm.BuiltWithoutOpenssl {
|
||||
continue
|
||||
}
|
||||
c = New(key, BackendOpenSSL, 128, useHKDF, false)
|
||||
if c.IVLen != 16 {
|
||||
t.Fail()
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -1,3 +1,5 @@
|
|||
// +build !without_openssl
|
||||
|
||||
// We compare against Go's built-in GCM implementation. Since stupidgcm only
|
||||
// supports 128-bit IVs and Go only supports that from 1.5 onward, we cannot
|
||||
// run these tests on older Go versions.
|
||||
|
|
Loading…
Reference in New Issue