tinygo test: simplify output buffering
Этот коммит содержится в:
родитель
f1b15db258
коммит
f9f2349850
1 изменённых файлов: 12 добавлений и 16 удалений
20
main.go
20
main.go
|
@ -1641,15 +1641,13 @@ func (out *testStdout) Write(data []byte) (int, error) {
|
||||||
defer buf.mu.Unlock()
|
defer buf.mu.Unlock()
|
||||||
|
|
||||||
// Append the output.
|
// Append the output.
|
||||||
var prev []byte
|
if len(buf.output) == 0 || buf.output[len(buf.output)-1].stderr {
|
||||||
if len(buf.output) > 0 && !buf.output[len(buf.output)-1].stderr {
|
|
||||||
prev = buf.output[len(buf.output)-1].data
|
|
||||||
buf.output = buf.output[:len(buf.output)-1]
|
|
||||||
}
|
|
||||||
buf.output = append(buf.output, outputEntry{
|
buf.output = append(buf.output, outputEntry{
|
||||||
stderr: false,
|
stderr: false,
|
||||||
data: append(prev, data...),
|
|
||||||
})
|
})
|
||||||
|
}
|
||||||
|
last := &buf.output[len(buf.output)-1]
|
||||||
|
last.data = append(last.data, data...)
|
||||||
|
|
||||||
return len(data), nil
|
return len(data), nil
|
||||||
}
|
}
|
||||||
|
@ -1674,15 +1672,13 @@ func (out *testStderr) Write(data []byte) (int, error) {
|
||||||
defer buf.mu.Unlock()
|
defer buf.mu.Unlock()
|
||||||
|
|
||||||
// Append the output.
|
// Append the output.
|
||||||
var prev []byte
|
if len(buf.output) == 0 || !buf.output[len(buf.output)-1].stderr {
|
||||||
if len(buf.output) > 0 && buf.output[len(buf.output)-1].stderr {
|
|
||||||
prev = buf.output[len(buf.output)-1].data
|
|
||||||
buf.output = buf.output[:len(buf.output)-1]
|
|
||||||
}
|
|
||||||
buf.output = append(buf.output, outputEntry{
|
buf.output = append(buf.output, outputEntry{
|
||||||
stderr: true,
|
stderr: true,
|
||||||
data: append(prev, data...),
|
|
||||||
})
|
})
|
||||||
|
}
|
||||||
|
last := &buf.output[len(buf.output)-1]
|
||||||
|
last.data = append(last.data, data...)
|
||||||
|
|
||||||
return len(data), nil
|
return len(data), nil
|
||||||
}
|
}
|
||||||
|
|
Загрузка…
Создание таблицы
Сослаться в новой задаче