master
1using System.Collections.Generic;
2using MbUnit.Framework;
3using Notepad.Domain.Repositories;
4using Notepad.Infrastructure.Container;
5using Rhino.Mocks;
6
7namespace Notepad.DataAccess.Repositories {
8 public class DefaultRepositorySpecs {}
9
10 [TestFixture]
11 public class when_retrieving_all_the_items_from_the_default_repository {
12 private MockRepository mockery;
13 private IDependencyRegistry registry;
14
15 [SetUp]
16 public void SetUp() {
17 mockery = new MockRepository();
18 registry = mockery.DynamicMock<IDependencyRegistry>();
19 }
20
21 [Test]
22 public void should_leverage_the_resolver_to_retrieve_all_the_implementations() {
23 var intsToReturn = new List<int>();
24
25 using (mockery.Record()) {
26 Expect
27 .Call(registry.AllImplementationsOf<int>())
28 .Return(intsToReturn)
29 .Repeat
30 .AtLeastOnce();
31 }
32
33 using (mockery.Playback()) {
34 CreateSUT().All();
35 }
36 }
37
38 private IRepository<int> CreateSUT() {
39 return new DefaultRepository<int>(registry);
40 }
41 }
42}