iconmanagerview.js 1.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. /**
  2. * @license Copyright (c) 2003-2016, CKSource - Frederico Knabben. All rights reserved.
  3. * For licensing, see LICENSE.md.
  4. */
  5. /* bender-tags: ui, iconmanager */
  6. 'use strict';
  7. import testUtils from '/tests/ckeditor5/_utils/utils.js';
  8. import IconManagerView from '/ckeditor5/ui/iconmanagerview.js';
  9. import Model from '/ckeditor5/ui/model.js';
  10. testUtils.createSinonSandbox();
  11. describe( 'IconManagerView', () => {
  12. let view;
  13. beforeEach( () => {
  14. view = new IconManagerView( new Model( {
  15. sprite: 'foo'
  16. } ) );
  17. } );
  18. describe( 'init', () => {
  19. it( 'calls _setupSprite', () => {
  20. const spy = testUtils.sinon.spy( view, '_setupSprite' );
  21. view.init();
  22. expect( spy.calledOnce ).to.be.true;
  23. } );
  24. } );
  25. describe( '_setupSprite', () => {
  26. it( 'initializes the sprite', () => {
  27. view._setupSprite();
  28. const el = view.element;
  29. const svg = view.element.firstChild;
  30. expect( el.tagName ).to.be.equal( 'DIV' );
  31. expect( el.classList.item( 0 ) ).to.be.equal( 'ck-icon-manager' );
  32. expect( svg.tagName ).to.be.equal( 'svg' );
  33. expect( svg.innerHTML ).to.be.equal( 'foo' );
  34. expect( svg.classList.item( 0 ) ).to.be.equal( 'ck-icon-manager-sprite' );
  35. } );
  36. } );
  37. } );