TestData seeding now creates items at different times

This commit is contained in:
Jonathan Bourdon
2024-07-19 00:43:13 -04:00
parent b34a775a4b
commit 8b5ab2d769

View File

@@ -61,6 +61,8 @@ internal class TestDataSeeder(
private List<Content> GenerateContent(ApplicationUser user, int contentCount)
{
var currentDate = DateTimeOffset.UtcNow;
var contents = new List<Content>();
for (var c = 0; c < contentCount; c++)
@@ -69,6 +71,7 @@ internal class TestDataSeeder(
{
Id = GuidHelper.GenerateUuidV7(),
CreatedBy = Guid.Parse(user.Id),
CreatedAt = currentDate,
Title = $"Title {user.UserName}-{c}",
Description = $"Description {user.UserName}-{c}"
};
@@ -76,6 +79,8 @@ internal class TestDataSeeder(
contentContext.Contents.Add(content);
contents.Add(content);
currentDate = currentDate.AddSeconds(Random.Shared.Next(100, 100_000));
}
contentContext.SaveChanges();
@@ -85,10 +90,12 @@ internal class TestDataSeeder(
private List<Message> GenerateMessages(Content content, int messageCount)
{
var currentDate = content.CreatedAt;
var messages = new List<Message>();
for (var m = 0; m < messageCount; m++)
{
currentDate = currentDate.AddSeconds(Random.Shared.Next(100, 100_000));
var author = Random.Shared.GetItems(_creators, 1)[0];
var message = new Message
@@ -96,6 +103,7 @@ internal class TestDataSeeder(
Id = GuidHelper.GenerateUuidV7(),
SubjectId = content.Id,
CreatedBy = Guid.Parse(author.Id),
CreatedAt = currentDate,
Value = $"Message #{m} from {author.UserName} on {content.Title}"
};
@@ -109,10 +117,13 @@ internal class TestDataSeeder(
private List<Message> GenerateReplies(Content content, Message parent, int replyCount)
{
var currentDate = parent.CreatedAt;
var replies = new List<Message>();
for (var r = 0; r < replyCount; r++)
{
currentDate = currentDate.AddSeconds(Random.Shared.Next(100, 100_000));
var author = Random.Shared.GetItems(_creators, 1)[0];
var message = new Message
@@ -121,6 +132,7 @@ internal class TestDataSeeder(
SubjectId = content.Id,
ParentId = parent.Id,
CreatedBy = Guid.Parse(author.Id),
CreatedAt = currentDate,
Value = $"Reply {r} to {parent.Value}"
};