commit 6b512af4648580c41751b50001463dafb6dc20be
parent a520b1693fda626aaee61df4a78fe81361f08083
Author: Sean Enck <sean@ttypty.com>
Date: Tue, 11 Oct 2022 20:30:24 -0400
tests parsing windows
Diffstat:
1 file changed, 33 insertions(+), 0 deletions(-)
diff --git a/internal/inputs/env_test.go b/internal/inputs/env_test.go
@@ -8,6 +8,39 @@ import (
"github.com/enckse/lockbox/internal/inputs"
)
+func TestParseWindows(t *testing.T) {
+ if _, err := inputs.ParseColorWindow(""); err.Error() != "invalid colorization rules for totp, none found" {
+ t.Errorf("invalid error: %v", err)
+ }
+ if _, err := inputs.ParseColorWindow(",2"); err.Error() != "invalid colorization rule found: 2" {
+ t.Errorf("invalid error: %v", err)
+ }
+ if _, err := inputs.ParseColorWindow(",1:200"); err.Error() != "invalid time found for colorization rule: 1:200" {
+ t.Errorf("invalid error: %v", err)
+ }
+ if _, err := inputs.ParseColorWindow(",1:-1"); err.Error() != "invalid time found for colorization rule: 1:-1" {
+ t.Errorf("invalid error: %v", err)
+ }
+ if _, err := inputs.ParseColorWindow(",200:1"); err.Error() != "invalid time found for colorization rule: 200:1" {
+ t.Errorf("invalid error: %v", err)
+ }
+ if _, err := inputs.ParseColorWindow(",-1:1"); err.Error() != "invalid time found for colorization rule: -1:1" {
+ t.Errorf("invalid error: %v", err)
+ }
+ if _, err := inputs.ParseColorWindow(",2:1"); err.Error() != "invalid time found for colorization rule: 2:1" {
+ t.Errorf("invalid error: %v", err)
+ }
+ if _, err := inputs.ParseColorWindow(",xxx:1"); err.Error() != "strconv.Atoi: parsing \"xxx\": invalid syntax" {
+ t.Errorf("invalid error: %v", err)
+ }
+ if _, err := inputs.ParseColorWindow(",1:xxx"); err.Error() != "strconv.Atoi: parsing \"xxx\": invalid syntax" {
+ t.Errorf("invalid error: %v", err)
+ }
+ if _, err := inputs.ParseColorWindow(",1:2,11:22"); err != nil {
+ t.Errorf("invalid error: %v", err)
+ }
+}
+
func TestFormatTOTP(t *testing.T) {
otp := inputs.FormatTOTP("otpauth://abc")
if otp != "otpauth://abc" {