Fixes regression bug after having updated the expression helpers yesterday

This commit is contained in:
Morten Christensen
2013-01-11 08:52:38 -01:00
parent e306bc15bf
commit b6141189cf
3 changed files with 24 additions and 2 deletions

View File

@@ -155,6 +155,12 @@ namespace Umbraco.Core.Persistence.Querying
var field = _mapper.Map(m.Member.Name);
return field;
}
if (m.Expression != null && m.Expression.NodeType == ExpressionType.Convert)
{
var field = _mapper.Map(m.Member.Name);
return field;
}
var member = Expression.Convert(m, typeof(object));
var lambda = Expression.Lambda<Func<object>>(member);

View File

@@ -159,13 +159,12 @@ namespace Umbraco.Core.Persistence.Querying
return field;
}
if (m.Expression != null && m.Expression.NodeType != ExpressionType.Constant)
if (m.Expression != null && m.Expression.NodeType == ExpressionType.Convert)
{
string field = GetFieldName(pd, m.Member.Name);
return field;
}
var member = Expression.Convert(m, typeof(object));
var lambda = Expression.Lambda<Func<object>>(member);
var getter = lambda.Compile();

View File

@@ -203,6 +203,23 @@ namespace Umbraco.Tests.Services
Assert.That(contents.Count(), Is.GreaterThanOrEqualTo(2));
}
[Test]
public void Can_Get_Descendents_Of_Contnet()
{
// Arrange
var contentService = ServiceContext.ContentService;
var hierarchy = CreateContentHierarchy();
contentService.Save(hierarchy, 0);
// Act
var contents = contentService.GetDescendants(1046);
// Assert
Assert.That(contents, Is.Not.Null);
Assert.That(contents.Any(), Is.True);
Assert.That(contents.Count(), Is.EqualTo(53));
}
[Test]
public void Can_Get_All_Versions_Of_Content()
{