Comments 10
У меня насчёт AVA вопрос:
Предположим, что у меня есть такой код:
import React from 'react';
import styles from './ExampleComponent.css';
import DemoIMG from '../assets/logo.png';
import DemoSVG from '../assets/dummy.svg';
export class ExampleComponent extends React.Component {
render () {
return (
<div className = {styles['root']}>
<img src = {process.env.CDN_ROOT_URL + '/image.jpg'}
<img src = {DemoIMG}/>
<DemoSVG width = {300} height = {300} className = {styles['normal']} />
</div>
);
}
}
Этот код работает только благодаря loader-ам Webpack-а. Чем AVA лучше Mocha, если без компиляции кода теста, тест всё равно не завести?
+1
AVA внутри использует Babel. Просто дбавьте в конфиг плагины/пресеты, которые вам нужны.
В данном случае вам нужен пресет react.
В данном случае вам нужен пресет react.
0
Не-не-не. Babel тут не причем. Babel не умеет CSS-Modules, SVG и прочие клевые штуки. Это задача webpack-loaders и webpack-plugins.
+1
Если перед тестами каждый раз собирать проект с webpack, то достаточно много времени уходит на запуск тестов, в нашем проекте мы используем такие хаки
в таком случае mocha/wallaby.js могут собирать проект и не ругаться на файлы ассетов
styleHook({
extensions: [ '.css', '.scss' ],
preprocessCss: data => sass.renderSync({ data, includePaths: ['./src/theme/'] }).css
});
require.extensions['.png'] = () => ({});
require.extensions['.svg'] = () => ({});
в таком случае mocha/wallaby.js могут собирать проект и не ругаться на файлы ассетов
+1
if (typeof number !== 'number') throw new TypeError('Only numbers can be multiplied!')
Вместо того, чтобы обмазывать такими проверками весь код, а потом еще писать тесты на эти проверки, лучше сразу использовать Typescript.
+2
Пробовали husky для Git-хуков?
0
standard?
Спасибо, нет. В нем противно решительно всё, начиная от двух пробелов для интендации и запрета на точку с запятой (Крокфорд, где ты, когда ты так нужен?) и заканчивая довольно-таки наглым самоименованием. Стандарт? Ха, нет.
Спасибо, нет. В нем противно решительно всё, начиная от двух пробелов для интендации и запрета на точку с запятой (Крокфорд, где ты, когда ты так нужен?) и заканчивая довольно-таки наглым самоименованием. Стандарт? Ха, нет.
+2
Ну вот я не могу въехать во все это сразу, т.к. работаю на C# и считаю, что нужно расширять стек используемых технологий. Но на строке с командой npm напрочь перестаю понимать, что происходит.
Думаю, всем присутствующим это не составляет проблем, и понимаю почему. А с другой стороны — поставьте себя на мое место.
Прикладная разработка внутри компании, TFS, C#, WCF, WPF и несколько разработчиков.
Ну телепатом надо стать, чтобы понять, куда копать.
Может Вы вкратце укажете, куда смотреть, чтобы понять смысл команд и используемых инструментов? Буду очень признателен.
И не я один такой.
Гуглил уже до потери сознания, но все воедино не могу сложить никак…
Думаю, всем присутствующим это не составляет проблем, и понимаю почему. А с другой стороны — поставьте себя на мое место.
Прикладная разработка внутри компании, TFS, C#, WCF, WPF и несколько разработчиков.
Ну телепатом надо стать, чтобы понять, куда копать.
Может Вы вкратце укажете, куда смотреть, чтобы понять смысл команд и используемых инструментов? Буду очень признателен.
И не я один такой.
Гуглил уже до потери сознания, но все воедино не могу сложить никак…
0
Смотреть на npmjs.org. Там всё очень просто: какой пакет запускаете, такие задачи выполняются. Конкретно — те JS-скрипты, которые будут установлены по npm install… в папке /node_modules. Можно просто поверить описанию, а можно протрассировать, расставив в скриптах debugger; или console.log и увидеть, как исполняется.
0
Sign up to leave a comment.
Минимальное окружение для JS-разработки: ava, standard, chokidar-cli и precommit-hook