blob: 504d5986e72213a88a2a295911b29fd84b21a26a (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
|
using Marina.Infrastructure.Container;
using Marina.Infrastructure.Logging.Interfaces;
using MbUnit.Framework;
using Rhino.Mocks;
namespace Marina.Test.Unit.Infrastructure.Logging.Interfaces {
[TestFixture]
public class LogTest {
private MockRepository mockery;
[SetUp]
public void SetUp( ) {
mockery = new MockRepository( );
}
[Test]
public void Should_leverage_factory_to_return_a_logger_to_the_client( ) {
ILog mockLog = mockery.DynamicMock< ILog >( );
ILogFactory mockLogFactory = mockery.DynamicMock< ILogFactory >( );
IDependencyContainer mockContainer = mockery.DynamicMock< IDependencyContainer >( );
using ( mockery.Record( ) ) {
Expect.Call( mockContainer.GetMeAnImplementationOfAn< ILogFactory >( ) ).Return( mockLogFactory );
Expect.Call( mockLogFactory.CreateFor( typeof( LogTest ) ) ).Return( mockLog );
}
using ( mockery.Playback( ) ) {
Resolve.InitializeWith( mockContainer );
ILog log = Log.For( this );
Assert.AreEqual( mockLog, log );
Resolve.InitializeWith( null );
}
}
}
}
|