ООнанизм
Познакомьтесь с объектно-ориентированным онанизмом:
chai.should();
foo.should.be.a('string');
foo.should.equal('bar');
foo.should.have.lengthOf(3);
tea.should.have.property('flavors').with.lengthOf(3);
Круто же? Просто.пишешь.слова.через.точку.и.все.понятно()
. Недолго новый язык
придумать:
Пусть.Сумма.Равно.Единичка().Прибавить.Двойка();
Сохранить.В.Базу.Пользователь().Созданный.Из.JSON.Строки.Введенной.Из.Консоли().
Обычного ассерта недостаточно. В библиотеке есть Should
, Expect
и
Assert
. Почему нет Мамой.Клянусь
, Бля.Буду
или Стопудов
? Чтобы уж точно
быть уверенным, что тест работает.
Конечно, этот бред зародился Джаваскрипте. Где же еще до такого додумаются? Но заразу начинают тащить в Руби и Питон. Языки группы риска.
Что возвращает метод should
? А что be
, a
? А если напишу
.be.be.be.a.a.a("wtf")
?
Ниче, что один хер предложение не будет в точности похожим на человеческий язык? Придется каждый раз бегать в документацию. Насколько упоротым нужно быть, чтобы поддерживать артикли?
У нас в проекте на Кложе 80 тестов и 800 ассертов, все работают
на одном макросе is. А
этим долбоебам нужен квази-язык чтобы.писать.в.объектном.стиле.потому.что.круто()
.
Шизофрения, как и было сказано.
Нашли ошибку? Выделите мышкой и нажмите Ctrl/⌘+Enter
tankist, 10th Apr 2017, link
Перед написанием поста неплохо было бы ознакомиться с концепцией BDD. https://en.wikipedia.org/wi...
> At the heart of BDD is a rethinking of the approach to the unit testing and acceptance testing that naturally arise with these issues. For example, BDD suggests that unit test names be whole sentences starting with a conditional verb ("should" in English for example) and should be written in order of business value. Acceptance tests should be written using the standard agile framework of a user story: "As a [role] I want [feature] so that [benefit]". Acceptance criteria should be written in terms of scenarios and implemented as classes: Given [initial context], when [event occurs], then [ensure some outcomes]
Даже страшно себе представить, что будет, если автор вдруг узнает про Gherkin
> Конечно, этот бред зародился Джаваскрипте. Где же еще до такого додумаются? Но заразу начинают тащить в Руби и Питон
А вот и нет.
https://en.wikipedia.org/wi...
В Руби уже 10 лет, с 2007-го.
Nick Lesnykh, 11th Apr 2017, link
>> с объектно-ориентированным онанизмом
>> один хер предложение не будет
>> А этим долбоебам
>> Бля.Буду
Огромное количество сочных эпитетов, а по существу в посте нет никаких аргументов, почему использование такого синтаксиса – плохо. Точно также можно доказывать, что в Python отступы – зло, а в C хедеры придумали просто так.
Ivan Grishaev, 11th Apr 2017, link , parent
Привет, Коля!
Да, писал в состоянии аффекта. Но у меня правило -- не исправлять.
Плохо тем, что долго и сложно. Сравни по краткости с assert или is.
Maxim Chernyatevich, 12th Apr 2017, link
Явно же нарушает правило Деметры. Видать создатели сего джс поделия о таком и не знали.
Maxim Chernyatevich, 12th Apr 2017, link , parent
Я так понял, ты агитируешь за Py.test?
Alexander Yuryshev, 4th Oct 2017, link
```
Текучий интерфейс (англ. fluent interface) в разработке программного обеспечения — способ реализации объектно-ориентированного API, нацеленный на повышение читабельности исходного кода программы. Название придумано Эриком Эвансом и Мартином Фаулером.
```