public void ReturnTheProperValueInTheAuthorField() { String fieldValueDelegate(ContentItem c) => c.Author; string expected = string.Empty.GetRandom(); var fileContent = new ContentItemFileBuilder() .UseRandomValues() .Author(expected) .Build(); fileContent.ExecutePostPropertyTest(expected, fieldValueDelegate); }
public void ReturnTheProperValueInTheIdField() { Guid fieldValueDelegate(ContentItem c) => c.Id; var expected = Guid.NewGuid(); var fileContent = new ContentItemFileBuilder() .UseRandomValues() .Id(expected) .Build(); fileContent.ExecutePostPropertyTest(expected, fieldValueDelegate); }
public void ReturnAnEmptyStringInTheByLineFieldIfAuthorFieldIsEmpty() { String fieldValueDelegate(ContentItem c) => c.ByLine; String author = string.Empty; String expected = string.Empty; var fileContent = new ContentItemFileBuilder() .UseRandomValues() .Author(expected) .Build(); fileContent.ExecutePostPropertyTest(expected, fieldValueDelegate); }
public void ReturnTheProperValueInTheByLineField() { String fieldValueDelegate(ContentItem c) => c.ByLine; String author = string.Empty.GetRandom(); String expected = $"by {author}"; var fileContent = new ContentItemFileBuilder() .UseRandomValues() .Author(author) .Build(); fileContent.ExecutePostPropertyTest(expected, fieldValueDelegate); }
public void ReturnTheProperValueInTheLastModifiedDateFieldIfFullIso8601Format() { DateTime fieldValueDelegate(ContentItem c) => c.LastModificationDate.ToSecondPrecision(); DateTime expected = DateTime.Parse("1/1/1900").AddSeconds(Int32.MaxValue.GetRandom()); var fileContent = new ContentItemFileBuilder() .UseRandomValues() .LastModificationDate(expected) .LastModificationDateSerializationFormat("yyyy'-'MM'-'dd'T'HH':'mm':'ss'.'fffzzz") .Build(); fileContent.ExecutePostPropertyTest(expected.ToSecondPrecision(), fieldValueDelegate); }
public void ReturnTheHtmlFormattedValueInTheContentField() { String fieldValueDelegate(ContentItem c) => c.Content.Trim(); string content = string.Empty.GetRandom(); String expected = $"<p>{content}</p>"; var fileContent = new ContentItemFileBuilder() .UseRandomValues() .Content(content) .Build(); fileContent.ExecutePostPropertyTest(expected, fieldValueDelegate); }
public void ReturnTheCorrectValueInTheContentFieldEvenIfItContainsAHorizontalRule() { String fieldValueDelegate(ContentItem c) => c.Content.Trim(); string field1 = string.Empty.GetRandom(); string field2 = string.Empty.GetRandom(); string content = $"<h1>{field1}</h1>\n---\n<h2>{field2}</h2>"; String expected = $"<h1>{field1}</h1>\n<hr />\n<h2>{field2}</h2>\n".Trim(); var fileContent = new ContentItemFileBuilder() .UseRandomValues() .Content(content) .Build(); fileContent.ExecutePostPropertyTest(expected, fieldValueDelegate); }
public void ReturnTheCategoryFromASingleCategoryPost() { String fieldValueDelegate(ContentItem c) => c.CategoryIds.AsHash(); List <String> categories = new List <String>() { String.Empty.GetRandom() }; var fileContent = new ContentItemFileBuilder() .UseRandomValues() .Categories(categories) .Build(); var sourceCategories = categories.AsCategoryEntities().ToArray(); string expected = sourceCategories.Select(c => c.Id).AsHash(); fileContent.ExecutePostPropertyTest(expected, fieldValueDelegate, sourceCategories); }
public void ReturnTheCorrectNumberOfTags() { Int32 fieldValueDelegate(ContentItem c) => c.Tags?.Count() ?? 0; Int32 expected = 10.GetRandom(3); List <String> tags = new List <string>(); for (Int32 i = 0; i < expected; i++) { tags.Add(string.Empty.GetRandom()); } var fileContent = new ContentItemFileBuilder() .UseRandomValues() .Tags(tags) .Build(); fileContent.ExecutePostPropertyTest(expected, fieldValueDelegate); }
public void ReturnTheTagFromAMultipleTagPost() { String fieldValueDelegate(ContentItem c) => c.Tags.AsHash(); Int32 expectedCount = 10.GetRandom(3); List <String> tags = new List <string>(); for (Int32 i = 0; i < expectedCount; i++) { tags.Add(string.Empty.GetRandom()); } var fileContent = new ContentItemFileBuilder() .UseRandomValues() .Tags(tags) .Build(); fileContent.ExecutePostPropertyTest(tags.AsHash(), fieldValueDelegate); }
public void ReturnTheCorrectNumberOfCategories() { Int32 fieldValueDelegate(ContentItem c) => c.CategoryIds?.Count() ?? 0; Int32 expectedCount = 10.GetRandom(3); var categories = new List <String>(); for (Int32 i = 0; i < expectedCount; i++) { categories.Add(String.Empty.GetRandom()); } var fileContent = new ContentItemFileBuilder() .UseRandomValues() .Categories(categories) .Build(); var sourceCategories = categories.AsCategoryEntities(); fileContent.ExecutePostPropertyTest(expectedCount, fieldValueDelegate, sourceCategories); }
public void ReturnTheCategoriesFromAMultipleCategoryPost() { String fieldValueDelegate(ContentItem c) => c.CategoryIds.AsHash(); Int32 expectedCount = 10.GetRandom(3); var categories = new List <String>(); for (Int32 i = 0; i < expectedCount; i++) { categories.Add(String.Empty.GetRandom()); } var fileContent = new ContentItemFileBuilder() .UseRandomValues() .Categories(categories) .Build(); var sourceCategories = categories.AsCategoryEntities().ToArray(); string expected = sourceCategories.Select(c => c.Id).AsHash(); fileContent.ExecutePostPropertyTest(expected, fieldValueDelegate, sourceCategories); }