Python: электронная почта get_payload декодирует сбои при ударе знака "равно"?

npm test - это просто удобный метод для выполнения набора тестов пакета npm, не беспокоясь о деталях того, как должен запускаться набор. Если вы запустите его в проекте, в котором нет записи scripts для test, вы получите Error: no test specified. Если вы настроите package.json с помощью этого:

{
  "scripts": {
    "test": "echo This is a test!"
   }
}

Тогда npm test будет отображаться на консоли This is a test!. В реальном проекте вы устанавливаете скрипт, который запускает инструмент тестирования real . Например, mocha - это тестовый прогон, поэтому после его установки вы можете иметь:

  "scripts": {
    "test": "mocha"
   }

Или у вас может быть Карма, или Jest, или тап, или что-у-вас. [ 1120]

Вы написали в уведомлении о вознаграждении:

Некоторые веб-сайты предлагают онлайн-тестирование кода JavaScript, действительно ли они выписывают временные файлы с пользовательским кодом для тестирования на модульные тесты с помощью теста npm?

Веб-сайты, предлагающие онлайн-тестирование, предлагают очень разные услуги. Так, в зависимости от того, на какую службу онлайн-тестирования вы ссылаетесь, иногда ответ да, иногда нет.

  • Travis-ci предлагает сервис, который запускает весь ваш тест на их сервере. Для этого он проверяет тестируемую ветку из репозитория git, так что да, они получают копию пользовательского кода. Обратите внимание, что это совершенно не зависит от того, какой тестовый прогон вы настроили для запуска npm test: запускаете ли вы Mocha, Karma или что-то другое, Трэвис проверяет тестируемую ветвь и затем запускает npm test.

    [ 1116]
  • SauceLabs и BrowserStack, с другой стороны, сами не запускают пакет, а предоставляют виртуальные машины, которые запускают браузеры для тестирования. Ваш набор тестов все еще работает на вашей машине. Таким образом, они не получают копию тестируемого кода. Опять же, какой бегун вы используете, не имеет значения. Я использую эти сервисы с мокко, кармой, поведением и т. Д.

Сосредоточение внимания на вашем заголовке:

Как передать код и юнит-тест в тест npm?

Нет настройки тестирования I знать о трубах тестируемом коде. Наиболее распространенный метод предоставления тестируемого кода и самих тестов - это извлечение кода из репозитория , как это делает Travis. (Обратите внимание, что для этого не требуется делать ваш код общедоступным. Службы тестирования могут работать с частными репозиториями.)

7
задан Parand 24 April 2009 в 22:14
поделиться

1 ответ

У вас проблема с окончанием строки. В тексте вашего тестового сообщения используются возвраты каретки (\ r) без перевода строки (\ n). Если вы исправите окончания строк перед синтаксическим анализом электронной почты, все это будет работать:

import email, re
data = file('testmessage.txt').read()
data = re.sub(r'\r(?!\n)', '\r\n', data)  # Bare \r becomes \r\n
msg  = email.message_from_string( data )
payload = msg.get_payload(decode=True)
print payload
6
ответ дан 7 December 2019 в 10:07
поделиться
Другие вопросы по тегам:

Похожие вопросы: