
Vadim
12.02.2017
17:54:55
@wiggly Хотел не ставить всяких тулзов для моков и кэваридж

Wiggly
12.02.2017
17:54:56
Джасмин + тс + карма + вебпак
Этот минимум всё равно будет.

Vadim
12.02.2017
17:55:25
Еще же синон какой-нибудь надо ставить?
И истанбул еще?

Google

andretshurotshka?❄️кде
12.02.2017
17:56:09
tap/tape и нет проблем

Vadim
12.02.2017
17:56:28

Wiggly
12.02.2017
17:57:33

Dreamerinnoise
12.02.2017
17:58:14

Vadim
12.02.2017
17:58:22
Энзим и для Джеста есть
Но похоже сам джест хрен подключишь )
Под ts

Dreamerinnoise
12.02.2017
17:58:56
Под ts
https://github.com/kulshekhar/ts-jest
?

andretshurotshka?❄️кде
12.02.2017
17:59:50

Vadim
12.02.2017
17:59:55
@dreamerinnoise , так у меня же он прописан, как я сказал выше:
"transform": {
".(ts|tsx)": "<rootDir>/node_modules/ts-jest/preprocessor.js"
},
@dreamerinnoise проблема в том, что он не подхватывает обработку "import"
Не хотелось бы во всем проекте import переписывать на require )

Google

Vadim
12.02.2017
18:01:27

Wiggly
12.02.2017
18:02:06

Dreamerinnoise
12.02.2017
18:02:57
это примерно всё что надо было сделать
чтобы coverage был нормальный

Vadim
12.02.2017
18:05:42
Ну в общем, я так понял, что jest пока слишком экзотичный тул ) Действительно, у меня пока нет никого в кругу общения, кто бы его юзал
Я просто почитал что он содержит в себе все что надо, и минимум придется ставить и настраивать. Вот и заинтересовался. А по факту весь вечер бьюсь )
С ts подружить не получается )
Так... пока стало ясно что тестовый скрипт надо запускать с --no-cache
Просто обновленные параметры не подхватывались

Paruyr
12.02.2017
18:27:13
У меня все работает с Jest. jest.config.json: { "transform": { "^.+\\.(ts|tsx)$": "<rootDir>/node_modules/ts-jest/preprocessor.js" } }

Wiggly
12.02.2017
18:27:51

Paruyr
12.02.2017
18:27:58
tsconfig.json: { "target": "es6", "module": "commonjs", "moduleResolution": "node" }

Dreamerinnoise
12.02.2017
18:28:27

Vadim
12.02.2017
18:28:47

Paruyr
12.02.2017
18:28:50
Webpack2 сам импорты парсит. Но да, для старых браузеров прогоняю
Пожалуйста )
А, ой. Это для Node.js конфиг
Тут бабелем нет смысла прогонять, все ES6+ фишки TypeScript транспилит в ES6, а нода 6 умеет ES6 почти полностью, кроме импортов. Которые тоже транспилит TypeScript )

Dreamerinnoise
12.02.2017
18:30:42
аа, там же суть jest в том, что она не в браузере тесты прогоняет.

Google

Paruyr
12.02.2017
18:30:59
У меня два конфига Jest. Один гоняет с JSDOM, другой без

Vadim
12.02.2017
18:47:30
И никакой ts-jest не нужен, если используется вебпак! )
Короче, все пока работает, и я рад! )
Как в jest проверить что массив ВКЛЮЧАЕТ в себя определенный набор элементов?
Не состоит из них, а просто то, что они присутствуют в массиве?

Gordey
12.02.2017
22:31:27
Ну а причем тут jest, это просто алгоритмика

Vadim
12.02.2017
22:32:05
Я просто оказался избалован mocha )
Вернее chai

Gordey
12.02.2017
22:34:05
Пройди по одному массиву, проверяй есть ли это число в другом и выкидывай из него, если в итоге он пустой - то они все там
Тут не нужен какой то мудрый метод отдельной библиотеки

Vadim
12.02.2017
22:34:39
Уже прописал метод из ramda для этого )
Я просто думал что есть что-то из коробки. Ужасно непривычно после chai

Vadim
12.02.2017
22:35:22
Много чего нет
Из ассершнов

Wiggly
13.02.2017
07:33:29

Vadim
13.02.2017
09:53:30
Всяких истанбулов и синонов

Dreamerinnoise
13.02.2017
09:54:14

Wiggly
13.02.2017
09:54:22
ну истанбул всё равно в итоге юзается =)
Ага

Google

Wiggly
13.02.2017
09:54:34
на нем всё и завазано считай

Vadim
13.02.2017
09:54:50
Не важно что под капотом )

Wiggly
13.02.2017
09:54:58
Шило на мыло получается. А так пока ты разбираешься и переписываешь на джест куча времени уйдет +)

Vadim
13.02.2017
09:54:59
Меньше париться просто
С установками и настройками
Есть jest, и все что надо в нем

Wiggly
13.02.2017
09:55:33
Но если всё настроишь, то обязательно заделись линком на проект.

Dreamerinnoise
13.02.2017
09:55:38
+
:3

Admin
ERROR: S client not available

Vadim
13.02.2017
09:55:42
ок

Aleh
13.02.2017
09:56:44
Есть jest, и все что надо в нем
До тех пор, пока это удаётся настроить под твои нужды - супер, просто часто знания всего процесса в отдельности и позволяют настроить как нужно)

Wiggly
13.02.2017
09:58:30
по обстоятельствам.

Dreamerinnoise
13.02.2017
10:00:34
https://facebook.github.io/jest/docs/getting-started.html#using-typescript
Тут говорится, что всё просто
Vadim @yogurt1 а jest можно заставить работать с module: "es2015"?
хотя походу вряд ли.
Получается два tsconfig'а надо что ли
или как-то compilerOptions передавать
Нашёл,
{
"jest": {
"globals": {
"__TS_CONFIG__": {
"module": "commonjs",
"jsx": "react"
}
}
}
}

Google

Vadim
13.02.2017
11:45:18
Я был неправ когда говорил что ts-jest не нужен

Dreamerinnoise
13.02.2017
11:45:30
он обязателен :D
Если не хочется свои приседания делать
у меня запустилось в общем
и coverage выплёвывает в html

Vadim
13.02.2017
11:46:13

Dreamerinnoise
13.02.2017
11:46:19
и да, тоже с кэшем столкнулся))

Vadim
13.02.2017
11:46:22
ЛИбо может еще через бабель прогонять

Сергей
13.02.2017
11:46:32
воувоу

Vadim
13.02.2017
11:46:32
Для конвертации из импортов
Если нравятся извраты ))

Dreamerinnoise
13.02.2017
11:47:24
Жаль с ws нету интеграции

Vadim
13.02.2017
11:48:37
Зато есть еще и внедренная тестилка снапшотов. Для тестирования стилей
Пока не использовал, но планирую

Dreamerinnoise
13.02.2017
11:48:56
Расскажешь потом?

Vadim
13.02.2017
11:50:17
Ага. Но до этого не так быстро дойду. Слишком дофига еще всего покрыть тестами надо. Весь реакт (через enzyme). Потом еще все мидлваре, которые на rxjs. Я rxjs пока не тестировал. Так что тоже изучить тему надо
До сих пор лично не знаю людей, которые пишут тесты постоянно во время написания самого кода )
Все покрывают более-менее работающий код )

Dreamerinnoise
13.02.2017
11:53:21

Artur
13.02.2017
12:50:07

Aleh
13.02.2017
12:52:36

Vadim
13.02.2017
12:53:27
Ну типа TDD. Или хотя бы с маленькими итерациями код-тесты-код