title: How to test a service that interacts with Firebase?
body: <p>It seems like the convention for grabbing data from Firebase is to create a service class that uses AngularFire internally.  Then, in your app's components, you can inject and use the service.  This allows you to easily mock out the service when unit testing your components.</p>
  
  <p>But, I'm still not clear on how to go about testing the actual service itself.</p>
  
  <p>As an example, say I have a <code>todo list</code> node in Firebase and I have a simple service that grabs all of the <code>todos</code>, like so:</p>
  
  <pre class="lang-js prettyprint-override"><code>import { Injectable } from '@angular/core';
  import { AngularFire } from 'angularfire2';
  
  @Injectable()
  export class TodoService {
    constructor(private af: AngularFire) { }
  
    getAll(): FirebaseListObservable&lt;any[]&gt; {
      return this.af.database.list('todos');
    }
  }
  </code></pre>
  
  <p>How would you go about testing that this service does what you expect?</p>