emberjs/ember.js — pull request #1346 by elucid (2012-09-01 20:49:08+00:00)
Title: adding failing test for ArrayProxy observer invocation

Adding test to demonstrate the underlying problem behind the `addObject`, `removeObject`, etc. wrappers in `SortableMixin`. c.f. #1311

@tomdale: this is what I was talking about yesterday afternoon in chat. In #1311 I suggested removing `replaceContent` from `ArrayProxy` and just having `ArrayProxy#replace` delegate to `content.replace`. If this is done, the above test will pass. But as @tchak points out, that's probably not a good idea. `replaceContent` is part of the public API for `ArrayProxy` and is useful.

That's fine but I want to resolve the issue of the array observers not firing if `replace` is ultimately called on `arrangedContent` instead of `content` (i.e. when `arrangedContent` and `content` are not the same object).

The above test is a simplified version of what happens inside of `SortableMixin` when you have `sortProperties` set.