UNPKG

kentico-cloud-delivery

Version:

Official Kentico Cloud Delivery SDK

65 lines 2.81 kB
"use strict"; var __extends = (this && this.__extends) || (function () { var extendStatics = Object.setPrototypeOf || ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; }; return function (d, b) { extendStatics(d, b); function __() { this.constructor = d; } d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); }; })(); exports.__esModule = true; var lib_1 = require("../../../lib"); var setup_1 = require("../../setup"); var MockMovie = /** @class */ (function (_super) { __extends(MockMovie, _super); function MockMovie() { return _super !== null && _super.apply(this, arguments) || this; } return MockMovie; }(lib_1.ContentItem)); var MockActor = /** @class */ (function (_super) { __extends(MockActor, _super); function MockActor() { return _super.call(this, { richTextResolver: function (item) { return "<h1>" + item.first_name.text + "</h1>"; } }) || this; } return MockActor; }(lib_1.ContentItem)); describe('Rich text resolver', function () { var context = new setup_1.Context(); var typeResolvers = []; typeResolvers.push(new lib_1.TypeResolver('movie', function () { return new MockMovie(); })); typeResolvers.push(new lib_1.TypeResolver('actor', function () { return new MockActor(); })); context.typeResolvers = typeResolvers; setup_1.setup(context); var mockQueryService = new setup_1.MockQueryService(context.getConfig(), new lib_1.DeliveryHttpService(), { host: lib_1.sdkInfo.host, name: lib_1.sdkInfo.name, version: lib_1.sdkInfo.version }); var response; var responseWithQueryConfig; beforeAll(function (done) { response = mockQueryService.mockGetSingleItem(setup_1.warriorMovieJson, {}); responseWithQueryConfig = mockQueryService.mockGetSingleItem(setup_1.warriorMovieJson, { richTextResolver: function (item) { return "<h2>" + item.first_name.text + "</h2>"; } }); done(); }); it("verifies globally defined rich text contains correct html", function () { var containsHtml = '<h1>Tom</h1>'; expect(response.item.plot.getHtml()).toContain(containsHtml); }); it("verifies locally defined rich text resolver (should have priority over global one) contains correct html", function () { var containsHtml = '<h2>Tom</h2>'; expect(responseWithQueryConfig.item.plot.getHtml()).toContain(containsHtml); }); }); //# sourceMappingURL=rich-text-resolver.spec.js.map