public void ParsesDateTimesAndIsDraftNull(string mockPost, string publishedDate, string updatedDate) { FrontMatter frontMatter = FrontMatterManager.GetFrontMatter(mockPost); DateTime pbDate = frontMatter.Published.Value; DateTime upDate = frontMatter.Updated.Value; DateTime publishedDateTime = FrontMatterManager.FromISODateString(publishedDate); DateTime updatedDateTime = FrontMatterManager.FromISODateString(updatedDate); Assert.Equal(publishedDateTime.Ticks, pbDate.Ticks); Assert.Equal(updatedDateTime.Ticks, upDate.Ticks); Assert.False(frontMatter.IsDraft); }
public void ParsesTitleSlugAndDraftFlag() { string mockPost = @"--- title: Docker Installation Notes slug: docker-installation-notes author: oreo draft: true date_created: 2018-10-13T16:08:55+00:00 --- <my-component>Some-data</my-component> "; FrontMatter frontMatter = FrontMatterManager.GetFrontMatter(mockPost); Assert.Equal("Docker Installation Notes", frontMatter.Title); Assert.Equal("docker-installation-notes", frontMatter.Slug); Assert.Null(frontMatter.Published); Assert.Null(frontMatter.Updated); Assert.True(frontMatter.IsDraft); }
public void ParsesThumbnail() { string mockPost = @"--- title: Docker Installation Notes slug: docker-installation-notes author: oreo draft: true date_created: 2018-10-13T16:08:55+00:00 thumbnail: id: my own image file: some/relative/path type: svg --- <my-component>Some-data</my-component> "; FrontMatter frontMatter = FrontMatterManager.GetFrontMatter(mockPost); Assert.Equal("my own image", frontMatter.Thumbnail.Id); Assert.Equal("some/relative/path", frontMatter.Thumbnail.File); Assert.Equal("svg", frontMatter.Thumbnail.Type); }
public void CheckDateTimeParsingThrows(string mockPost) { Exception ex = Assert.Throws <FrontMatterFormatException>(() => FrontMatterManager.GetFrontMatter(mockPost)); }
public void WillExplodeIfFieldIsRequired(string mockPost, string message) { Exception ex = Assert.Throws <FrontMatterMissingFieldsException>(() => FrontMatterManager.GetFrontMatter(mockPost)); Assert.Equal(message, ex.Message); }
public void WillExplodeIfFrontMatterHasNoStartOrEnd(string mockPost, string message) { Exception ex = Assert.Throws <FrontMatterFormatException>(() => FrontMatterManager.GetFrontMatter(mockPost)); Assert.Equal(message, ex.Message); }