Anonymous
а, это ж прямо сейчас
Nikita
а, это ж прямо сейчас
Есть прошлогодняя версия слайдов только: https://speakerdeck.com/rdegges/jwts-suck-and-are-stupid
Belmo NaTazu
Добрый вечер
Belmo NaTazu
Кто подскажет чат с верстальщиками?
Pauline
@css_ru
Belmo NaTazu
Спасибо большое
Tony
всем привет, кто может помочь с js проектом ? помогу криптой
Alexander
чо делать-то?
Tony
есть на visio js плагин один который надо допилить под мою нужду, чтобы не спамить в личку
Max
кто пишет тесты к микросервисам ?
Max
допустим мне нужно протестировать два микросервиса. Первый спрашивает что-то у второго. Вы бы заводили отдельный нпм пакет с тестами, который их запускает?
Max
или в таком случае, это "папочка" с интеграционными тестами внутри первого пакета
Max
если нужно проверить io микросервиса - куда бы вы разместили сами тесты
Дима
если нужно проверить io микросервиса - куда бы вы разместили сами тесты
Тесты — определенно рядом с самими модулями сервисов, в ./TESTS/*.test.js
Дима
Это для юнит-тестов Более глобальные тесты можно выносить отдельно, если требуется
Max
смотри, сервис Б запрашивает А, Если я хочу протестировать что сервис Б правильно запросил А и записал что-то в лог. Такой тест в отдельном пакете ?
Max
который честно запускает их как node.js процессы
Max
тогда сложность - придётся придумать коммуникацию между модулем Б, что бы заставить его сделать запрос по внешим причинам и модулем интеграционного тестирования
Max
в обратном случает, если тесты Б разместить в Б/тесты/ - мне нужны тайпинги и параметра инициализации сервиса А - что повлечёт зависимость сервиса Б на уровне нпм пакетов от сервиса А
Max
либо выность кучу кишков из сервиса А и Б в отдельные пакеты для шаринга с пакетом тестов
Max
ну не кучу, ладно - пару файлов
Max
просто - так мозг запутается, чё-где
Дима
Интересный вопрос
Max
вот уже, что бы проверить гет/пост запросы к веб-серверу, мне приходится выность логику формирования запросов из фронтенда в отдельный пакет - для шаринга между пакетами "веб-сервер/тест" и "фронтенд"
Дима
В принципе интеграция микросервисов вместе — это тоже микросервис, в предельном случае один общий условный our_platform в качестве ещё одного пакета и тестирование интеграции можно класть там же
Max
хм.. тогда надо всё io выносить в пакеты
Max
вебсокеты так же
Дима
А требуется? 🤔
Max
ну в общем условном пакете с тестами надо знать про то как инициализировать и запрашивать запускаемые пакеты
Max
в одном сервисе поле userId, а в другом user_id - и приехали
Max
в принципе у меня формуриется пакет @local/isomorphic - может быть имеет смысл продолжить и тянуть его во все микросервисы, например на бэке в месте с фронтовым io
Max
или в микросервисе связанным с ОРМ, тянуть всякую чушь про io сервиса для хранения файлов
Дима
devDeps
Дима
При деплое не тянуть
Max
не получится
Max
ОРМ микросервис же должен подтянуть из расшаренного пакета io своё io
Дима
Ну пусть тянет
Max
тогда на фронте у человека может оказаться код, с ио между микросервисами )
Max
ну в принципе пофиг, если пролезет. там чёрт ногу сломит после аглифая
Max
блин, джест не понимает, изменения в соседних пакетах
Max
ватч не хавает
Max
очень печально в шторме и вс коде с рефакторингом между пакетами
Max
вот поэтому и не особо тянул всё в общий пакет
dexofan
Господа, как можно функцию упростить? function isInPlaylist(id, tracksList) { for (let item of tracksList) { return id === item.track_id; } } Где trackList объект такого формата { title: "yasff" author: "tesdatat" track_id: 14881 } А id на входе 841320 для примера
dexofan
инспекция ругается, что цикл не циклит
🖤
Вызови треклист[айди]
Alexander
народ, если по крону одновременно дёргать один и тот же скрипт на ноде, но с разными параметрами, потоки будут блокироваться?
🖤
Вернёт либо значение либо не вернёт. И обработай
dexofan
Неа
dexofan
Так не пойдет
dexofan
Ид это не номер объекта же
dexofan
А значение в объекте
🖤
А, хорошо
🖤
Фильтр
🖤
Tracklist.filter((obj)=>obj.id! = id)
🖤
Если не косячу с областью видимости
dexofan
Массив объектов
Sergey
Тогда .find()
dexofan
Вот таких объектов { title: "yasff" author: "tesdatat" track_id: 14881 }
🖤
Не, чет не то
Я знак перепутал, но можно и самому через console.log проверить :)
dexofan
хм
dexofan
Хм
Таймураз
Хм
Уже понял, что делать?
dexofan
Не, голова уже не варит. Сейчас подробнее опишу, что мне нужно. Есть два массива с треками. К одному из них я применяю map и возвращаю только элементы которых нет в другом списке.
dexofan
tracks.map(item => { if (!isInPlaylist(item.track_id, searched.hits)) { return item });
Таймураз
(tracks, trackID) => tracks.some(track => track.track_id === trackID) Вернёт true, если есть нужный трек в списке
dexofan
Допер, спасибо
Anonymous
гайз, я новичок в ноде и экспрессе вот хочу в Postman сделать такой запрос - http://localhost:3001/artists/Depeche Mode а как мне в данном случае правильно написать динамическую часть url? если она составная, как здесь?