예제 #1
0
            public string Render(object?obj, IExampleRendererHandler renderer, ImmutableList <object?> path)
            {
                var properties = obj !.GetType().GetProperties();

                var propertiesToRender = properties.Take(_propertyLimit).ToList();
                var hasMoreProperties  = properties.Skip(_propertyLimit).Any();

                var renderedProperties = Enumerable.Concat(
                    propertiesToRender.Select(p => $"{p.Name} = {renderer.Render(p.GetValue(obj), renderer, path)}"),
                    hasMoreProperties ? new[] { "..." } : Enumerable.Empty <string>());

                return("{ " + string.Join(", ", renderedProperties) + " }");
            }
예제 #2
0
            public string Render(object?obj, IExampleRendererHandler renderer, ImmutableList <object?> path)
            {
                var elements = ((IEnumerable)obj !).Cast <object>();

                var elementsToRender = elements.Take(_elementLimit).ToList();
                var hasMoreElements  = elements.Skip(_elementLimit).Any();

                var renderedElements = Enumerable.Concat(
                    elementsToRender.Select(x => renderer.Render(x, renderer, path)),
                    hasMoreElements ? new[] { "..." } : Enumerable.Empty <string>());

                return("[" + string.Join(", ", renderedElements) + "]");
            }