From a2747b933af18f2676ad22b697f2440de800ca69 Mon Sep 17 00:00:00 2001 From: Sebastien Ros Date: Thu, 2 Sep 2010 17:10:05 -0700 Subject: [PATCH] Corrected unit tests --HG-- branch : dev --- .../Users/Controllers/AdminControllerTests.cs | 5 +++++ .../Users/Services/MembershipServiceTests.cs | 7 +++++++ .../Orchard.Users/Services/MembershipService.cs | 14 +++++++++++--- 3 files changed, 23 insertions(+), 3 deletions(-) diff --git a/src/Orchard.Tests.Modules/Users/Controllers/AdminControllerTests.cs b/src/Orchard.Tests.Modules/Users/Controllers/AdminControllerTests.cs index 759fca5f7..952eaf119 100644 --- a/src/Orchard.Tests.Modules/Users/Controllers/AdminControllerTests.cs +++ b/src/Orchard.Tests.Modules/Users/Controllers/AdminControllerTests.cs @@ -10,6 +10,7 @@ using NUnit.Framework; using Orchard.ContentManagement.MetaData; using Orchard.ContentManagement.MetaData.Models; using Orchard.ContentManagement.MetaData.Services; +using Orchard.Core.Messaging.Services; using Orchard.Core.Settings.Metadata; using Orchard.Data; using Orchard.Environment; @@ -17,6 +18,8 @@ using Orchard.ContentManagement; using Orchard.ContentManagement.Handlers; using Orchard.ContentManagement.Records; using Orchard.Localization; +using Orchard.Messaging.Events; +using Orchard.Messaging.Services; using Orchard.Security; using Orchard.Security.Permissions; using Orchard.UI.Notify; @@ -41,6 +44,8 @@ namespace Orchard.Tests.Modules.Users.Controllers { builder.RegisterType().As(); builder.RegisterType().As(); builder.RegisterType().As().InstancePerDependency(); + builder.RegisterType().As(); + builder.RegisterInstance(new Mock().Object); builder.RegisterType().As(); builder.RegisterType().As(); builder.RegisterType().As(); diff --git a/src/Orchard.Tests.Modules/Users/Services/MembershipServiceTests.cs b/src/Orchard.Tests.Modules/Users/Services/MembershipServiceTests.cs index acbff5dcd..8beb43b88 100644 --- a/src/Orchard.Tests.Modules/Users/Services/MembershipServiceTests.cs +++ b/src/Orchard.Tests.Modules/Users/Services/MembershipServiceTests.cs @@ -2,16 +2,20 @@ using System.Web.Security; using System.Xml.Linq; using Autofac; +using Moq; using NHibernate; using NUnit.Framework; using Orchard.ContentManagement.MetaData; using Orchard.ContentManagement.MetaData.Models; using Orchard.ContentManagement.MetaData.Services; +using Orchard.Core.Messaging.Services; using Orchard.Core.Settings.Metadata; using Orchard.Data; using Orchard.ContentManagement; using Orchard.ContentManagement.Handlers; using Orchard.ContentManagement.Records; +using Orchard.Messaging.Events; +using Orchard.Messaging.Services; using Orchard.Security; using Orchard.Users.Handlers; using Orchard.Users.Models; @@ -59,6 +63,7 @@ namespace Orchard.Tests.Modules.Users.Services { var builder = new ContainerBuilder(); //builder.RegisterModule(new ImplicitCollectionSupportModule()); builder.RegisterType().As(); + builder.RegisterType().As(); builder.RegisterType().As(); builder.RegisterType(typeof(SettingsFormatter)) .As(typeof(IMapper)) @@ -67,6 +72,8 @@ namespace Orchard.Tests.Modules.Users.Services { builder.RegisterType().As(); builder.RegisterType().As(); builder.RegisterGeneric(typeof(Repository<>)).As(typeof(IRepository<>)); + builder.RegisterInstance(new Mock().Object); + builder.RegisterType().As(); _session = _sessionFactory.OpenSession(); builder.RegisterInstance(new TestSessionLocator(_session)).As(); _container = builder.Build(); diff --git a/src/Orchard.Web/Modules/Orchard.Users/Services/MembershipService.cs b/src/Orchard.Web/Modules/Orchard.Users/Services/MembershipService.cs index 039e35e3a..c82191825 100644 --- a/src/Orchard.Web/Modules/Orchard.Users/Services/MembershipService.cs +++ b/src/Orchard.Web/Modules/Orchard.Users/Services/MembershipService.cs @@ -52,8 +52,16 @@ namespace Orchard.Users.Services { user.Record.NormalizedUserName = createUserParams.Username.ToLower(); user.Record.HashAlgorithm = "SHA1"; SetPassword(user.Record, createUserParams.Password); - user.Record.RegistrationStatus = registrationSettings.UsersAreModerated && !createUserParams.IsApproved ? UserStatus.Pending : UserStatus.Approved; - user.Record.EmailStatus = registrationSettings.UsersMustValidateEmail && !createUserParams.IsApproved ? UserStatus.Pending : UserStatus.Approved; + + if ( registrationSettings != null ) { + user.Record.RegistrationStatus = registrationSettings.UsersAreModerated ? UserStatus.Pending : UserStatus.Approved; + user.Record.EmailStatus = registrationSettings.UsersMustValidateEmail ? UserStatus.Pending : UserStatus.Approved; + } + + if(createUserParams.IsApproved) { + user.Record.RegistrationStatus = UserStatus.Approved; + user.Record.EmailStatus = UserStatus.Approved; + } var userContext = new UserContext {User = user, Cancel = false}; foreach(var userEventHandler in _userEventHandlers) { @@ -70,7 +78,7 @@ namespace Orchard.Users.Services { userEventHandler.Created(userContext); } - if ( registrationSettings.UsersAreModerated && registrationSettings.NotifyModeration && !createUserParams.IsApproved ) { + if ( registrationSettings != null && registrationSettings.UsersAreModerated && registrationSettings.NotifyModeration && !createUserParams.IsApproved ) { var superUser = GetUser(CurrentSite.SuperUser); if(superUser != null) _messageManager.Send(superUser.ContentItem.Record, MessageTypes.Moderation);