8
0
Pārlūkot izejas kodu

Merge pull request #263 from ckeditor/t/262

Tests: Add test case for storing functions in config. Closes #262.
Maciej 7 gadi atpakaļ
vecāks
revīzija
dd5be81436
1 mainītis faili ar 28 papildinājumiem un 0 dzēšanām
  1. 28 0
      packages/ckeditor5-utils/tests/config.js

+ 28 - 0
packages/ckeditor5-utils/tests/config.js

@@ -406,5 +406,33 @@ describe( 'Config', () => {
 
 			expect( config.get( 'options.foo' ) ).to.deep.equal( [ { bar: 'b' }, { bar: 'a' }, { bar: 'z' } ] );
 		} );
+
+		it( 'should return class & functions references from config array', () => {
+			class Foo {}
+
+			function bar() {
+				return 'bar';
+			}
+
+			const baz = () => 'baz';
+
+			config.set( 'plugins', [ Foo, bar, baz ] );
+
+			expect( config.get( 'plugins' ) ).to.deep.equal( [ Foo, bar, baz ] );
+
+			const plugins = config.get( 'plugins' );
+
+			expect( plugins[ 0 ] ).to.equal( Foo );
+			expect( plugins[ 1 ] ).to.equal( bar );
+			expect( plugins[ 2 ] ).to.equal( baz );
+
+			const pluginsAgain = config.get( 'plugins' );
+
+			// The returned array should be a new instance:
+			expect( pluginsAgain ).to.not.equal( plugins );
+
+			// But array members should remain the same contents should be equal:
+			expect( pluginsAgain ).to.deep.equal( plugins );
+		} );
 	} );
 } );