title: Acceptance tests and computed properties
body: <p>I'm having some issues running an acceptance test where a DOM click fires off an update to a computed property that makes an update to the DOM.</p>
  
  <p>I dumbed down my issue with <a href="https://github.com/odoe/ember-acceptance-test-demo" rel="nofollow">this demo repo</a>.</p>
  
  <p>I have a basic template</p>
  
  <pre><code>&lt;!-- app/templates/application.hbs --&gt;
  &lt;a href='#' {{action 'upperNames' 'upper'}}&gt;Show UPPER&lt;/a&gt;
  &lt;div class="name-container"&gt;
    {{#each names as |name|}}
    &lt;p&gt;{{name}}&lt;/p&gt;
    {{/each}}
  &lt;/div&gt;
  </code></pre>
  
  <p>The action hits a Controller that simply sets some props and triggers the computed property</p>
  
  <pre><code>// app/controllers/application.js
  export default Ember.Controller.extend({
    fakeService: Ember.inject.service('fake'),
    update: null,
    names: Ember.computed('fakeService.names.@each', 'update', function() {
      var names = this.get('fakeService.names');
      if (!names || !this.update) {
        return null;
      }
      return names.map(name =&gt; name.toUpperCase() + ' - ' + this.update);
    }),
    actions: {
      upperNames: function(update) {
        // I'd normall update this service via a different component
        // but do it here to simplify sample
        Ember.run(() =&gt; {
          this.get('fakeService').set('upper', update);
          this.set('update', update);
        });
      }
    }
  });
  </code></pre>
  
  <p>The app works fine, as intended.</p>
  
  <p>If I try to run an acceptance test though, it always fails</p>
  
  <pre><code>test('click and display names', function(assert) {
    visit('/');
    click('a[href=#]');
    andThen(function() {
      waitFor(function() {
        assert.equal(find('.name-container').children().length, 4);
      });
    });
  });
  </code></pre>
  
  <p>This is the output in HTML runner</p>
  
  <pre><code>// test failure
  failed@ 1033 ms
  Expected:   4
  Result:     0
  </code></pre>
  
  <p>I even set a ridiculously long timeout and clicked on the link in the app that shows up on my test page and get no results. I can see all the console logs from the controller and the service, but no DOM updates happen.</p>
  
  <p>I'm guessing I'm just not familiar enough with QUnit or acceptance tests with ember-cli and I'm doing something wrong, but I'm not sure.</p>
  
  <p>Any guidance in the right direction would be helpful.</p>
  
  <p>Thanks!</p>