...
1 package emulator
2
3 import (
4 "context"
5 "testing"
6 "time"
7
8 "gotest.tools/v3/assert"
9 )
10
11 func TestNewConfig(t *testing.T) {
12 cases := map[string]struct {
13 dir string
14 envVal string
15 exp Config
16 }{
17 "Valid": {
18 dir: "/dir",
19 envVal: "100s",
20 exp: Config{
21 dir: "/dir",
22 sessionTimeout: 100 * time.Second,
23 },
24 },
25 "No Session Timeout Val": {
26 dir: "/dir",
27 envVal: "",
28 exp: Config{
29 dir: "/dir",
30 sessionTimeout: defaultSessionTimeout,
31 },
32 },
33 "Invalid Session Timeout Val": {
34 dir: "/dir",
35 envVal: "100 Seconds",
36 exp: Config{
37 dir: "/dir",
38 sessionTimeout: defaultSessionTimeout,
39 },
40 },
41 }
42
43 for name, tc := range cases {
44 t.Run(name, func(t *testing.T) {
45 t.Setenv(envSessionTimeout, tc.envVal)
46 actual := NewConfig(context.Background(), tc.dir)
47 assert.Equal(t, tc.exp, actual)
48 })
49 }
50 }
51
View as plain text