MCPcopy
hub / github.com/dgraph-io/dgraph / writeToLogWriterAndVerify

Function writeToLogWriterAndVerify

x/log_writer_test.go:119–158  ·  view source on GitHub ↗
(t *testing.T, lw *LogWriter, path string)

Source from the content-addressed store, hash-verified

117}
118
119func writeToLogWriterAndVerify(t *testing.T, lw *LogWriter, path string) {
120 msg := []byte("abcd")
121 msg = bytes.Repeat(msg, 256)
122 msg[1023] = '\n'
123 for range 10 {
124 go func() {
125 for range 1000 {
126 n, err := lw.Write(msg)
127 require.NoError(t, err)
128 require.Equal(t, n, len(msg), "write length is not equal")
129 }
130 }()
131 }
132 time.Sleep(time.Second * 10)
133 require.NoError(t, lw.Close())
134 files, err := os.ReadDir("./log_test")
135 require.NoError(t, err)
136
137 lineCount := 0
138 for _, f := range files {
139 file, _ := os.Open(filepath.Join(filepath.Dir(path), f.Name()))
140
141 var fileScanner *bufio.Scanner
142 if strings.HasSuffix(file.Name(), ".gz") {
143 gz, err := gzip.NewReader(file)
144 require.NoError(t, err)
145 all, err := io.ReadAll(gz)
146 require.NoError(t, err)
147 fileScanner = bufio.NewScanner(bytes.NewReader(all))
148 gz.Close()
149 } else {
150 fileScanner = bufio.NewScanner(file)
151 }
152 for fileScanner.Scan() {
153 lineCount = lineCount + 1
154 }
155 }
156
157 require.Equal(t, lineCount, 10000)
158}

Callers 2

TestLogWriterFunction · 0.85

Calls 4

WriteMethod · 0.65
CloseMethod · 0.65
OpenMethod · 0.65
NameMethod · 0.65

Tested by

no test coverage detected