mirror of
https://github.com/jimeh/go-golden.git
synced 2026-02-19 03:16:38 +00:00
Tests have started using github.com/jimeh/go-mocktesting which allows testing unhappy paths where t.Fatal() and related functions are called.
222 lines
4.5 KiB
Go
222 lines
4.5 KiB
Go
package golden
|
|
|
|
import (
|
|
"testing"
|
|
|
|
"github.com/jimeh/envctl"
|
|
"github.com/stretchr/testify/assert"
|
|
)
|
|
|
|
var envUpdateFuncTestCases = []struct {
|
|
name string
|
|
env map[string]string
|
|
want bool
|
|
}{
|
|
{
|
|
name: "GOLDEN_UPDATE not set",
|
|
want: false,
|
|
},
|
|
{
|
|
name: "GOLDEN_UPDATE set to empty string",
|
|
env: map[string]string{"GOLDEN_UPDATE": ""},
|
|
want: false,
|
|
},
|
|
{
|
|
name: "GOLDEN_UPDATE set to 0",
|
|
env: map[string]string{"GOLDEN_UPDATE": "0"},
|
|
want: false,
|
|
},
|
|
{
|
|
name: "GOLDEN_UPDATE set to 1",
|
|
env: map[string]string{"GOLDEN_UPDATE": "1"},
|
|
want: true,
|
|
},
|
|
{
|
|
name: "GOLDEN_UPDATE set to 2",
|
|
env: map[string]string{"GOLDEN_UPDATE": "2"},
|
|
want: false,
|
|
},
|
|
{
|
|
name: "GOLDEN_UPDATE set to y",
|
|
env: map[string]string{"GOLDEN_UPDATE": "y"},
|
|
want: true,
|
|
},
|
|
{
|
|
name: "GOLDEN_UPDATE set to Y",
|
|
env: map[string]string{"GOLDEN_UPDATE": "Y"},
|
|
want: true,
|
|
},
|
|
{
|
|
name: "GOLDEN_UPDATE set to n",
|
|
env: map[string]string{"GOLDEN_UPDATE": "n"},
|
|
want: false,
|
|
},
|
|
{
|
|
name: "GOLDEN_UPDATE set to N",
|
|
env: map[string]string{"GOLDEN_UPDATE": "N"},
|
|
want: false,
|
|
},
|
|
{
|
|
name: "GOLDEN_UPDATE set to t",
|
|
env: map[string]string{"GOLDEN_UPDATE": "t"},
|
|
want: true,
|
|
},
|
|
{
|
|
name: "GOLDEN_UPDATE set to T",
|
|
env: map[string]string{"GOLDEN_UPDATE": "T"},
|
|
want: true,
|
|
},
|
|
{
|
|
name: "GOLDEN_UPDATE set to f",
|
|
env: map[string]string{"GOLDEN_UPDATE": "f"},
|
|
want: false,
|
|
},
|
|
{
|
|
name: "GOLDEN_UPDATE set to F",
|
|
env: map[string]string{"GOLDEN_UPDATE": "F"},
|
|
want: false,
|
|
},
|
|
{
|
|
name: "GOLDEN_UPDATE set to yes",
|
|
env: map[string]string{"GOLDEN_UPDATE": "yes"},
|
|
want: true,
|
|
},
|
|
{
|
|
name: "GOLDEN_UPDATE set to Yes",
|
|
env: map[string]string{"GOLDEN_UPDATE": "Yes"},
|
|
want: true,
|
|
},
|
|
{
|
|
name: "GOLDEN_UPDATE set to YeS",
|
|
env: map[string]string{"GOLDEN_UPDATE": "YeS"},
|
|
want: true,
|
|
},
|
|
{
|
|
name: "GOLDEN_UPDATE set to YES",
|
|
env: map[string]string{"GOLDEN_UPDATE": "YES"},
|
|
want: true,
|
|
},
|
|
{
|
|
name: "GOLDEN_UPDATE set to no",
|
|
env: map[string]string{"GOLDEN_UPDATE": "no"},
|
|
want: false,
|
|
},
|
|
{
|
|
name: "GOLDEN_UPDATE set to No",
|
|
env: map[string]string{"GOLDEN_UPDATE": "No"},
|
|
want: false,
|
|
},
|
|
{
|
|
name: "GOLDEN_UPDATE set to nO",
|
|
env: map[string]string{"GOLDEN_UPDATE": "nO"},
|
|
want: false,
|
|
},
|
|
{
|
|
name: "GOLDEN_UPDATE set to NO",
|
|
env: map[string]string{"GOLDEN_UPDATE": "NO"},
|
|
want: false,
|
|
},
|
|
{
|
|
name: "GOLDEN_UPDATE set to on",
|
|
env: map[string]string{"GOLDEN_UPDATE": "on"},
|
|
want: true,
|
|
},
|
|
{
|
|
name: "GOLDEN_UPDATE set to oN",
|
|
env: map[string]string{"GOLDEN_UPDATE": "oN"},
|
|
want: true,
|
|
},
|
|
{
|
|
name: "GOLDEN_UPDATE set to On",
|
|
env: map[string]string{"GOLDEN_UPDATE": "On"},
|
|
want: true,
|
|
},
|
|
{
|
|
name: "GOLDEN_UPDATE set to ON",
|
|
env: map[string]string{"GOLDEN_UPDATE": "ON"},
|
|
want: true,
|
|
},
|
|
{
|
|
name: "GOLDEN_UPDATE set to off",
|
|
env: map[string]string{"GOLDEN_UPDATE": "off"},
|
|
want: false,
|
|
},
|
|
{
|
|
name: "GOLDEN_UPDATE set to Off",
|
|
env: map[string]string{"GOLDEN_UPDATE": "Off"},
|
|
want: false,
|
|
},
|
|
{
|
|
name: "GOLDEN_UPDATE set to oFF",
|
|
env: map[string]string{"GOLDEN_UPDATE": "oFF"},
|
|
want: false,
|
|
},
|
|
{
|
|
name: "GOLDEN_UPDATE set to OFF",
|
|
env: map[string]string{"GOLDEN_UPDATE": "OFF"},
|
|
want: false,
|
|
},
|
|
{
|
|
name: "GOLDEN_UPDATE set to true",
|
|
env: map[string]string{"GOLDEN_UPDATE": "true"},
|
|
want: true,
|
|
},
|
|
{
|
|
name: "GOLDEN_UPDATE set to True",
|
|
env: map[string]string{"GOLDEN_UPDATE": "True"},
|
|
want: true,
|
|
},
|
|
{
|
|
name: "GOLDEN_UPDATE set to TruE",
|
|
env: map[string]string{"GOLDEN_UPDATE": "TruE"},
|
|
want: true,
|
|
},
|
|
{
|
|
name: "GOLDEN_UPDATE set to TRUE",
|
|
env: map[string]string{"GOLDEN_UPDATE": "TRUE"},
|
|
want: true,
|
|
},
|
|
{
|
|
name: "GOLDEN_UPDATE set to false",
|
|
env: map[string]string{"GOLDEN_UPDATE": "false"},
|
|
want: false,
|
|
},
|
|
{
|
|
name: "GOLDEN_UPDATE set to False",
|
|
env: map[string]string{"GOLDEN_UPDATE": "False"},
|
|
want: false,
|
|
},
|
|
{
|
|
name: "GOLDEN_UPDATE set to FaLsE",
|
|
env: map[string]string{"GOLDEN_UPDATE": "FaLsE"},
|
|
want: false,
|
|
},
|
|
{
|
|
name: "GOLDEN_UPDATE set to FALSE",
|
|
env: map[string]string{"GOLDEN_UPDATE": "FALSE"},
|
|
want: false,
|
|
},
|
|
{
|
|
name: "GOLDEN_UPDATE set to foobarnopebbq",
|
|
env: map[string]string{"GOLDEN_UPDATE": "foobarnopebbq"},
|
|
want: false,
|
|
},
|
|
{
|
|
name: "GOLDEN_UPDATE set to FOOBARNOPEBBQ",
|
|
env: map[string]string{"GOLDEN_UPDATE": "FOOBARNOPEBBQ"},
|
|
want: false,
|
|
},
|
|
}
|
|
|
|
func TestEnvUpdateFunc(t *testing.T) {
|
|
for _, tt := range envUpdateFuncTestCases {
|
|
t.Run(tt.name, func(t *testing.T) {
|
|
envctl.WithClean(tt.env, func() {
|
|
got := EnvUpdateFunc()
|
|
|
|
assert.Equal(t, tt.want, got)
|
|
})
|
|
})
|
|
}
|
|
}
|