Мы использовали React уже около года с неизменяемыми данными, что очень впечатляет. Теперь мы хотим перейти к Clojurescript/Reagent, но нам нужен очень хороший способ протестировать наш код. Для компонентов это то, что мы сделали:
- Протестируйте вывод компонента в зависимости от отправленных реквизитов:
- Проверьте, что компонент вызывает правильные функции и с правильными параметрами, когда происходит событие, такое как щелчок.
Для 1 это будет так:
function renderFFC(filters, search_criterias)
{
return TestUtils.renderIntoDocument(React.createElement(FilterIntervalNumberComponent,{filter:filters, search_criteria:search_criterias}));
}
describe("IN", function(){
it("should render search criteria - interval", function() {
var criterias = {};
var ffc = renderFFC(filter, criterias);
expect(ffc.refs[0].getDOMNode().value).toBeNull();
expect(ffc.refs[1].getDOMNode().value).toBeNull();
});
Для 2 это будет что-то вроде:
describe("OUT", function(){
it("should change the values, then click - boolean ", function() {
//mock function
set_criteria_and_search = jest.genMockFunction();
var fbc = renderFBC(filter, {});
React.addons.TestUtils.Simulate.change(fbc.refs.yes.getDOMNode(),{nativeEvent: {target: {value: true}}});
expect(controller.set_criteria_and_search.mock.calls)
.toEqual(
[['taxes_applied',{'taxes_applied':[{value:"1"}]}]]
);
});
Мы использовали facebook Jest для тестов.
Как мне сделать то же самое в Clojurescript с помощью Reagent, желательно с автоматическим запуском тестов?
+test
github.com/regent -проект/реагент-шаблон/блоб/мастер/ - person Joaquin   schedule 10.12.2015lein new reagent <name> +test
- person Joaquin   schedule 11.12.2015