public void ResolveTypeCheck_ShouldReturnBinaryExpression_WhenInheritanceCode()
        {
            Expression contactExpression = Expression.Constant(new ContactWithInheritanceHierarchy());
            Type       desiredType       = new ContactWithInheritanceHierarchy.CustomerContact().GetType();

            var discriminatorDataMember = contactExpression.Type.GetProperty("ContactType");

            Expression result = _mappingResolver.ResolveTypeCheck(contactExpression, desiredType);

            Expression expectedExpression = Expression.Equal(
                Expression.MakeMemberAccess(contactExpression, discriminatorDataMember),
                Expression.Constant("Customer")
                );

            SqlExpressionTreeComparer.CheckAreEqualTrees(result, expectedExpression);
        }
    public void ResolveTypeCheck_ShouldReturnBinaryExpression_WhenInheritanceCode()
    {
      Expression contactExpression = Expression.Constant (new ContactWithInheritanceHierarchy());
      Type desiredType = new ContactWithInheritanceHierarchy.CustomerContact().GetType();

      var discriminatorDataMember = contactExpression.Type.GetProperty ("ContactType");

      Expression result = _mappingResolver.ResolveTypeCheck (contactExpression, desiredType);
      
      Expression expectedExpression = Expression.Equal (
          Expression.MakeMemberAccess (contactExpression, discriminatorDataMember),
          Expression.Constant ("Customer")
          );
      SqlExpressionTreeComparer.CheckAreEqualTrees (result, expectedExpression);
    }