UNPKG

quixote

Version:

CSS unit and integration testing

40 lines (29 loc) 906 B
// Copyright (c) 2016-2017 Titanium I.T. LLC. All rights reserved. For license, see "README" or "LICENSE" file. "use strict"; var ensure = require("../util/ensure.js"); var Value = require("./value.js"); var RENDERED = "rendered"; var NOT_RENDERED = "not rendered"; var Me = module.exports = function RenderState(state) { ensure.signature(arguments, [ String ]); this._state = state; }; Value.extend(Me); Me.rendered = function rendered() { return new Me(RENDERED); }; Me.notRendered = function notRendered() { return new Me(NOT_RENDERED); }; Me.prototype.compatibility = function compatibility() { return [ Me ]; }; Me.prototype.diff = Value.safe(function diff(expected) { var thisState = this._state; var expectedState = expected._state; if (thisState === expectedState) return ""; else return this.toString(); }); Me.prototype.toString = function toString() { return this._state; };