@ribajs/core
Version:
Core module of Riba.js
39 lines • 3.63 kB
JavaScript
import { Riba } from "../riba.js";
import { dotAdapter } from "../adapters/dot.adapter.js";
import { SrcsetSizeBinder } from "./srcset-size.binder.js";
describe("riba.binders", () => {
let el;
let fragment;
let model = {};
const riba = new Riba();
riba.module.adapter.register(dotAdapter);
riba.module.binder.register(SrcsetSizeBinder);
beforeEach(() => {
fragment = document.createDocumentFragment();
el = document.createElement("div");
fragment.appendChild(el);
model = {
small: "//placehold.it/100x",
middle: "//placehold.it/200x",
big: "//placehold.it/300x",
};
});
afterEach(() => {
if (!el.parentNode) {
throw new Error("el.parentNode is not defined!");
}
el.parentNode.removeChild(el);
});
describe("srcset-size", () => {
it("Adds a url + size string to the srcset attribute by a value string in the model", () => {
el.setAttribute("rv-srcset-100w", "small");
el.setAttribute("rv-srcset-200w", "middle");
el.setAttribute("rv-srcset-300w", "big");
riba.bind(fragment, model);
expect(el.getAttribute("srcset")).toEqual("//placehold.it/100x 100w, //placehold.it/200x 200w, //placehold.it/300x 300w");
model.middle = "";
expect(el.getAttribute("srcset")).toEqual("//placehold.it/100x 100w, //placehold.it/300x 300w");
});
});
});
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3Jjc2V0LXNpemUuYmluZGVyLnNwZWMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvYmluZGVycy9zcmNzZXQtc2l6ZS5iaW5kZXIuc3BlYy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sWUFBWSxDQUFDO0FBRWxDLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUV4RCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUUzRCxRQUFRLENBQUMsY0FBYyxFQUFFLEdBQUcsRUFBRTtJQUM1QixJQUFJLEVBQWtCLENBQUM7SUFDdkIsSUFBSSxRQUEwQixDQUFDO0lBQy9CLElBQUksS0FBSyxHQUFRLEVBQUUsQ0FBQztJQUVwQixNQUFNLElBQUksR0FBRyxJQUFJLElBQUksRUFBRSxDQUFDO0lBQ3hCLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxVQUFVLENBQUMsQ0FBQztJQUN6QyxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztJQUU5QyxVQUFVLENBQUMsR0FBRyxFQUFFO1FBQ2QsUUFBUSxHQUFHLFFBQVEsQ0FBQyxzQkFBc0IsRUFBRSxDQUFDO1FBQzdDLEVBQUUsR0FBRyxRQUFRLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ25DLFFBQVEsQ0FBQyxXQUFXLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDekIsS0FBSyxHQUFHO1lBQ04sS0FBSyxFQUFFLHFCQUFxQjtZQUM1QixNQUFNLEVBQUUscUJBQXFCO1lBQzdCLEdBQUcsRUFBRSxxQkFBcUI7U0FDM0IsQ0FBQztJQUNKLENBQUMsQ0FBQyxDQUFDO0lBRUgsU0FBUyxDQUFDLEdBQUcsRUFBRTtRQUNiLElBQUksQ0FBQyxFQUFFLENBQUMsVUFBVSxFQUFFLENBQUM7WUFDbkIsTUFBTSxJQUFJLEtBQUssQ0FBQywrQkFBK0IsQ0FBQyxDQUFDO1FBQ25ELENBQUM7UUFDRCxFQUFFLENBQUMsVUFBVSxDQUFDLFdBQVcsQ0FBQyxFQUFFLENBQUMsQ0FBQztJQUNoQyxDQUFDLENBQUMsQ0FBQztJQUVILFFBQVEsQ0FBQyxhQUFhLEVBQUUsR0FBRyxFQUFFO1FBQzNCLEVBQUUsQ0FBQyxpRkFBaUYsRUFBRSxHQUFHLEVBQUU7WUFFekYsRUFBRSxDQUFDLFlBQVksQ0FBQyxnQkFBZ0IsRUFBRSxPQUFPLENBQUMsQ0FBQztZQUMzQyxFQUFFLENBQUMsWUFBWSxDQUFDLGdCQUFnQixFQUFFLFFBQVEsQ0FBQyxDQUFDO1lBQzVDLEVBQUUsQ0FBQyxZQUFZLENBQUMsZ0JBQWdCLEVBQUUsS0FBSyxDQUFDLENBQUM7WUFFekMsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUUsS0FBSyxDQUFDLENBQUM7WUFFM0IsTUFBTSxDQUFDLEVBQUUsQ0FBQyxZQUFZLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQ3ZDLDhFQUE4RSxDQUMvRSxDQUFDO1lBR0YsS0FBSyxDQUFDLE1BQU0sR0FBRyxFQUFFLENBQUM7WUFFbEIsTUFBTSxDQUFDLEVBQUUsQ0FBQyxZQUFZLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQ3ZDLG9EQUFvRCxDQUNyRCxDQUFDO1FBQ0osQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDLENBQUMsQ0FBQztBQUNMLENBQUMsQ0FBQyxDQUFDIn0=