From f62e4fa973d7d5bda0917935b85a89fbdc8d72cb Mon Sep 17 00:00:00 2001 From: Shannon Date: Tue, 17 Dec 2013 11:42:03 +1100 Subject: [PATCH] adds/updates member type repo tests --- .../Repositories/MemberTypeRepositoryTest.cs | 71 +++++++++++-------- 1 file changed, 41 insertions(+), 30 deletions(-) diff --git a/src/Umbraco.Tests/Persistence/Repositories/MemberTypeRepositoryTest.cs b/src/Umbraco.Tests/Persistence/Repositories/MemberTypeRepositoryTest.cs index f51e50b57a..d237b9aefe 100644 --- a/src/Umbraco.Tests/Persistence/Repositories/MemberTypeRepositoryTest.cs +++ b/src/Umbraco.Tests/Persistence/Repositories/MemberTypeRepositoryTest.cs @@ -1,5 +1,6 @@ using System.Linq; using NUnit.Framework; +using Umbraco.Core; using Umbraco.Core.Models; using Umbraco.Core.Persistence; using Umbraco.Core.Persistence.Caching; @@ -45,9 +46,8 @@ namespace Umbraco.Tests.Persistence.Repositories } [Test] - public void MemberRepository_Can_Persist_Member_Type() + public void Can_Persist_Member_Type() { - IMemberType sut; var provider = new PetaPocoUnitOfWorkProvider(); var unitOfWork = provider.GetUnitOfWork(); using (var repository = CreateRepository(unitOfWork)) @@ -56,7 +56,7 @@ namespace Umbraco.Tests.Persistence.Repositories repository.AddOrUpdate(memberType); unitOfWork.Commit(); - sut = repository.Get(memberType.Id); + var sut = repository.Get(memberType.Id); Assert.That(sut, Is.Not.Null); Assert.That(sut.PropertyGroups.Count(), Is.EqualTo(1)); @@ -68,7 +68,7 @@ namespace Umbraco.Tests.Persistence.Repositories } [Test] - public void MemberRepository_Can_Get_All_Member_Types() + public void Can_Get_All_Member_Types() { var provider = new PetaPocoUnitOfWorkProvider(); var unitOfWork = provider.GetUnitOfWork(); @@ -92,48 +92,59 @@ namespace Umbraco.Tests.Persistence.Repositories } [Test] - public void MemberRepository_Can_Get_All_Member_When_No_Properties() + public void Can_Get_Member_Type_By_Id() { var provider = new PetaPocoUnitOfWorkProvider(); var unitOfWork = provider.GetUnitOfWork(); using (var repository = CreateRepository(unitOfWork)) { - var memberType1 = MockedContentTypes.CreateSimpleMemberType(); - memberType1.PropertyTypeCollection.Clear(); - repository.AddOrUpdate(memberType1); + IMemberType memberType = MockedContentTypes.CreateSimpleMemberType(); + repository.AddOrUpdate(memberType); unitOfWork.Commit(); - - var memberType2 = MockedContentTypes.CreateSimpleMemberType(); - memberType2.PropertyTypeCollection.Clear(); - memberType2.Name = "AnotherType"; - memberType2.Alias = "anotherType"; - repository.AddOrUpdate(memberType2); - unitOfWork.Commit(); - - var result = repository.GetAll(); - - //there are 3 because of the Member type created for init data - Assert.AreEqual(3, result.Count()); + memberType = repository.Get(memberType.Id); + Assert.That(memberType, Is.Not.Null); } } - [Test, NUnit.Framework.Ignore] - public void MemberTypeRepository_Can_Get_MemberType_By_Id() + [Test] + public void Built_In_Member_Type_Properties_Are_Automatically_Added_When_Creating() { var provider = new PetaPocoUnitOfWorkProvider(); var unitOfWork = provider.GetUnitOfWork(); using (var repository = CreateRepository(unitOfWork)) { - - var memberType = repository.Get(1340); - - Assert.That(memberType, Is.Not.Null); - Assert.That(memberType.PropertyTypes.Count(), Is.EqualTo(13)); - Assert.That(memberType.PropertyGroups.Any(), Is.False); - + IMemberType memberType = MockedContentTypes.CreateSimpleMemberType(); repository.AddOrUpdate(memberType); unitOfWork.Commit(); - Assert.That(memberType.PropertyTypes.Any(x => x.HasIdentity == false), Is.False); + + memberType = repository.Get(memberType.Id); + + Assert.That(memberType.PropertyTypes.Count(), Is.EqualTo(3 + Constants.Conventions.Member.StandardPropertyTypeStubs.Count)); + Assert.That(memberType.PropertyGroups.Count(), Is.EqualTo(1)); + } + } + + [Test] + public void Can_Delete_MemberType() + { + // Arrange + var provider = new PetaPocoUnitOfWorkProvider(); + var unitOfWork = provider.GetUnitOfWork(); + using (var repository = CreateRepository(unitOfWork)) + { + // Act + IMemberType memberType = MockedContentTypes.CreateSimpleMemberType(); + repository.AddOrUpdate(memberType); + unitOfWork.Commit(); + + var contentType2 = repository.Get(memberType.Id); + repository.Delete(contentType2); + unitOfWork.Commit(); + + var exists = repository.Exists(memberType.Id); + + // Assert + Assert.That(exists, Is.False); } } }