Подскажите что почитать/посмотреть чтобы начать писать тесты на блоки. В первую очередь интересует browser.js
Можешь посмотреть на пакет enb-bem-specs для сборки и запуска тестов на клиенский js.
Примеры, можно смотреть в bem-components, в файлах block.spec.js.
Спасибо за ответ. Попробовал, добавил конфиг, теперь проект не собирается.
Я сначала подумал, что я конфиг неправильно написал. Потом проверил на
bem-grid
- enb make то же самое выдает....Можно как то добавить проекту тесты не ломая сборку по
enb make
?Можешь показать конфиг?
Для сборки тестов подключать модуль
enb-bem-examples
не нужно. Ошибка из-за того, что в конфиге есть подключение этого модуля, но в node_modules этого пакета нет.Конфиг. https://github.com/bem/bem-components/blob/v2/.enb/make.js Клонирую bem-components npm install enb make
Сделал всё тоже самое, всё работает :)
Может кэш
npm
сломался?npm cache clean
не помогло...
Пробовал на разных репозиториях с разных машин. Не собирается. ни bem-core, ни bem-components, ни другие пакеты с enb-bem-specs
Можешь написать версию
Node.js
иnpm
?ENB используешь локально?
С такой же ошибкой падает?
После
npm i
какие модули есть вnode_modules
?enb установлен глобально. локальный собирает успешно
Не надо так делать :) Лучше настрой переменную окружения
$PATH
.Теперь я даже знаю почему )) Спасибо за помощь!
А никто не собирается написать enb-cli по аналогии с bem-cli?
@apsavin а в нем правда есть смысл? ставить глобальный пакет, который умеет делать то, что делает
только для одного конкретного пакета, вместо универсального решения?
@tadatuta надо просто везде в документации писать про
$PATH
@tadatuta ну он слегка поумнее) Может и нет смысла, особенно если enb звать через какой-то таск раннер.
@tadatuta А еще export не работает нигде, кроме sh/zsh/bash/tsh (кажется, никого не забыл), и, естественно, под виндой тоже не работает без доп магии ;-)
@apsavin вообще, я думал, что @tadatuta скажет, что хочет из bem-tools мета пакет сделать, который будет и bem-cli включать, и enb запускать.
@zxqfox без вменяемой оболочки с большой долей вероятности и сам ENB работать не будет. А в bem-tools я даже веточку запилил с поддержкой ENB: https://github.com/bem/bem-tools/compare/support/0.10.x Осталось всего ничего: убедиться, что ничего ничего не ломаю, начать сыпать варнинги при использовании bem make, обновить доки и можно выпускать.
@tadatuta :+1:
p.s. вспоминается баян про php7, который после php5, потому что php6 не вышло ;-(
Подобная ошибка с enb-bem-docs enb установлен локально
А если c npm -v 3.x переустановив модули ( rm -rf node_modules && npm i) тоже самое?
On 20 February 2017 at 15:22, Vladimir Trebushuk notifications@github.com wrote:
Есть подозрение, что проблема где-то в конфиге
.enb/make.js
// cc @blond
@Yeti-or Несколько раз безуспешно обновлял npm пока не догодался проверить
where npm
Оказалось было две версии и вызывалась всегда меньшаяПереустановил пакеты с новой версией
rm -rf node_modules && npm i
И ничего ошибка тажеError: Module "enb-bem-docs" is not registered.
@tadatuta Конфиг взят изproject-stub
за исключением строк:Examples взят из примера в документации, Docs из
enb-bem-docs/examples/examples/.enb/make.js
А вот весь commit из форка project-stub с этими правками.@trebushuk все хорошо, просто потерялась строка
config.includeConfig('enb-bem-docs');
Важный момент, который стоит учитывать: в качестве уровней указан
blocks
. Если это действительно то, что ожидается, то необходимо эту папку заранее создать. Либо указать реальные уровни проекта.Ну и запускать сборки нужно так:
magic make set.docs
. Еще может быть удобно запуститьmagic server
и смотреть результаты в браузере поhttp://localhost:8080/set.docs
.