Skip to content

Commit 43436dd

Browse files
committed
update tests
1 parent f155563 commit 43436dd

File tree

1 file changed

+24
-51
lines changed

1 file changed

+24
-51
lines changed

extensions/cache/accessor/storage_test.go

Lines changed: 24 additions & 51 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,6 @@ import (
1212
"os"
1313
"path/filepath"
1414
"runtime"
15-
"sync"
1615
"testing"
1716

1817
"github.com/stretchr/testify/require"
@@ -24,61 +23,35 @@ var (
2423
ctx = context.Background()
2524

2625
// the Windows implementation doesn't require user interaction
27-
runTests = runtime.GOOS == "windows" || os.Getenv(msalextManualTest) != ""
26+
manualTests = runtime.GOOS == "windows" || os.Getenv(msalextManualTest) != ""
2827
)
2928

30-
func TestRace(t *testing.T) {
31-
if !runTests {
29+
func TestReadWrite(t *testing.T) {
30+
if !manualTests {
3231
t.Skipf("set %s to run this test", msalextManualTest)
3332
}
34-
p := filepath.Join(t.TempDir(), t.Name())
35-
a, err := New(p)
36-
require.NoError(t, err)
37-
38-
actual, err := a.Read(ctx)
39-
require.NoError(t, err)
40-
require.Empty(t, actual)
41-
42-
expected := "expected"
43-
wg := sync.WaitGroup{}
44-
for i := 0; i < 20; i++ {
45-
wg.Add(1)
46-
go func() {
47-
defer wg.Done()
48-
if !t.Failed() {
49-
actual := []byte{}
50-
err := a.Write(ctx, []byte(expected))
51-
if err == nil {
52-
actual, err = a.Read(ctx)
53-
}
54-
if err != nil {
55-
t.Error(err)
56-
} else if a := string(actual); a != expected {
57-
t.Errorf("expected %q, got %q", expected, a)
58-
}
33+
for _, test := range []struct {
34+
desc string
35+
want []byte
36+
}{
37+
{desc: "Test when no stored data exists"},
38+
{desc: "Test writing data then reading it", want: []byte("want")},
39+
} {
40+
t.Run(test.desc, func(t *testing.T) {
41+
p := filepath.Join(t.TempDir(), t.Name())
42+
a, err := New(p)
43+
require.NoError(t, err)
44+
45+
if test.want != nil {
46+
cp := make([]byte, len(test.want))
47+
copy(cp, test.want)
48+
err = a.Write(ctx, cp)
49+
require.NoError(t, err)
5950
}
60-
}()
61-
}
62-
wg.Wait()
63-
}
6451

65-
func TestRoundTrip(t *testing.T) {
66-
if !runTests {
67-
t.Skipf("set %s to run this test", msalextManualTest)
52+
actual, err := a.Read(ctx)
53+
require.NoError(t, err)
54+
require.Equal(t, test.want, actual)
55+
})
6856
}
69-
p := filepath.Join(t.TempDir(), t.Name())
70-
a, err := New(p)
71-
require.NoError(t, err)
72-
73-
actual, err := a.Read(ctx)
74-
require.NoError(t, err)
75-
require.Empty(t, actual)
76-
77-
expected := []byte("expected")
78-
err = a.Write(ctx, expected)
79-
require.NoError(t, err)
80-
81-
actual, err = a.Read(ctx)
82-
require.NoError(t, err)
83-
require.Equal(t, expected, actual)
8457
}

0 commit comments

Comments
 (0)