all files / test/base/ Context.spec.js

100% Statements 53/53
50% Branches 1/2
100% Functions 10/10
100% Lines 52/52
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74                                            
(function(global){global.wrappers['/Users/lqez/Dev/summernote/test/base/Context.spec.js']=[function(require,module,exports,__dirname,__filename){ "use strict";
exports.__esModule = true;
/**
 * Context.spec.js
 * (c) 2015~ Summernote Team
 * summernote may be freely distributed under the MIT license./
 */
var chai_1 = require("chai");
var chai_spies_1 = require("chai-spies");
/* eslint-disable import/first */
var jquery_1 = require("jquery");
window.jQuery = jquery_1["default"];
require("bootstrap");
var chaidom_1 = require("../chaidom");
var env_1 = require("../../src/js/base/core/env");
var Context_1 = require("../../src/js/base/Context");
require("../../src/js/bs4/settings");
/* eslint-enable import/first */
var expect = chai_1["default"].expect;
chai_1["default"].use(chai_spies_1["default"]);
chai_1["default"].use(chaidom_1["default"]);
describe('Context lifecycle', function () {
    it('should be initialized without calling callback', function () {
        var spy = chai_1["default"].spy();
        var $note = jquery_1["default"]('<div><p>hello</p></div>');
        $note.on('summernote.change', spy);
        var context = new Context_1["default"]($note, jquery_1["default"].summernote.options);
        expect(spy).to.have.not.been.called();
        // [workaround]
        //  - IE8-11 can't create range in headless mode
        Eif (!env_1["default"].isMSIE) {
            context.invoke('insertText', 'hello');
            expect(spy).to.have.been.called();
        }
    });
    it('should preserve user events handler after destroy', function () {
        var spy = chai_1["default"].spy();
        var $note = jquery_1["default"]('<div><p>hello</p></div>');
        $note.on('click', spy);
        var context = new Context_1["default"]($note, jquery_1["default"].summernote.options);
        context.destroy();
        $note.trigger('click');
        expect(spy).to.have.been.called();
    });
});
describe('Context', function () {
    var context;
    beforeEach(function () {
        context = new Context_1["default"](jquery_1["default"]('<div><p>hello</p></div>'), jquery_1["default"].summernote.options);
    });
    it('should get or set contents with code', function () {
        expect(context.code()).to.equalsIgnoreCase('<p>hello</p>');
        context.code('<p>hello2</p>');
        expect(context.code()).to.equalsIgnoreCase('<p>hello2</p>');
    });
    it('should enable or disable editor', function () {
        expect(context.isDisabled()).to.be["false"];
        context.disable();
        expect(context.isDisabled()).to.be["true"];
        context.enable();
        expect(context.isDisabled()).to.be["false"];
    });
    it('should preserve disabled status after reset', function () {
        expect(context.isDisabled()).to.be["false"];
        context.disable();
        expect(context.isDisabled()).to.be["true"];
        context.reset();
        expect(context.isDisabled()).to.be["true"];
    });
});
 
},'test/base/Context.spec.js',{"chai":"/Users/lqez/Dev/summernote/node_modules/chai/index.js","chai-spies":"/Users/lqez/Dev/summernote/node_modules/chai-spies/chai-spies.js","jquery":"/Users/lqez/Dev/summernote/node_modules/jquery/dist/jquery.js","bootstrap":"/Users/lqez/Dev/summernote/node_modules/bootstrap/dist/js/bootstrap.js","../chaidom":"/Users/lqez/Dev/summernote/test/chaidom.js","../../src/js/base/core/env":"/Users/lqez/Dev/summernote/src/js/base/core/env.js","../../src/js/base/Context":"/Users/lqez/Dev/summernote/src/js/base/Context.js","../../src/js/bs4/settings":"/Users/lqez/Dev/summernote/src/js/bs4/settings.js"}];})(this);
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ29udGV4dC5zcGVjLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiQ29udGV4dC5zcGVjLmpzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUE7Ozs7R0FJRztBQUNILDZCQUF3QjtBQUN4Qix5Q0FBK0I7QUFFL0IsaUNBQWlDO0FBQ2pDLGlDQUF1QjtBQUFDLE1BQU0sQ0FBQyxNQUFNLEdBQUcsbUJBQUMsQ0FBQztBQUMxQyxxQkFBbUI7QUFDbkIsc0NBQWlDO0FBQ2pDLGtEQUE2QztBQUM3QyxxREFBZ0Q7QUFDaEQscUNBQW1DO0FBQ25DLGdDQUFnQztBQUVoQyxJQUFJLE1BQU0sR0FBRyxpQkFBSSxDQUFDLE1BQU0sQ0FBQztBQUN6QixpQkFBSSxDQUFDLEdBQUcsQ0FBQyx1QkFBSyxDQUFDLENBQUM7QUFDaEIsaUJBQUksQ0FBQyxHQUFHLENBQUMsb0JBQU8sQ0FBQyxDQUFDO0FBRWxCLFFBQVEsQ0FBQyxtQkFBbUIsRUFBRTtJQUM1QixFQUFFLENBQUMsZ0RBQWdELEVBQUU7UUFDbkQsSUFBSSxHQUFHLEdBQUcsaUJBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQztRQUNyQixJQUFJLEtBQUssR0FBRyxtQkFBQyxDQUFDLHlCQUF5QixDQUFDLENBQUM7UUFDekMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxtQkFBbUIsRUFBRSxHQUFHLENBQUMsQ0FBQztRQUVuQyxJQUFJLE9BQU8sR0FBRyxJQUFJLG9CQUFPLENBQUMsS0FBSyxFQUFFLG1CQUFDLENBQUMsVUFBVSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ3ZELE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7UUFFdEMsZUFBZTtRQUNmLGdEQUFnRDtRQUNoRCxJQUFJLENBQUMsZ0JBQUcsQ0FBQyxNQUFNLEVBQUU7WUFDZixPQUFPLENBQUMsTUFBTSxDQUFDLFlBQVksRUFBRSxPQUFPLENBQUMsQ0FBQztZQUN0QyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7U0FDbkM7SUFDSCxDQUFDLENBQUMsQ0FBQztJQUVILEVBQUUsQ0FBQyxtREFBbUQsRUFBRTtRQUN0RCxJQUFJLEdBQUcsR0FBRyxpQkFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDO1FBQ3JCLElBQUksS0FBSyxHQUFHLG1CQUFDLENBQUMseUJBQXlCLENBQUMsQ0FBQztRQUN6QyxLQUFLLENBQUMsRUFBRSxDQUFDLE9BQU8sRUFBRSxHQUFHLENBQUMsQ0FBQztRQUV2QixJQUFJLE9BQU8sR0FBRyxJQUFJLG9CQUFPLENBQUMsS0FBSyxFQUFFLG1CQUFDLENBQUMsVUFBVSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ3ZELE9BQU8sQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUVsQixLQUFLLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ3ZCLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQztJQUNwQyxDQUFDLENBQUMsQ0FBQztBQUNMLENBQUMsQ0FBQyxDQUFDO0FBRUgsUUFBUSxDQUFDLFNBQVMsRUFBRTtJQUNsQixJQUFJLE9BQU8sQ0FBQztJQUNaLFVBQVUsQ0FBQztRQUNULE9BQU8sR0FBRyxJQUFJLG9CQUFPLENBQUMsbUJBQUMsQ0FBQyx5QkFBeUIsQ0FBQyxFQUFFLG1CQUFDLENBQUMsVUFBVSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQzVFLENBQUMsQ0FBQyxDQUFDO0lBRUgsRUFBRSxDQUFDLHNDQUFzQyxFQUFFO1FBQ3pDLE1BQU0sQ0FBQyxPQUFPLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQyxFQUFFLENBQUMsZ0JBQWdCLENBQUMsY0FBYyxDQUFDLENBQUM7UUFDM0QsT0FBTyxDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsQ0FBQztRQUM5QixNQUFNLENBQUMsT0FBTyxDQUFDLElBQUksRUFBRSxDQUFDLENBQUMsRUFBRSxDQUFDLGdCQUFnQixDQUFDLGVBQWUsQ0FBQyxDQUFDO0lBQzlELENBQUMsQ0FBQyxDQUFDO0lBRUgsRUFBRSxDQUFDLGlDQUFpQyxFQUFFO1FBQ3BDLE1BQU0sQ0FBQyxPQUFPLENBQUMsVUFBVSxFQUFFLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLE9BQUssQ0FBQSxDQUFDO1FBQ3pDLE9BQU8sQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUNsQixNQUFNLENBQUMsT0FBTyxDQUFDLFVBQVUsRUFBRSxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxNQUFJLENBQUEsQ0FBQztRQUN4QyxPQUFPLENBQUMsTUFBTSxFQUFFLENBQUM7UUFDakIsTUFBTSxDQUFDLE9BQU8sQ0FBQyxVQUFVLEVBQUUsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsT0FBSyxDQUFBLENBQUM7SUFDM0MsQ0FBQyxDQUFDLENBQUM7SUFFSCxFQUFFLENBQUMsNkNBQTZDLEVBQUU7UUFDaEQsTUFBTSxDQUFDLE9BQU8sQ0FBQyxVQUFVLEVBQUUsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsT0FBSyxDQUFBLENBQUM7UUFDekMsT0FBTyxDQUFDLE9BQU8sRUFBRSxDQUFDO1FBQ2xCLE1BQU0sQ0FBQyxPQUFPLENBQUMsVUFBVSxFQUFFLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLE1BQUksQ0FBQSxDQUFDO1FBQ3hDLE9BQU8sQ0FBQyxLQUFLLEVBQUUsQ0FBQztRQUNoQixNQUFNLENBQUMsT0FBTyxDQUFDLFVBQVUsRUFBRSxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxNQUFJLENBQUEsQ0FBQztJQUMxQyxDQUFDLENBQUMsQ0FBQztBQUNMLENBQUMsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBDb250ZXh0LnNwZWMuanNcbiAqIChjKSAyMDE1fiBTdW1tZXJub3RlIFRlYW1cbiAqIHN1bW1lcm5vdGUgbWF5IGJlIGZyZWVseSBkaXN0cmlidXRlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2UuL1xuICovXG5pbXBvcnQgY2hhaSBmcm9tICdjaGFpJztcbmltcG9ydCBzcGllcyBmcm9tICdjaGFpLXNwaWVzJztcblxuLyogZXNsaW50LWRpc2FibGUgaW1wb3J0L2ZpcnN0ICovXG5pbXBvcnQgJCBmcm9tICdqcXVlcnknOyB3aW5kb3cualF1ZXJ5ID0gJDtcbmltcG9ydCAnYm9vdHN0cmFwJztcbmltcG9ydCBjaGFpZG9tIGZyb20gJy4uL2NoYWlkb20nO1xuaW1wb3J0IGVudiBmcm9tICcuLi8uLi9zcmMvanMvYmFzZS9jb3JlL2Vudic7XG5pbXBvcnQgQ29udGV4dCBmcm9tICcuLi8uLi9zcmMvanMvYmFzZS9Db250ZXh0JztcbmltcG9ydCAnLi4vLi4vc3JjL2pzL2JzNC9zZXR0aW5ncyc7XG4vKiBlc2xpbnQtZW5hYmxlIGltcG9ydC9maXJzdCAqL1xuXG52YXIgZXhwZWN0ID0gY2hhaS5leHBlY3Q7XG5jaGFpLnVzZShzcGllcyk7XG5jaGFpLnVzZShjaGFpZG9tKTtcblxuZGVzY3JpYmUoJ0NvbnRleHQgbGlmZWN5Y2xlJywgKCkgPT4ge1xuICBpdCgnc2hvdWxkIGJlIGluaXRpYWxpemVkIHdpdGhvdXQgY2FsbGluZyBjYWxsYmFjaycsICgpID0+IHtcbiAgICB2YXIgc3B5ID0gY2hhaS5zcHkoKTtcbiAgICB2YXIgJG5vdGUgPSAkKCc8ZGl2PjxwPmhlbGxvPC9wPjwvZGl2PicpO1xuICAgICRub3RlLm9uKCdzdW1tZXJub3RlLmNoYW5nZScsIHNweSk7XG5cbiAgICB2YXIgY29udGV4dCA9IG5ldyBDb250ZXh0KCRub3RlLCAkLnN1bW1lcm5vdGUub3B0aW9ucyk7XG4gICAgZXhwZWN0KHNweSkudG8uaGF2ZS5ub3QuYmVlbi5jYWxsZWQoKTtcblxuICAgIC8vIFt3b3JrYXJvdW5kXVxuICAgIC8vICAtIElFOC0xMSBjYW4ndCBjcmVhdGUgcmFuZ2UgaW4gaGVhZGxlc3MgbW9kZVxuICAgIGlmICghZW52LmlzTVNJRSkge1xuICAgICAgY29udGV4dC5pbnZva2UoJ2luc2VydFRleHQnLCAnaGVsbG8nKTtcbiAgICAgIGV4cGVjdChzcHkpLnRvLmhhdmUuYmVlbi5jYWxsZWQoKTtcbiAgICB9XG4gIH0pO1xuXG4gIGl0KCdzaG91bGQgcHJlc2VydmUgdXNlciBldmVudHMgaGFuZGxlciBhZnRlciBkZXN0cm95JywgKCkgPT4ge1xuICAgIHZhciBzcHkgPSBjaGFpLnNweSgpO1xuICAgIHZhciAkbm90ZSA9ICQoJzxkaXY+PHA+aGVsbG88L3A+PC9kaXY+Jyk7XG4gICAgJG5vdGUub24oJ2NsaWNrJywgc3B5KTtcblxuICAgIHZhciBjb250ZXh0ID0gbmV3IENvbnRleHQoJG5vdGUsICQuc3VtbWVybm90ZS5vcHRpb25zKTtcbiAgICBjb250ZXh0LmRlc3Ryb3koKTtcblxuICAgICRub3RlLnRyaWdnZXIoJ2NsaWNrJyk7XG4gICAgZXhwZWN0KHNweSkudG8uaGF2ZS5iZWVuLmNhbGxlZCgpO1xuICB9KTtcbn0pO1xuXG5kZXNjcmliZSgnQ29udGV4dCcsICgpID0+IHtcbiAgdmFyIGNvbnRleHQ7XG4gIGJlZm9yZUVhY2goKCkgPT4ge1xuICAgIGNvbnRleHQgPSBuZXcgQ29udGV4dCgkKCc8ZGl2PjxwPmhlbGxvPC9wPjwvZGl2PicpLCAkLnN1bW1lcm5vdGUub3B0aW9ucyk7XG4gIH0pO1xuXG4gIGl0KCdzaG91bGQgZ2V0IG9yIHNldCBjb250ZW50cyB3aXRoIGNvZGUnLCAoKSA9PiB7XG4gICAgZXhwZWN0KGNvbnRleHQuY29kZSgpKS50by5lcXVhbHNJZ25vcmVDYXNlKCc8cD5oZWxsbzwvcD4nKTtcbiAgICBjb250ZXh0LmNvZGUoJzxwPmhlbGxvMjwvcD4nKTtcbiAgICBleHBlY3QoY29udGV4dC5jb2RlKCkpLnRvLmVxdWFsc0lnbm9yZUNhc2UoJzxwPmhlbGxvMjwvcD4nKTtcbiAgfSk7XG5cbiAgaXQoJ3Nob3VsZCBlbmFibGUgb3IgZGlzYWJsZSBlZGl0b3InLCAoKSA9PiB7XG4gICAgZXhwZWN0KGNvbnRleHQuaXNEaXNhYmxlZCgpKS50by5iZS5mYWxzZTtcbiAgICBjb250ZXh0LmRpc2FibGUoKTtcbiAgICBleHBlY3QoY29udGV4dC5pc0Rpc2FibGVkKCkpLnRvLmJlLnRydWU7XG4gICAgY29udGV4dC5lbmFibGUoKTtcbiAgICBleHBlY3QoY29udGV4dC5pc0Rpc2FibGVkKCkpLnRvLmJlLmZhbHNlO1xuICB9KTtcblxuICBpdCgnc2hvdWxkIHByZXNlcnZlIGRpc2FibGVkIHN0YXR1cyBhZnRlciByZXNldCcsICgpID0+IHtcbiAgICBleHBlY3QoY29udGV4dC5pc0Rpc2FibGVkKCkpLnRvLmJlLmZhbHNlO1xuICAgIGNvbnRleHQuZGlzYWJsZSgpO1xuICAgIGV4cGVjdChjb250ZXh0LmlzRGlzYWJsZWQoKSkudG8uYmUudHJ1ZTtcbiAgICBjb250ZXh0LnJlc2V0KCk7XG4gICAgZXhwZWN0KGNvbnRleHQuaXNEaXNhYmxlZCgpKS50by5iZS50cnVlO1xuICB9KTtcbn0pO1xuIl19