@typescript_ru

Страница 173 из 669
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
tap/tape и нет проблем
Это что такое?

Wiggly
12.02.2017
17:57:33
Еще же синон какой-нибудь надо ставить?
Я бы подключил enzyme. Но тут придется поковыряться для TS =(

Dreamerinnoise
12.02.2017
17:58:14
Я бы подключил enzyme. Но тут придется поковыряться для TS =(
я подключал, особо ковыряться не пришлось

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
Это что такое?
https://www.npmjs.com/package/tap

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
https://www.npmjs.com/package/tap
Спасибо! Будет время, поизучаю

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
reporters: ['mocha', 'karma-remap-istanbul'],
У нас нет в проекте карма ремап истанбула. Тоже хотел так сделать. Но надо будет попробовать протащить

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

Dreamerinnoise
12.02.2017
18:28:27
tsconfig.json: { "target": "es6", "module": "commonjs", "moduleResolution": "node" }
и потом бабелем ещё прогоняешь?

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
Есть jest, и все что надо в нем
А я думал, что берешь все самые простые инструменты, юзаешь и если нужно то подключаешь еще что нибудь)

по обстоятельствам.

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
Vadim @yogurt1 а jest можно заставить работать с module: "es2015"?
Либо отдельный tsconfig, либо прописать правила явно как ты сделал

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 пока не тестировал. Так что тоже изучить тему надо

До сих пор лично не знаю людей, которые пишут тесты постоянно во время написания самого кода )

Все покрывают более-менее работающий код )

Artur
13.02.2017
12:50:07
До сих пор лично не знаю людей, которые пишут тесты постоянно во время написания самого кода )
Когда пилишь апи, то стоит только один раз попробовать TDD, затем не отвяжешься ))

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

Страница 173 из 669