Add unit tests for state persist interval env var

sebasslash/tf-15302_modifiable-snapshot-interval
Sebastian Rivera 2 years ago
parent a72d02135b
commit 52c7dfceb4

@ -219,6 +219,60 @@ func TestMeta_Env(t *testing.T) {
}
}
func TestMeta_StatePersistInterval(t *testing.T) {
m := new(Meta)
t.Run("when the env var is not defined", func(t *testing.T) {
interval := m.StatePersistInterval()
if interval != DefaultStatePersistInterval {
t.Fatalf("expected state persist interval to be %d, got: %d", DefaultStatePersistInterval, interval)
}
})
t.Run("with valid interval greater than the default", func(t *testing.T) {
os.Setenv(StatePersistIntervalEnvVar, "25")
t.Cleanup(func() {
os.Unsetenv(StatePersistIntervalEnvVar)
})
interval := m.StatePersistInterval()
if interval != 25 {
t.Fatalf("expected state persist interval to be 25, got: %d", interval)
}
})
t.Run("with a valid interval less than the default", func(t *testing.T) {
os.Setenv(StatePersistIntervalEnvVar, "10")
t.Cleanup(func() {
os.Unsetenv(StatePersistIntervalEnvVar)
})
interval := m.StatePersistInterval()
if interval != DefaultStatePersistInterval {
t.Fatalf("expected state persist interval to be %d, got: %d", DefaultStatePersistInterval, interval)
}
})
t.Run("with invalid integer interval", func(t *testing.T) {
os.Setenv(StatePersistIntervalEnvVar, "foo")
t.Cleanup(func() {
os.Unsetenv(StatePersistIntervalEnvVar)
})
interval := m.StatePersistInterval()
if interval != DefaultStatePersistInterval {
t.Fatalf("expected state persist interval to be %d, got: %d", DefaultStatePersistInterval, interval)
}
})
t.Run("with negative integer interval", func(t *testing.T) {
os.Setenv(StatePersistIntervalEnvVar, "-10")
t.Cleanup(func() {
os.Unsetenv(StatePersistIntervalEnvVar)
})
interval := m.StatePersistInterval()
if interval != DefaultStatePersistInterval {
t.Fatalf("expected state persist interval to be %d, got: %d", DefaultStatePersistInterval, interval)
}
})
}
func TestMeta_Workspace_override(t *testing.T) {
defer func(value string) {
os.Setenv(WorkspaceNameEnvVar, value)

Loading…
Cancel
Save