lml-main
Version:
This is now a mono repository published into many standalone packages.
61 lines • 2.8 kB
JavaScript
;
var _this = this;
Object.defineProperty(exports, "__esModule", { value: true });
var tslib_1 = require("tslib");
require("rxjs");
var redux_rx_http_1 = require("redux-rx-http");
var ts_utils_1 = require("@lml/ts-utils");
var actions_1 = require("../actions");
var fetch_places_1 = require("../epics/fetch-places");
var data_1 = require("../mocks/data");
var cosmoui_1 = require("cosmoui");
var utils_1 = require("../../utils");
describe('fetchPlacesEpic', function () {
it('given a successful action type success call set places with result', function () { return tslib_1.__awaiter(_this, void 0, void 0, function () {
var result, response, action, expectedActions, actions;
return tslib_1.__generator(this, function (_a) {
switch (_a.label) {
case 0:
result = {
places: {
testPlace: tslib_1.__assign({}, data_1.mockPlace('testPlace')),
},
};
response = ts_utils_1.mockResponse(result);
action = redux_rx_http_1.rxHttpSuccess(response, undefined, { partnerId: 'justEat' }, actions_1.FETCH_PLACES);
expectedActions = [{
type: actions_1.SET_PLACES,
places: result.places,
}];
return [4 /*yield*/, ts_utils_1.getEpicActions(fetch_places_1.fetchPlacesSuccess, action)];
case 1:
actions = _a.sent();
expect(actions).toEqual(expectedActions);
return [2 /*return*/];
}
});
}); });
it('on error FETCH, FETCH_PLACES', function () { return tslib_1.__awaiter(_this, void 0, void 0, function () {
var action, actions;
return tslib_1.__generator(this, function (_a) {
switch (_a.label) {
case 0:
action = utils_1.mockErr(actions_1.FETCH_PLACES);
return [4 /*yield*/, ts_utils_1.getEpicActions(fetch_places_1.fetchPlacesError, action)];
case 1:
actions = _a.sent();
expect(actions).toMatchObject([
expect.objectContaining({
type: cosmoui_1.SHOW_NOTIFICATION,
level: expect.objectContaining({
key: 'error',
}),
message: 'There was a problem fetching places. Please try again',
}),
]);
return [2 /*return*/];
}
});
}); });
});
//# sourceMappingURL=fetch-places.epic.spec.js.map