key_gen_test.go 984 B

1234567891011121314151617181920212223242526272829303132333435363738394041
  1. package generator
  2. import (
  3. "testing"
  4. )
  5. func TestKeyGen(t *testing.T) {
  6. generator, err := NewKeyGenerator("INVALIDKEY")
  7. if err == nil {
  8. t.Error("should return error when key length is invalid")
  9. }
  10. testid := "1ps9djpivy0cdrkuofw86083000jfcet"
  11. generator, err = NewKeyGenerator("ABCDEFGHIJKLMNOPABCDEFGHIJKLMNOP")
  12. if err != nil {
  13. t.Fatal(err)
  14. }
  15. key, err := generator.GenRandomKey(testid)
  16. if err != nil {
  17. t.Error(err)
  18. }
  19. t.Log(key)
  20. id, err := generator.DecodeIDFromRandomKey(key)
  21. if err != nil {
  22. t.Error(err)
  23. }
  24. t.Log(id)
  25. if id != testid {
  26. t.Errorf("wrong id %s, want %s", id, testid)
  27. }
  28. id, err = generator.DecodeIDFromRandomKey("")
  29. if err == nil {
  30. t.Error("decode id from random key should return error for empty key.")
  31. }
  32. id, err = generator.DecodeIDFromRandomKey("1111111111111111111111111111111111111111")
  33. if err == nil {
  34. t.Errorf("decode id from random key should return error for bad key : %s", "1111111111111111111111111111111111111111")
  35. }
  36. }