summaryrefslogtreecommitdiff
path: root/internal/cryptocore/cryptocore_test.go
blob: fd6a30058e459c75be3df6758780a19b70f48ca9 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
package cryptocore

import (
	"testing"
)

// "New" should accept all param combinations
func TestCryptoCoreNew(t *testing.T) {
	key := make([]byte, 32)

	c := New(key, true, true)
	if c.IVLen != 16 {
		t.Fail()
	}
	c = New(key, true, false)
	if c.IVLen != 12 {
		t.Fail()
	}
	c = New(key, false, true)
	if c.IVLen != 16 {
		t.Fail()
	}
}

// "New" should panic on any key not 32 bytes long
func TestNewPanic(t *testing.T) {
	defer func() {
		if r := recover(); r == nil {
			t.Errorf("The code did not panic")
		}
	}()

	key := make([]byte, 16)
	New(key, true, true)
}