title: How to mock ObservableCollection
body: <p>I have the following:</p>
  
  <pre><code>class foo : ObservableCollection&lt;Int32&gt;
  {
    //Stuff
  }
  
  
  [Test]
  public void test()
  {
    var foo = Mock.Of&lt;foo&gt;();
    int count = 0;
    Mock.Get(foo).Setup(x =&gt; x.Add(It.IsAny&lt;Int32&gt;())).Callback(() =&gt; count++);
    Mock.Get(foo).Setup(x =&gt; x.Count).Returns(() =&gt; count);
    //Do Stuff
  }
  </code></pre>
  
  <p>However, <code>Add</code> and <code>Count</code> and especially the <code>indexer[]</code> are not overrideable. Is my only recourse, to create <code>Addfoo</code> that calls <code>Add</code> in my foo class, etc?</p>