Fixing unit tests

This commit is contained in:
Sebastien Ros
2013-11-01 11:48:09 -07:00
parent de0c4345f0
commit 386c1b7d6d
5 changed files with 22 additions and 6 deletions

View File

@@ -11,7 +11,6 @@ using Orchard.ContentManagement.Handlers;
using Orchard.ContentManagement.Records;
using Orchard.Data;
using Orchard.Environment;
using Orchard.Environment.Configuration;
using Orchard.Security;
using Orchard.Tags.Handlers;
using Orchard.Tags.Models;
@@ -267,6 +266,7 @@ namespace Orchard.Tests.Modules.Tags.Services {
Assert.That(_contentManager.Get(thing1.Id).As<TagsPart>().CurrentTags.Any(t => t == "tag2"), Is.False);
Assert.That(_contentManager.Get(thing1.Id).As<TagsPart>().CurrentTags.Any(t => t == "tag3"), Is.True);
Assert.That(_contentManager.Get(thing2.Id).As<TagsPart>().CurrentTags.Any(t => t == "tag2"), Is.False);
Assert.That(_contentManager.Get(thing2.Id).As<TagsPart>().CurrentTags.Any(t => t == "tag3"), Is.True);
Assert.That(_contentManager.Get(thing3.Id).As<TagsPart>().CurrentTags.Any(t => t == "tag3"), Is.True);

View File

@@ -6,6 +6,7 @@ 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;
@@ -90,8 +91,9 @@ namespace Orchard.Tests.Modules.Users.Services {
builder.RegisterType<DefaultShapeTableManager>().As<IShapeTableManager>();
builder.RegisterType<DefaultShapeFactory>().As<IShapeFactory>();
builder.RegisterType<StubExtensionManager>().As<IExtensionManager>();
builder.RegisterInstance(new Mock<IPageClassBuilder>().Object);
builder.RegisterInstance(new Mock<IPageClassBuilder>().Object);
builder.RegisterType<DefaultContentDisplay>().As<IContentDisplay>();
builder.RegisterType<InfosetHandler>().As<IContentHandler>();
_session = _sessionFactory.OpenSession();
builder.RegisterInstance(new TestSessionLocator(_session)).As<ISessionLocator>();

View File

@@ -7,6 +7,7 @@ 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;
@@ -100,8 +101,9 @@ namespace Orchard.Tests.Modules.Users.Services {
builder.RegisterType<DefaultShapeTableManager>().As<IShapeTableManager>();
builder.RegisterType<DefaultShapeFactory>().As<IShapeFactory>();
builder.RegisterType<StubExtensionManager>().As<IExtensionManager>();
builder.RegisterInstance(new Mock<IPageClassBuilder>().Object);
builder.RegisterInstance(new Mock<IPageClassBuilder>().Object);
builder.RegisterType<DefaultContentDisplay>().As<IContentDisplay>();
builder.RegisterType<InfosetHandler>().As<IContentHandler>();
builder.RegisterType<DefaultEncryptionService>().As<IEncryptionService>();
builder.RegisterInstance(ShellSettingsUtility.CreateEncryptionEnabled());

View File

@@ -6,6 +6,8 @@ using System.Xml;
using Autofac;
using Moq;
using NUnit.Framework;
using Orchard.ContentManagement.FieldStorage.InfosetStorage;
using Orchard.ContentManagement.Handlers;
using Orchard.Environment.Configuration;
using Orchard.Environment.Warmup;
using Orchard.FileSystems.AppData;
@@ -55,7 +57,9 @@ namespace Orchard.Tests.Modules.Warmup {
((StubWorkContextAccessor.WorkContextImpl.StubSite) _orchardServices.WorkContext.CurrentSite).BaseUrl = "http://orchardproject.net";
_settings = new WarmupSettingsPart();
_orchardServices.WorkContext.CurrentSite.ContentItem.Weld(_settings);
_orchardServices.WorkContext.CurrentSite.ContentItem.Weld(new InfosetPart());
var builder = new ContainerBuilder();
builder.RegisterInstance(_appDataFolder).As<IAppDataFolder>();

View File

@@ -94,17 +94,20 @@ namespace Orchard.Tags.Services {
var tagsContentItems = _contentTagRepository.Fetch(x => x.TagRecord.Id == tagId);
// get contentItems already tagged with the existing one
var taggedContentItems = GetTaggedContentItems(tagRecord.Id);
var taggedContentItems = GetTaggedContentItems(tagRecord.Id).ToArray();
var oldTag = GetTag(tagId);
foreach (var tagContentItem in tagsContentItems) {
ContentTagRecord item = tagContentItem;
if (!taggedContentItems.Any(c => c.ContentItem.Id == item.TagsPartRecord.Id)) {
// does the content item already have the new tag ?
if (taggedContentItems.All(c => c.ContentItem.Id != item.TagsPartRecord.Id)) {
TagContentItem(tagContentItem.TagsPartRecord, tagName);
}
UntagContentItem(tagContentItem.TagsPartRecord, oldTag.TagName);
_contentTagRepository.Delete(tagContentItem);
}
_tagRepository.Delete(GetTag(tagId));
_tagRepository.Delete(oldTag);
return;
}
@@ -155,6 +158,11 @@ namespace Orchard.Tags.Services {
_contentTagRepository.Create(tagsContentItems);
}
private void UntagContentItem(TagsPartRecord tagsPartRecord, string tagName) {
var tagPart = _orchardServices.ContentManager.Get<TagsPart>(tagsPartRecord.Id, VersionOptions.Latest);
tagPart.CurrentTags = tagPart.CurrentTags.Where(x => x != tagName);
}
public void RemoveTagsForContentItem(ContentItem contentItem) {
if (contentItem.Id == 0)
throw new OrchardException(T("Error removing tag to content item: the content item has not been created yet."));