FLEX-34884 Added a unit test to make sure that we can still find items in the collection once it's been sorted by complex fields. Note that currently it fails.
Project: http://git-wip-us.apache.org/repos/asf/flex-sdk/repo Commit: http://git-wip-us.apache.org/repos/asf/flex-sdk/commit/418359c7 Tree: http://git-wip-us.apache.org/repos/asf/flex-sdk/tree/418359c7 Diff: http://git-wip-us.apache.org/repos/asf/flex-sdk/diff/418359c7 Branch: refs/heads/develop Commit: 418359c7ad76c8ef66aca65f4229b98c515ca430 Parents: d440bd2 Author: Mihai Chira <[email protected]> Authored: Mon Jun 8 15:57:55 2015 +0200 Committer: Mihai Chira <[email protected]> Committed: Mon Jun 8 15:57:55 2015 +0200 ---------------------------------------------------------------------- .../framework/tests/FLEX_34852_Tests.as | 24 +++++++++++++++++++- 1 file changed, 23 insertions(+), 1 deletion(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/flex-sdk/blob/418359c7/frameworks/projects/framework/tests/FLEX_34852_Tests.as ---------------------------------------------------------------------- diff --git a/frameworks/projects/framework/tests/FLEX_34852_Tests.as b/frameworks/projects/framework/tests/FLEX_34852_Tests.as index def9c99..654cb92 100644 --- a/frameworks/projects/framework/tests/FLEX_34852_Tests.as +++ b/frameworks/projects/framework/tests/FLEX_34852_Tests.as @@ -44,7 +44,7 @@ package { } [Test] - public function test_simple_ascending_sort_by_complex_string_fields():void + public function test_ascending_sort_by_complex_string_fields():void { //given var from4To0:IList = generateVOs(5, true); @@ -62,6 +62,28 @@ package { } [Test] + public function test_finding_items_works_after_ascending_sort_by_complex_string_fields():void + { + //given + var from4To0:IList = generateVOs(5, true); + _sut.addAll(from4To0); //values["address.street"]: Street4, Street3, Street2, Street1, Street0 + + const sortByStreetAscending:Sort = new Sort(); + sortByStreetAscending.fields = [new ComplexSortField("address.street", false, false, false)]; + _sut.sort = sortByStreetAscending; + + //when + _sut.refresh(); //should be: Street0, Street1, Street2, Street3, Street4 + + //then + for(var i:int = 0; i < from4To0.length; i++) + { + var vo:FLEX_34852_VO = from4To0.getItemAt(i) as FLEX_34852_VO; + assertEquals(vo.index, _sut.getItemIndex(vo)); + } + } + + [Test] public function test_simple_descending_sort_by_complex_string_fields():void { //given
