@@ -4,13 +4,10 @@ import EmberObject from 'ember-runtime/system/object';
44import run from 'ember-metal/run_loop' ;
55import EmberView from 'ember-views/views/view' ;
66import LegacyEachView from 'ember-views/views/legacy_each_view' ;
7- import { computed } from 'ember-metal/computed' ;
8- import ArrayController , { arrayControllerDeprecation } from 'ember-runtime/controllers/array_controller' ;
97import { A } from 'ember-runtime/system/native_array' ;
108import EmberController from 'ember-runtime/controllers/controller' ;
119import { Registry } from 'ember-runtime/system/container' ;
1210
13- import { get } from 'ember-metal/property_get' ;
1411import { set } from 'ember-metal/property_set' ;
1512import { runAppend , runDestroy } from 'ember-runtime/tests/utils' ;
1613
@@ -331,81 +328,6 @@ QUnit.test('it works inside a table element', function() {
331328 runDestroy ( tableView ) ;
332329} ) ;
333330
334- QUnit . test ( 'it supports itemController' , function ( ) {
335- var Controller = EmberController . extend ( {
336- controllerName : computed ( function ( ) {
337- return `controller:${ this . get ( 'model.name' ) } ` ;
338- } )
339- } ) ;
340-
341- runDestroy ( view ) ;
342-
343- var parentController = {
344- container : container
345- } ;
346-
347- registry . register ( 'controller:array' , ArrayController . extend ( ) ) ;
348-
349- view = EmberView . create ( {
350- container : container ,
351- template : compile ( '{{#each view.people itemController="person"}}{{controllerName}}{{/each}}' ) ,
352- people : people ,
353- controller : parentController
354- } ) ;
355-
356- registry . register ( 'controller:person' , Controller ) ;
357-
358- runAppend ( view ) ;
359-
360- equal ( view . $ ( ) . text ( ) , 'controller:Steve Holtcontroller:Annabelle' ) ;
361-
362- run ( function ( ) {
363- view . rerender ( ) ;
364- } ) ;
365-
366- assertText ( view , 'controller:Steve Holtcontroller:Annabelle' ) ;
367-
368- run ( function ( ) {
369- people . pushObject ( { name : 'Yehuda Katz' } ) ;
370- } ) ;
371-
372- assertText ( view , 'controller:Steve Holtcontroller:Annabellecontroller:Yehuda Katz' ) ;
373-
374- run ( function ( ) {
375- set ( view , 'people' , A ( [ { name : 'Trek Glowacki' } , { name : 'Geoffrey Grosenbach' } ] ) ) ;
376- } ) ;
377-
378- assertText ( view , 'controller:Trek Glowackicontroller:Geoffrey Grosenbach' ) ;
379-
380- strictEqual ( view . childViews [ 0 ] . get ( '_arrayController.target' ) , parentController , 'the target property of the child controllers are set correctly' ) ;
381- } ) ;
382-
383- QUnit . test ( 'itemController should not affect the DOM structure' , function ( ) {
384- var Controller = EmberController . extend ( {
385- name : computed . alias ( 'model.name' )
386- } ) ;
387-
388- runDestroy ( view ) ;
389-
390- registry . register ( 'controller:array' , ArrayController . extend ( ) ) ;
391-
392- view = EmberView . create ( {
393- container : container ,
394- template : compile (
395- '<div id="a">{{#each view.people itemController="person" as |person|}}{{person.name}}{{/each}}</div>' +
396- '<div id="b">{{#each view.people as |person|}}{{person.name}}{{/each}}</div>'
397- ) ,
398- people : people
399- } ) ;
400-
401- registry . register ( 'controller:person' , Controller ) ;
402-
403- runAppend ( view ) ;
404-
405- equal ( view . $ ( '#a' ) . html ( ) , view . $ ( '#b' ) . html ( ) ) ;
406- } ) ;
407-
408-
409331QUnit . test ( 'it supports {{itemView=}}' , function ( ) {
410332 var itemView = EmberView . extend ( {
411333 template : compile ( 'itemView:{{name}}' )
@@ -715,25 +637,6 @@ QUnit.test('it can move to and from {{else}} properly when the backing array gai
715637 assertHTML ( view , 'Nothing' ) ;
716638} ) ;
717639
718- QUnit . test ( 'it works with the controller keyword' , function ( ) {
719- runDestroy ( view ) ;
720-
721- var controller = ArrayController . create ( {
722- model : A ( [ 'foo' , 'bar' , 'baz' ] )
723- } ) ;
724-
725- runDestroy ( view ) ;
726- view = EmberView . create ( {
727- container : container ,
728- controller : controller ,
729- template : compile ( '{{#view}}{{#each controller}}{{this}}{{/each}}{{/view}}' )
730- } ) ;
731-
732- runAppend ( view ) ;
733-
734- equal ( view . $ ( ) . text ( ) , 'foobarbaz' ) ;
735- } ) ;
736-
737640QUnit . test ( 'views inside #each preserve the new context [DEPRECATED]' , function ( ) {
738641 runDestroy ( view ) ;
739642
@@ -875,23 +778,6 @@ function testEachWithItem(moduleName, useBlockParams) {
875778 } ) ;
876779 }
877780
878- QUnit . test ( 'controller is assignable inside an #each' , function ( ) {
879- expectDeprecation ( arrayControllerDeprecation ) ;
880- var controller = ArrayController . create ( {
881- model : A ( [ { name : 'Adam' } , { name : 'Steve' } ] )
882- } ) ;
883-
884- view = EmberView . create ( {
885- container : container ,
886- controller : controller ,
887- template : templateFor ( '{{#EACH|this|personController}}{{#view controller=personController}}{{name}}{{/view}}{{/each}}' , useBlockParams )
888- } ) ;
889-
890- runAppend ( view ) ;
891-
892- equal ( view . $ ( ) . text ( ) , 'AdamSteve' ) ;
893- } ) ;
894-
895781 QUnit . test ( 'it doesn\'t assert when the morph tags have the same parent' , function ( ) {
896782 view = EmberView . create ( {
897783 controller : A ( [ 'Cyril' , 'David' ] ) ,
@@ -903,94 +789,6 @@ function testEachWithItem(moduleName, useBlockParams) {
903789 ok ( true , 'No assertion from valid template' ) ;
904790 } ) ;
905791
906- QUnit . test ( 'itemController specified in template with name binding does not change context [DEPRECATED]' , function ( ) {
907- var Controller = EmberController . extend ( {
908- controllerName : computed ( function ( ) {
909- return `controller:${ this . get ( 'model.name' ) } ` ;
910- } )
911- } ) ;
912-
913- registry = new Registry ( ) ;
914- registry . register ( 'view:-legacy-each' , LegacyEachView ) ;
915- container = registry . container ( ) ;
916-
917- people = A ( [ { name : 'Steve Holt' } , { name : 'Annabelle' } ] ) ;
918-
919- var parentController = {
920- container : container ,
921- people : people ,
922- controllerName : 'controller:parentController'
923- } ;
924-
925- registry . register ( 'controller:array' , ArrayController . extend ( ) ) ;
926-
927- var template ;
928- expectDeprecation ( function ( ) {
929- template = templateFor ( '{{#EACH|people|person|itemController="person"}}{{controllerName}} - {{person.controllerName}} - {{/each}}' , useBlockParams ) ;
930- } , / U s i n g ' i t e m C o n t r o l l e r ' w i t h ' { { e a c h } } ' / ) ;
931-
932- view = EmberView . create ( {
933- template,
934- container : container ,
935- controller : parentController
936- } ) ;
937-
938- registry . register ( 'controller:person' , Controller ) ;
939-
940- runAppend ( view ) ;
941-
942- equal ( view . $ ( ) . text ( ) , 'controller:parentController - controller:Steve Holt - controller:parentController - controller:Annabelle - ' ) ;
943-
944- run ( function ( ) {
945- people . pushObject ( { name : 'Yehuda Katz' } ) ;
946- } ) ;
947-
948- assertText ( view , 'controller:parentController - controller:Steve Holt - controller:parentController - controller:Annabelle - controller:parentController - controller:Yehuda Katz - ' ) ;
949-
950- run ( function ( ) {
951- set ( parentController , 'people' , A ( [ { name : 'Trek Glowacki' } , { name : 'Geoffrey Grosenbach' } ] ) ) ;
952- } ) ;
953-
954- assertText ( view , 'controller:parentController - controller:Trek Glowacki - controller:parentController - controller:Geoffrey Grosenbach - ' ) ;
955-
956- strictEqual ( view . childViews [ 0 ] . get ( '_arrayController.target' ) , parentController , 'the target property of the child controllers are set correctly' ) ;
957- } ) ;
958-
959- QUnit . test ( 'itemController specified in ArrayController with name binding does not change context' , function ( ) {
960- expectDeprecation ( arrayControllerDeprecation ) ;
961- people = A ( [ { name : 'Steve Holt' } , { name : 'Annabelle' } ] ) ;
962-
963- var PersonController = EmberController . extend ( {
964- controllerName : computed ( function ( ) {
965- return 'controller:' + get ( this , 'model.name' ) + ' of ' + get ( this , 'parentController.company' ) ;
966- } )
967- } ) ;
968- var PeopleController = ArrayController . extend ( {
969- model : people ,
970- itemController : 'person' ,
971- company : 'Yapp' ,
972- controllerName : 'controller:people'
973- } ) ;
974- registry = new Registry ( ) ;
975- registry . register ( 'view:-legacy-each' , LegacyEachView ) ;
976- container = registry . container ( ) ;
977-
978- registry . register ( 'controller:people' , PeopleController ) ;
979- registry . register ( 'controller:person' , PersonController ) ;
980-
981- view = EmberView . create ( {
982- container : container ,
983- template : templateFor ( '{{#EACH|this|person}}{{controllerName}} - {{person.controllerName}} - {{/each}}' , useBlockParams ) ,
984- controller : container . lookup ( 'controller:people' )
985- } ) ;
986-
987-
988- runAppend ( view ) ;
989-
990- equal ( view . $ ( ) . text ( ) , 'controller:people - controller:Steve Holt of Yapp - controller:people - controller:Annabelle of Yapp - ' ) ;
991- } ) ;
992-
993-
994792 QUnit . test ( 'locals in stable loops update when the list is updated' , function ( ) {
995793 expect ( 3 ) ;
996794
0 commit comments