From 52c7dfceb4466dba89ef01205b880ab3994ff7d0 Mon Sep 17 00:00:00 2001 From: Sebastian Rivera Date: Fri, 17 May 2024 11:58:58 -0400 Subject: [PATCH] Add unit tests for state persist interval env var --- internal/command/meta_test.go | 54 +++++++++++++++++++++++++++++++++++ 1 file changed, 54 insertions(+) diff --git a/internal/command/meta_test.go b/internal/command/meta_test.go index b75b864164..4b448f77a7 100644 --- a/internal/command/meta_test.go +++ b/internal/command/meta_test.go @@ -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)