summary refs log tree commit diff stats
path: root/password/hash_test.go
blob: 4f3739364b598532d2e43c110fdd0d7a4271d2b7 (plain) (blame)
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
package password

import "testing"

// TestHash tests the Hash function.
func TestHash(t *testing.T) {
	var err error
	passhash := make(map[string]string)

	// We generate random hashes with Hash, random string is
	// generate by RandStr func.
	for i := 1; i <= 8; i++ {
		p := RandStr(8)
		passhash[p], err = Hash(p)

		// Here we test if the hashPass func runs sucessfully.
		if err != nil {
			t.Errorf("Hash func failed for password: %s",
				p)
		}
	}

	// Here we are testing if the hashPass func returns correct
	// hashes. We assume that checkPass func returns correct
	// values.
	for p, h := range passhash {
		err = Check(p, h)
		if err != nil {
			t.Errorf("password: %s, hash: %s didn't match.",
				p, h)
		}
	}

}