Skip to content

Commit 4549fc7

Browse files
committed
fix: sync temp files in config tests before reading
1 parent 36408f3 commit 4549fc7

1 file changed

Lines changed: 17 additions & 11 deletions

File tree

internal/config/config_test.go

Lines changed: 17 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -30,14 +30,18 @@ func TestConfig_Load(t *testing.T) {
3030
cfg := New()
3131
tmpFile, err := os.CreateTemp(os.TempDir(), "")
3232
require.NoError(t, err)
33+
tmpFileName := tmpFile.Name()
3334
t.Cleanup(func() {
34-
assert.NoError(t, tmpFile.Close())
35-
assert.NoError(t, os.Remove(tmpFile.Name()))
35+
os.Remove(tmpFileName)
3636
})
3737
_, err = tmpFile.WriteString("username: sdkfo\npassword: foo")
3838
require.NoError(t, err)
39+
err = tmpFile.Sync()
40+
require.NoError(t, err)
41+
err = tmpFile.Close()
42+
require.NoError(t, err)
3943

40-
cfg.GlobalFlags.ConfigFile = tmpFile.Name()
44+
cfg.GlobalFlags.ConfigFile = tmpFileName
4145
err = cfg.Load()
4246
assert.NoError(t, err)
4347
assert.NotEmpty(t, cfg.GetString("username"))
@@ -78,23 +82,25 @@ func TestConfig_LoadKeyring(t *testing.T) {
7882
cfg := New()
7983
tmpFile, err := os.CreateTemp(os.TempDir(), "")
8084
require.NoError(t, err)
85+
tmpFileName := tmpFile.Name()
8186
t.Cleanup(func() {
82-
assert.NoError(t, tmpFile.Close())
83-
assert.NoError(t, os.Remove(tmpFile.Name()))
87+
os.Remove(tmpFileName)
88+
// remove test user from keyring
89+
keyring.Delete("UpCloud", "unittest")
8490
})
8591
_, err = tmpFile.WriteString("username: unittest")
8692
require.NoError(t, err)
93+
err = tmpFile.Sync()
94+
require.NoError(t, err)
95+
err = tmpFile.Close()
96+
require.NoError(t, err)
8797

8898
err = keyring.Set("UpCloud", "unittest", "unittest_password")
8999
assert.NoError(t, err)
90100

91-
cfg.GlobalFlags.ConfigFile = tmpFile.Name()
101+
cfg.GlobalFlags.ConfigFile = tmpFileName
92102
err = cfg.Load()
93103
require.NoError(t, err)
94-
assert.Equal(t, cfg.GetString("username"), "unittest")
104+
assert.Equal(t, "unittest", cfg.GetString("username"))
95105
assert.Equal(t, "unittest_password", cfg.GetString("password"))
96-
t.Cleanup(func() {
97-
// remove test user from keyring
98-
assert.NoError(t, keyring.Delete("UpCloud", "unittest"))
99-
})
100106
}

0 commit comments

Comments
 (0)