Fixing membership unit tests

This commit is contained in:
Sebastien Ros
2017-01-03 16:35:40 -08:00
parent e49faa7cff
commit 406016d12c
3 changed files with 52 additions and 28 deletions

View File

@@ -1,39 +1,39 @@
using System;
using System.Web.Security;
using System.Xml.Linq;
using Autofac;
using Moq;
using NHibernate;
using NUnit.Framework;
using Orchard.Caching;
using Orchard.ContentManagement.FieldStorage.InfosetStorage;
using Orchard.ContentManagement.MetaData;
using Orchard.ContentManagement.MetaData.Models;
using Orchard.ContentManagement.MetaData.Services;
using Orchard.Core.Settings.Metadata;
using Orchard.Data;
using Orchard.ContentManagement;
using Orchard.ContentManagement.FieldStorage.InfosetStorage;
using Orchard.ContentManagement.Handlers;
using Orchard.ContentManagement.MetaData;
using Orchard.ContentManagement.MetaData.Services;
using Orchard.ContentManagement.Records;
using Orchard.Core.Settings.Handlers;
using Orchard.Core.Settings.Metadata;
using Orchard.Core.Settings.Services;
using Orchard.Data;
using Orchard.DisplayManagement;
using Orchard.DisplayManagement.Descriptors;
using Orchard.DisplayManagement.Implementation;
using Orchard.Environment;
using Orchard.Environment.Configuration;
using Orchard.Environment.Extensions;
using Orchard.Messaging.Events;
using Orchard.Messaging.Services;
using Orchard.Security;
using Orchard.Services;
using Orchard.Settings;
using Orchard.Tests.ContentManagement;
using Orchard.Tests.Stubs;
using Orchard.Tests.Utility;
using Orchard.UI.PageClass;
using Orchard.Users.Handlers;
using Orchard.Users.Models;
using Orchard.Users.Services;
using Orchard.Tests.ContentManagement;
using Orchard.Services;
namespace Orchard.Tests.Modules.Users.Services {
namespace Orchard.Tests.Modules.Users.Services
{
[TestFixture]
public class MembershipServiceTests {
private IMembershipValidationService _membershipValidationService;
@@ -42,6 +42,8 @@ namespace Orchard.Tests.Modules.Users.Services {
private ISession _session;
private IContainer _container;
private StubClock _clock;
private Mock<WorkContext> _workContext;
[TestFixtureSetUp]
public void InitFixture() {
var databaseFileName = System.IO.Path.GetTempFileName();
@@ -73,7 +75,7 @@ namespace Orchard.Tests.Modules.Users.Services {
builder.RegisterType<DefaultContentManagerSession>().As<IContentManagerSession>();
builder.RegisterInstance(new ShellSettings { Name = ShellSettings.DefaultName, DataProvider = "SqlCe" });
builder.RegisterType<UserPartHandler>().As<IContentHandler>();
builder.RegisterType<StubWorkContextAccessor>().As<IWorkContextAccessor>();
//builder.RegisterType<StubWorkContextAccessor>().As<IWorkContextAccessor>();
builder.RegisterType<OrchardServices>().As<IOrchardServices>();
builder.RegisterAutoMocking(MockBehavior.Loose);
builder.RegisterGeneric(typeof(Repository<>)).As(typeof(IRepository<>));
@@ -84,10 +86,20 @@ namespace Orchard.Tests.Modules.Users.Services {
builder.RegisterInstance(new Mock<IPageClassBuilder>().Object);
builder.RegisterType<DefaultContentDisplay>().As<IContentDisplay>();
builder.RegisterType<InfosetHandler>().As<IContentHandler>();
builder.RegisterType<SiteService>().As<ISiteService>();
builder.RegisterType<SiteSettingsPartHandler>().As<IContentHandler>();
builder.RegisterType<RegistrationSettingsPartHandler>().As<IContentHandler>();
_session = _sessionFactory.OpenSession();
builder.RegisterInstance(new TestTransactionManager(_session)).As<ITransactionManager>();
_workContext = new Mock<WorkContext>();
_workContext.Setup(w => w.GetState<ISite>(It.Is<string>(s => s == "CurrentSite"))).Returns(() => { return _container.Resolve<ISiteService>().GetSiteSettings(); });
var _workContextAccessor = new Mock<IWorkContextAccessor>();
_workContextAccessor.Setup(w => w.GetContext()).Returns(_workContext.Object);
builder.RegisterInstance(_workContextAccessor.Object).As<IWorkContextAccessor>();
_container = builder.Build();
_membershipValidationService = _container.Resolve<IMembershipValidationService>();
_membershipService = _container.Resolve<IMembershipService>();

View File

@@ -1,42 +1,43 @@
using System;
using System.Globalization;
using System.Threading;
using System.Xml.Linq;
using Autofac;
using Moq;
using NHibernate;
using NUnit.Framework;
using Orchard.Caching;
using Orchard.ContentManagement.FieldStorage.InfosetStorage;
using Orchard.ContentManagement.MetaData;
using Orchard.ContentManagement.MetaData.Models;
using Orchard.ContentManagement.MetaData.Services;
using Orchard.Core.Settings.Metadata;
using Orchard.Data;
using Orchard.ContentManagement;
using Orchard.ContentManagement.FieldStorage.InfosetStorage;
using Orchard.ContentManagement.Handlers;
using Orchard.ContentManagement.MetaData;
using Orchard.ContentManagement.MetaData.Services;
using Orchard.ContentManagement.Records;
using Orchard.Core.Settings.Handlers;
using Orchard.Core.Settings.Metadata;
using Orchard.Core.Settings.Services;
using Orchard.Data;
using Orchard.DisplayManagement;
using Orchard.DisplayManagement.Descriptors;
using Orchard.DisplayManagement.Implementation;
using Orchard.Environment;
using Orchard.Environment.Extensions;
using Orchard.Messaging.Events;
using Orchard.Messaging.Services;
using Orchard.Security;
using Orchard.Security.Providers;
using Orchard.Services;
using Orchard.Settings;
using Orchard.Tests.ContentManagement;
using Orchard.Tests.Messaging;
using Orchard.Tests.Modules.Stubs;
using Orchard.Tests.Stubs;
using Orchard.Tests.Utility;
using Orchard.UI.PageClass;
using Orchard.Users.Handlers;
using Orchard.Users.Models;
using Orchard.Users.Services;
using Orchard.Services;
using Orchard.Tests.Messaging;
using Orchard.Tests.Modules.Stubs;
using Orchard.Tests.ContentManagement;
namespace Orchard.Tests.Modules.Users.Services {
namespace Orchard.Tests.Modules.Users.Services
{
[TestFixture]
public class UserServiceTests {
private IMembershipService _membershipService;
@@ -47,6 +48,7 @@ namespace Orchard.Tests.Modules.Users.Services {
private ISession _session;
private IContainer _container;
private CultureInfo _currentCulture;
private Mock<WorkContext> _workContext;
[TestFixtureSetUp]
public void InitFixture() {
@@ -92,6 +94,16 @@ namespace Orchard.Tests.Modules.Users.Services {
builder.RegisterInstance(new Mock<IPageClassBuilder>().Object);
builder.RegisterType<DefaultContentDisplay>().As<IContentDisplay>();
builder.RegisterType<InfosetHandler>().As<IContentHandler>();
builder.RegisterType<SiteService>().As<ISiteService>();
builder.RegisterType<SiteSettingsPartHandler>().As<IContentHandler>();
builder.RegisterType<RegistrationSettingsPartHandler>().As<IContentHandler>();
_workContext = new Mock<WorkContext>();
_workContext.Setup(w => w.GetState<ISite>(It.Is<string>(s => s == "CurrentSite"))).Returns(() => { return _container.Resolve<ISiteService>().GetSiteSettings(); });
var _workContextAccessor = new Mock<IWorkContextAccessor>();
_workContextAccessor.Setup(w => w.GetContext()).Returns(_workContext.Object);
builder.RegisterInstance(_workContextAccessor.Object).As<IWorkContextAccessor>();
builder.RegisterType<DefaultEncryptionService>().As<IEncryptionService>();
builder.RegisterInstance(ShellSettingsUtility.CreateEncryptionEnabled());

View File

@@ -56,7 +56,7 @@ namespace Orchard.Users.Services {
public ILogger Logger { get; set; }
public Localizer T { get; set; }
public IMembershipSettings GetSettings(){
public IMembershipSettings GetSettings() {
return _orchardServices.WorkContext.CurrentSite.As<RegistrationSettingsPart>();
}