8
0

utils.js 1.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. /**
  2. * @license Copyright (c) 2003-2016, CKSource - Frederico Knabben. All rights reserved.
  3. * For licensing, see LICENSE.md.
  4. */
  5. import testUtils from '/tests/ui/_utils/utils.js';
  6. describe( 'utils', () => {
  7. describe( 'createTestUIController', () => {
  8. it( 'returns a promise', () => {
  9. expect( testUtils.createTestUIController() ).to.be.instanceof( Promise );
  10. } );
  11. describe( 'controller instance', () => {
  12. it( 'comes with a view', () => {
  13. const promise = testUtils.createTestUIController();
  14. return promise.then( controller => {
  15. expect( controller.view.element ).to.equal( document.body );
  16. } );
  17. } );
  18. it( 'creates collections and regions', () => {
  19. const promise = testUtils.createTestUIController( {
  20. foo: el => el.firstChild,
  21. bar: el => el.lastChild,
  22. } );
  23. promise.then( controller => {
  24. expect( controller.collections.get( 'foo' ) ).to.be.not.undefined;
  25. expect( controller.collections.get( 'bar' ) ).to.be.not.undefined;
  26. expect( controller.view.regions.get( 'foo' ).element ).to.equal( document.body.firstChild );
  27. expect( controller.view.regions.get( 'bar' ).element ).to.equal( document.body.lastChild );
  28. } );
  29. } );
  30. it( 'is ready', () => {
  31. const promise = testUtils.createTestUIController( {
  32. foo: el => el.firstChild,
  33. bar: el => el.lastChild,
  34. } );
  35. promise.then( controller => {
  36. expect( controller.ready ).to.be.true;
  37. } );
  38. } );
  39. } );
  40. } );
  41. } );