Skip to content

Commit

Permalink
Merge pull request #255 from twiernik/master
Browse files Browse the repository at this point in the history
Moving from RhinoMocks to FakeItEasy
  • Loading branch information
chester89 committed Dec 20, 2013
2 parents 2cadff4 + b779ae1 commit 65884f1
Show file tree
Hide file tree
Showing 24 changed files with 286 additions and 371 deletions.
@@ -1,8 +1,8 @@
using FluentNHibernate.Automapping;
using FakeItEasy;
using FluentNHibernate.Automapping;
using FluentNHibernate.Automapping.Alterations;
using FluentNHibernate.Automapping.TestFixtures;
using NUnit.Framework;
using Rhino.Mocks;

namespace FluentNHibernate.Testing.Automapping.Apm
{
Expand All @@ -21,13 +21,13 @@ public void CreateAutoMapper()
[Test]
public void ShouldApplyAlterationsToModel()
{
var alteration = MockRepository.GenerateMock<IAutoMappingAlteration>();
var alteration = A.Fake<IAutoMappingAlteration>();

model
.Alterations(alterations => alterations.Add(alteration))
.BuildMappings();

alteration.AssertWasCalled(x => x.Alter(model));
A.CallTo(() => alteration.Alter(model)).MustHaveHappened();
}

[Test]
Expand Down
@@ -1,4 +1,5 @@
using System.Linq;
using FakeItEasy;
using FluentNHibernate.Automapping;
using FluentNHibernate.Cfg;
using FluentNHibernate.Cfg.Db;
Expand All @@ -22,7 +23,7 @@ public class MappingConfigurationTests
[SetUp]
public void CreateMappingConfiguration()
{
logger = Stub<IDiagnosticLogger>.Create();
logger = A.Fake<IDiagnosticLogger>();
cfg = new Configuration();

SQLiteConfiguration.Standard
Expand Down
Expand Up @@ -2,13 +2,13 @@
using System.Collections.Generic;
using System.Linq;
using System.Text;
using FakeItEasy;
using FluentNHibernate.Conventions;
using FluentNHibernate.Conventions.Inspections;
using FluentNHibernate.Conventions.Instances;
using FluentNHibernate.Mapping;
using FluentNHibernate.MappingModel;
using NUnit.Framework;
using Rhino.Mocks;

namespace FluentNHibernate.Testing.ConventionsTests
{
Expand All @@ -20,147 +20,145 @@ public void ConventionSetsProxyOnProxiedClass()
{
ProxyConvention convention = GetConvention();

var classInstance = MockRepository.GenerateMock<IClassInstance>();
classInstance.Expect(x => x.EntityType)
.Return(typeof(ProxiedObject));

var classInstance = A.Fake<IClassInstance>();
A.CallTo(() => classInstance.EntityType).Returns(typeof(ProxiedObject));

convention.Apply(classInstance);

classInstance.AssertWasCalled(x => x.Proxy(typeof(IProxiedObject)));
A.CallTo(() => classInstance.Proxy(typeof(IProxiedObject)))
.MustHaveHappened();
}

[Test]
public void ConventionSetsProxyOnProxiedSubclass()
{
ProxyConvention convention = GetConvention();

var classInstance = MockRepository.GenerateMock<ISubclassInstance>();
classInstance.Expect(x => x.EntityType)
.Return(typeof(ProxiedObject));
var classInstance = A.Fake<ISubclassInstance>();
A.CallTo(() => classInstance.EntityType).Returns(typeof(ProxiedObject));

convention.Apply(classInstance);

classInstance.AssertWasCalled(x => x.Proxy(typeof(IProxiedObject)));
A.CallTo(() => classInstance.Proxy(typeof(IProxiedObject)))
.MustHaveHappened();
}

[Test]
public void ConventionDoesNotSetProxyOnUnproxiedClass()
{
ProxyConvention convention = GetConvention();

var classInstance = MockRepository.GenerateMock<IClassInstance>();
classInstance.Stub(x => x.EntityType)
.Return(typeof(NotProxied));
var classInstance = A.Fake<IClassInstance>();
A.CallTo(() => classInstance.EntityType).Returns(typeof(NotProxied));

convention.Apply(classInstance);

classInstance.AssertWasNotCalled(x => x.Proxy(Arg<Type>.Is.Anything));
A.CallTo(() => classInstance.Proxy(A<Type>._)).MustNotHaveHappened();
}

[Test]
public void ConventionDoesNotSetProxyOnUnproxiedSubclass()
{
ProxyConvention convention = GetConvention();

var classInstance = MockRepository.GenerateMock<ISubclassInstance>();
classInstance.Stub(x => x.EntityType)
.Return(typeof(NotProxied));
var classInstance = A.Fake<ISubclassInstance>();
A.CallTo(() => classInstance.EntityType).Returns(typeof(NotProxied));

convention.Apply(classInstance);

classInstance.AssertWasNotCalled(x => x.Proxy(Arg<Type>.Is.Anything));
A.CallTo(() => classInstance.Proxy(A<Type>._)).MustNotHaveHappened();
}

[Test]
public void ConventionSetsProxiedCollectionChildTypeToConcreteType()
{
ProxyConvention convention = GetConvention();

var collectionInstance = MockRepository.GenerateMock<ICollectionInstance>();
var relationship = MockRepository.GenerateMock<IRelationshipInstance>();
var collectionInstance = A.Fake<ICollectionInstance>();
var relationship = A.Fake<IRelationshipInstance>();

collectionInstance.Stub(x => x.Relationship)
.Return(relationship);
relationship.Stub(x => x.Class)
.Return(new TypeReference(typeof(IProxiedObject)));
A.CallTo(() => collectionInstance.Relationship).Returns(relationship);
A.CallTo(() => relationship.Class).Returns(new TypeReference(typeof(IProxiedObject)));

convention.Apply(collectionInstance);

relationship.AssertWasCalled(x => x.CustomClass(typeof(ProxiedObject)));
A.CallTo(() => relationship.CustomClass(typeof(ProxiedObject)))
.MustHaveHappened();
}

[Test]
public void ConventionDoesNotSetCollectionChildTypeIfUnrecognised()
{
ProxyConvention convention = GetConvention();

var collectionInstance = MockRepository.GenerateMock<ICollectionInstance>();
var relationship = MockRepository.GenerateMock<IRelationshipInstance>();
var collectionInstance = A.Fake<ICollectionInstance>();
var relationship = A.Fake<IRelationshipInstance>();

collectionInstance.Stub(x => x.Relationship)
.Return(relationship);
relationship.Stub(x => x.Class)
.Return(new TypeReference(typeof(NotProxied)));
A.CallTo(() => collectionInstance.Relationship).Returns(relationship);
A.CallTo(() => relationship.Class).Returns(new TypeReference(typeof(NotProxied)));

convention.Apply(collectionInstance);

relationship.AssertWasNotCalled(x => x.CustomClass(Arg<Type>.Is.Anything));
A.CallTo(() => relationship.CustomClass(A<Type>._))
.MustNotHaveHappened();
}

[Test]
public void ConventionSetsProxiedManyToOneTypeToConcreteType()
{
ProxyConvention convention = GetConvention();

var manyToOneInstance = MockRepository.GenerateMock<IManyToOneInstance>();
manyToOneInstance.Stub(x => x.Class)
.Return(new TypeReference(typeof(IProxiedObject)));
var manyToOneInstance = A.Fake<IManyToOneInstance>();
A.CallTo(() => manyToOneInstance.Class).Returns(new TypeReference(typeof(IProxiedObject)));

convention.Apply(manyToOneInstance);

manyToOneInstance.AssertWasCalled(x => x.OverrideInferredClass(typeof(ProxiedObject)));
A.CallTo(() => manyToOneInstance.OverrideInferredClass(typeof(ProxiedObject)))
.MustHaveHappened();
}

[Test]
public void ConventionDoesNotSetManyToOneTypeIfUnrecognised()
{
ProxyConvention convention = GetConvention();

var manyToOneInstance = MockRepository.GenerateMock<IManyToOneInstance>();
manyToOneInstance.Stub(x => x.Class)
.Return(new TypeReference(typeof(NotProxied)));
var manyToOneInstance = A.Fake<IManyToOneInstance>();
A.CallTo(() => manyToOneInstance.Class).Returns(new TypeReference(typeof(NotProxied)));

convention.Apply(manyToOneInstance);

manyToOneInstance.AssertWasNotCalled(x => x.OverrideInferredClass(typeof(ProxiedObject)));
A.CallTo(() => manyToOneInstance.OverrideInferredClass(typeof(ProxiedObject)))
.MustNotHaveHappened();
}

[Test]
public void ConventionSetsProxiedOneToOneTypeToConcreteType()
{
ProxyConvention convention = GetConvention();

var oneToOneInstance = MockRepository.GenerateMock<IOneToOneInstance>();
oneToOneInstance.Stub(x => ((IOneToOneInspector)x).Class)
.Return(new TypeReference(typeof(IProxiedObject)));
var oneToOneInstance = A.Fake<IOneToOneInstance>();
A.CallTo(() => ((IOneToOneInspector)oneToOneInstance).Class)
.Returns(new TypeReference(typeof(IProxiedObject)));

convention.Apply(oneToOneInstance);

oneToOneInstance.AssertWasCalled(x => x.OverrideInferredClass(typeof(ProxiedObject)));
A.CallTo(() => oneToOneInstance.OverrideInferredClass(typeof(ProxiedObject)))
.MustHaveHappened();
}

[Test]
public void ConventionDoesNotSetOneToOneTypeIfUnrecognised()
{
ProxyConvention convention = GetConvention();

var oneToOneInstance = MockRepository.GenerateMock<IOneToOneInstance>();
oneToOneInstance.Stub(x => ((IOneToOneInspector)x).Class)
.Return(new TypeReference(typeof(NotProxied)));
var oneToOneInstance = A.Fake<IOneToOneInstance>();
A.CallTo(() => ((IOneToOneInspector)oneToOneInstance).Class)
.Returns(new TypeReference(typeof(NotProxied)));

convention.Apply(oneToOneInstance);

oneToOneInstance.AssertWasNotCalled(x => x.OverrideInferredClass(typeof(ProxiedObject)));
A.CallTo(() => oneToOneInstance.OverrideInferredClass(typeof(ProxiedObject)))
.MustNotHaveHappened();
}

private static ProxyConvention GetConvention()
Expand Down
@@ -1,7 +1,7 @@
using FluentNHibernate.Diagnostics;
using FakeItEasy;
using FluentNHibernate.Diagnostics;
using FluentNHibernate.Testing.Utils;
using NUnit.Framework;
using Rhino.Mocks;

namespace FluentNHibernate.Testing.Diagnostics
{
Expand Down Expand Up @@ -33,35 +33,38 @@ public void disabling_should_set_logger_to_null_impl()
[Test]
public void adding_listener_should_add_listener_to_underlying_dispatcher()
{
var dispatcher = Mock<IDiagnosticMessageDispatcher>.Create();
var listener = Stub<IDiagnosticListener>.Create();
var dispatcher = A.Fake<IDiagnosticMessageDispatcher>();
var listener = A.Fake<IDiagnosticListener>();

new DiagnosticsConfiguration(dispatcher, l => { })
.RegisterListener(listener);

dispatcher.AssertWasCalled(x => x.RegisterListener(listener));
A.CallTo(() => dispatcher.RegisterListener(listener))
.MustHaveHappened();
}

[Test]
public void output_to_console_should_register_console_listener()
{
var dispatcher = Mock<IDiagnosticMessageDispatcher>.Create();
var dispatcher = A.Fake<IDiagnosticMessageDispatcher>();

new DiagnosticsConfiguration(dispatcher, l => { })
.OutputToConsole();

dispatcher.AssertWasCalled(x => x.RegisterListener(Arg<ConsoleOutputListener>.Is.TypeOf));
A.CallTo(() => dispatcher.RegisterListener(A<ConsoleOutputListener>._))
.MustHaveHappened();
}

[Test]
public void output_to_file_should_register_console_listener()
{
var dispatcher = Mock<IDiagnosticMessageDispatcher>.Create();
var dispatcher = A.Fake<IDiagnosticMessageDispatcher>();

new DiagnosticsConfiguration(dispatcher, l => { })
.OutputToFile("path");

dispatcher.AssertWasCalled(x => x.RegisterListener(Arg<FileOutputListener>.Is.TypeOf));
A.CallTo(() => dispatcher.RegisterListener(A<FileOutputListener>._))
.MustHaveHappened();
}
}
}

0 comments on commit 65884f1

Please sign in to comment.