Дескриптор плохого файла при открытии stdin (os.newfile (0)) в тестахLinux

Ответить Пред. темаСлед. тема
Anonymous
 Дескриптор плохого файла при открытии stdin (os.newfile (0)) в тестах

Сообщение Anonymous »

В коде ниже я постоянно сталкиваюсь с ошибками: < /p> Ошибка обычно возвращается, а затем вызывает io.copy ().
Однако, если я прокомментирую две строки, которые открывают файл descriptor 0 (stdin), ошибка исчезает.

Код: Выделить всё

const (
_numLevels        = 5
_countersPerLevel = 4096
)

type counter struct {
resetAt atomic.Int64
counter atomic.Uint64
}

type counters [_numLevels][_countersPerLevel]counter

func newCounters() *counters {
return &counters{}
}

func Test(t *testing.T) {
for n := range 50 {
t.Run(strconv.Itoa(n), func(t *testing.T) {
// If I comment out these two lines, the error disappears
outFile := os.NewFile(0, "some-file")
require.NotNil(t, outFile)

newCounters()

require.NoError(t, copyFiles(t))
})
}
}

func copyFiles(t *testing.T) error {
content, err := os.Open("video.webm")
require.NoError(t, err)
defer func() {
require.NoError(t, content.Close())
}()

out := os.TempDir() + "/test-file"
f, err := os.Create(out)
require.NoError(t, err)

defer func() {
require.NoError(t, f.Close())
}()

_, err = io.Copy(f, content)
require.NoError(t, err)

require.NoError(t, f.Sync())

return nil
}
Проблема
  • Когда os.newfile (0, "come-file") называется последующими операциями файлов (например, io.copy ) сбое с плохими декорациями .
  • , если я удаляю эти две линии, все работает. /> < /ul>
    Что я не понимаю < /h3>

    Почему открывается stdin () Влиять на неродственные операции с файлами позже? Linux


Подробнее здесь: https://stackoverflow.com/questions/796 ... 0-in-tests
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • Поставьте либо stdin, либо параметр «Путь файла» на Python нажмите скрипт CLI
    Anonymous » » в форуме Python
    0 Ответы
    13 Просмотры
    Последнее сообщение Anonymous
  • Поставьте либо stdin, либо параметр «Путь файла» на Python нажмите скрипт CLI
    Anonymous » » в форуме Python
    0 Ответы
    6 Просмотры
    Последнее сообщение Anonymous
  • Как исправить ошибку плохого дескриптора файла в laravel?
    Anonymous » » в форуме Php
    0 Ответы
    20 Просмотры
    Последнее сообщение Anonymous
  • Как исправить ошибку плохого дескриптора файла в laravel?
    Anonymous » » в форуме Php
    0 Ответы
    16 Просмотры
    Последнее сообщение Anonymous
  • Получение ошибки «Плохой дескриптор файла» при установке pip
    Anonymous » » в форуме Python
    0 Ответы
    24 Просмотры
    Последнее сообщение Anonymous

Вернуться в «Linux»