Skip to content

Commit 8a15462

Browse files
committed
ContentItem (non-static things) tests
1 parent 31ce5a9 commit 8a15462

File tree

1 file changed

+90
-0
lines changed

1 file changed

+90
-0
lines changed

MoonPress.Core.Tests/Content/ContentItemTests.cs

Lines changed: 90 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -93,4 +93,94 @@ public void Sanitize_ShouldReturnSanitizedString_WhenInputContainsSpecialCharact
9393
// Assert
9494
Assert.That(result, Is.EqualTo("hello-world-this-is-a-test-string"));
9595
}
96+
97+
[Test]
98+
public void FileNameOnly_ShouldReturnSanitizedFileName_WhenFilePathIsValid()
99+
{
100+
// Arrange
101+
var contentItem = new ContentItem
102+
{
103+
FilePath = "/path/to/file/Hello World! This is a test | string.md"
104+
};
105+
106+
// Act
107+
var result = contentItem.FileNameOnly;
108+
109+
// Assert
110+
Assert.That(result, Is.EqualTo("hello-world-this-is-a-test-string"));
111+
}
112+
113+
[Test]
114+
public void Slug_ShouldReturnSanitizedSlug_WhenTitleIsValid()
115+
{
116+
// Arrange
117+
var contentItem = new ContentItem
118+
{
119+
Title = "Hello World! This is a test | string."
120+
};
121+
122+
// Act
123+
var result = contentItem.Slug;
124+
125+
// Assert
126+
Assert.That(result, Is.EqualTo("hello-world-this-is-a-test-string"));
127+
}
128+
129+
[Test]
130+
public void Status_ShouldReturnDraft_WhenIsDraftIsTrue()
131+
{
132+
// Arrange
133+
var contentItem = new ContentItem
134+
{
135+
IsDraft = true
136+
};
137+
138+
// Act
139+
var result = contentItem.Status;
140+
141+
// Assert
142+
Assert.That(result, Is.EqualTo("Draft"));
143+
}
144+
145+
[Test]
146+
public void Status_ShouldReturnPublished_WhenIsDraftIsFalse()
147+
{
148+
// Arrange
149+
var contentItem = new ContentItem
150+
{
151+
IsDraft = false
152+
};
153+
154+
// Act
155+
var result = contentItem.Status;
156+
157+
// Assert
158+
Assert.That(result, Is.EqualTo("Published"));
159+
}
160+
161+
[Test]
162+
public void DatePublished_ShouldBeSetToCurrentDateTime_WhenContentItemIsCreated()
163+
{
164+
// Arrange
165+
var contentItem = new ContentItem();
166+
167+
// Act
168+
var result = contentItem.DatePublished;
169+
170+
// Assert
171+
Assert.That(result, Is.EqualTo(DateTime.UtcNow).Within(TimeSpan.FromSeconds(1)));
172+
}
173+
174+
[Test]
175+
public void DateUpdated_ShouldBeSetToCurrentDateTime_WhenContentItemIsCreated()
176+
{
177+
// Arrange
178+
var contentItem = new ContentItem();
179+
180+
// Act
181+
var result = contentItem.DateUpdated;
182+
183+
// Assert
184+
Assert.That(result, Is.EqualTo(DateTime.UtcNow).Within(TimeSpan.FromSeconds(1)));
185+
}
96186
}

0 commit comments

Comments
 (0)