instantjob-recruiter-client
Version:
a set of tools for creating an instantjob recruiter react client
68 lines (47 loc) • 2.28 kB
JavaScript
;
var _react = require('react');
var _react2 = _interopRequireDefault(_react);
var _enzyme = require('enzyme');
var _reactRedux = require('react-redux');
var _expect = require('expect');
var _expect2 = _interopRequireDefault(_expect);
var _users_list = require('components/users_list');
var _users_list2 = _interopRequireDefault(_users_list);
var _filterable_list = require('components/filterable_list/filterable_list');
var _filterable_list2 = _interopRequireDefault(_filterable_list);
var _hover = require('components/utils/hover');
var _hover2 = _interopRequireDefault(_hover);
var _state = require('tests/selectors/state');
var _state2 = _interopRequireDefault(_state);
var _users = require('selectors/users');
var _fields = require('selectors/fields');
var _utilities = require('common/utilities');
var _store = require('common/store');
var _store2 = _interopRequireDefault(_store);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
describe('UsersList', function () {
it('should render', function () {
var fields = (0, _utilities.array_from_hash)((0, _fields.get_users_fields)(_state2.default));
(0, _expect2.default)(fields.length).toEqual((0, _utilities.array_from_hash)(_state2.default.fields.fields).filter(function (_ref) {
var for_entity = _ref.for_entity;
return for_entity == 'User';
}).length);
var users = (0, _utilities.array_from_hash)((0, _users.get_users)(_state2.default));
(0, _expect2.default)(users.length).toEqual((0, _utilities.array_from_hash)(_state2.default.users.users).length);
(0, _expect2.default)(users[0].status.status).toEqual('mail');
(0, _expect2.default)(users[1].status.status).toEqual('applied');
var element = (0, _enzyme.mount)(_react2.default.createElement(
_reactRedux.Provider,
{ store: _store2.default },
_react2.default.createElement(_users_list2.default, {
fields: fields,
users: users
})
));
(0, _expect2.default)(element.html()).toExist();
element.find(_hover2.default).forEach(function (filter) {
filter.simulate('mouseenter');
});
(0, _expect2.default)(element.find(_filterable_list2.default).prop('children').length).toEqual(2);
});
});