1package cef
2
3import "testing"
4
5func TestExternalBeginFrameEnabledIsOnByDefault(t *testing.T) {
6 tests := []struct {
7 name string
8 value string
9 want bool
10 }{
11 {name: "unset", value: "", want: true},
12 {name: "blank", value: " ", want: true},
13 {name: "1", value: "1", want: true},
14 {name: "true", value: "true", want: true},
15 {name: "yes", value: "yes", want: true},
16 {name: "on", value: "on", want: true},
17 {name: "TRUE", value: "TRUE", want: true},
18 {name: " true ", value: " true ", want: true},
19 {name: "random enables", value: "random", want: true},
20 {name: "0", value: "0", want: false},
21 {name: "false", value: "false", want: false},
22 {name: "no", value: "no", want: false},
23 {name: "off", value: "off", want: false},
24 {name: "OFF", value: "OFF", want: false},
25 }
26
27 for _, tt := range tests {
28 t.Run(tt.name, func(t *testing.T) {
29 t.Setenv(cefExternalBeginFrameEnvVar, tt.value)
30
31 if got := externalBeginFrameEnabled(); got != tt.want {
32 t.Fatalf("externalBeginFrameEnabled(%q) = %v, want %v", tt.value, got, tt.want)
33 }
34 })
35 }
36}
37
38func TestCEFWebAuthnUnsafeEnabledIsOptIn(t *testing.T) {
39 tests := []struct {
40 name string
41 value string
42 want bool
43 }{
44 {name: "1", value: "1", want: true},
45 {name: "true", value: "true", want: true},
46 {name: "yes", value: "yes", want: true},
47 {name: "on", value: "on", want: true},
48 {name: "TRUE", value: "TRUE", want: true},
49 {name: " true ", value: " true ", want: true},
50 {name: "", value: "", want: false},
51 {name: "false", value: "false", want: false},
52 {name: "0", value: "0", want: false},
53 {name: "no", value: "no", want: false},
54 {name: "off", value: "off", want: false},
55 {name: "random", value: "random", want: false},
56 }
57
58 for _, tt := range tests {
59 t.Run(tt.name, func(t *testing.T) {
60 t.Setenv(cefEnableWebAuthnUnsafeEnvVar, tt.value)
61
62 if got := cefWebAuthnUnsafeEnabled(); got != tt.want {
63 t.Fatalf("cefWebAuthnUnsafeEnabled(%q) = %v, want %v", tt.value, got, tt.want)
64 }
65 })
66 }
67}