Jo Shields a575963da9 Imported Upstream version 3.6.0
Former-commit-id: da6be194a6b1221998fc28233f2503bd61dd9d14
2014-08-13 10:39:27 +01:00

32 lines
890 B
C#

// Copyright (c) Microsoft Corporation. All rights reserved. See License.txt in the project root for license information.
using System;
using System.Collections.Generic;
using System.Linq;
namespace Microsoft.Web.UnitTestUtil
{
public static class AnonymousObject
{
public static string Inspect(object obj)
{
if (obj == null)
{
return "(null)";
}
object[] args = Enumerable.Empty<Object>().ToArray();
IEnumerable<string> values = obj.GetType()
.GetProperties()
.Select(prop => String.Format("{0}: {1}", prop.Name, prop.GetValue(obj, args)));
if (!values.Any())
{
return "(no properties)";
}
return "{ " + values.Aggregate((left, right) => left + ", " + right) + " }";
}
}
}