kentico-cloud-delivery
Version:
Official Kentico Cloud Delivery SDK
65 lines • 2.81 kB
JavaScript
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
;