From a9d8aa2591cd03fe1a9da72bab8d311e4840e8f1 Mon Sep 17 00:00:00 2001 From: Brian Picciano Date: Wed, 18 Aug 2021 18:13:18 -0600 Subject: implemented basic userID generation --- srv/chat/user_test.go | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) create mode 100644 srv/chat/user_test.go (limited to 'srv/chat/user_test.go') diff --git a/srv/chat/user_test.go b/srv/chat/user_test.go new file mode 100644 index 0000000..2169cde --- /dev/null +++ b/srv/chat/user_test.go @@ -0,0 +1,26 @@ +package chat + +import ( + "testing" + + "github.com/stretchr/testify/assert" +) + +func TestUserIDCalculator(t *testing.T) { + + const name, password = "name", "password" + + c := NewUserIDCalculator([]byte("foo")) + + // calculating with same params twice should result in same UserID + userID := c.Calculate(name, password) + assert.Equal(t, userID, c.Calculate(name, password)) + + // changing either name or password should result in a different Hash + assert.NotEqual(t, userID.Hash, c.Calculate(name+"!", password).Hash) + assert.NotEqual(t, userID.Hash, c.Calculate(name, password+"!").Hash) + + // changing the secret should change the UserID + c.Secret = []byte("bar") + assert.NotEqual(t, userID, c.Calculate(name, password)) +} -- cgit v1.2.3