aboutsummaryrefslogtreecommitdiff
path: root/BackEnd/Timeline.Tests
diff options
context:
space:
mode:
authorcrupest <crupest@outlook.com>2021-04-23 17:28:18 +0800
committercrupest <crupest@outlook.com>2021-04-23 17:37:37 +0800
commit6e067a28d8527726a2a17045bef0f0e3d3430ed5 (patch)
tree967ed4c84981d6b626a3370c726d35d1c3e2c2b4 /BackEnd/Timeline.Tests
parent6acef36dc717834605eda2af9e1738dac8fa2f6d (diff)
downloadtimeline-6e067a28d8527726a2a17045bef0f0e3d3430ed5.tar.gz
timeline-6e067a28d8527726a2a17045bef0f0e3d3430ed5.tar.bz2
timeline-6e067a28d8527726a2a17045bef0f0e3d3430ed5.zip
refactor: Refactor a lot.
Diffstat (limited to 'BackEnd/Timeline.Tests')
-rw-r--r--BackEnd/Timeline.Tests/Helpers/TestApplication.cs18
-rw-r--r--BackEnd/Timeline.Tests/Helpers/TestDatabase.cs17
-rw-r--r--BackEnd/Timeline.Tests/IntegratedTests/IntegratedTestBase.cs8
3 files changed, 16 insertions, 27 deletions
diff --git a/BackEnd/Timeline.Tests/Helpers/TestApplication.cs b/BackEnd/Timeline.Tests/Helpers/TestApplication.cs
index 22f5f006..fcb0882e 100644
--- a/BackEnd/Timeline.Tests/Helpers/TestApplication.cs
+++ b/BackEnd/Timeline.Tests/Helpers/TestApplication.cs
@@ -15,21 +15,12 @@ namespace Timeline.Tests.Helpers
{
public class TestApplication : IAsyncLifetime
{
- public TestDatabase Database { get; }
-
public IHost Host { get; private set; } = default!;
public string WorkDir { get; private set; } = default!;
- public TestApplication()
- {
- Database = new TestDatabase(false);
- }
-
public async Task InitializeAsync()
{
- await Database.InitializeAsync();
-
WorkDir = Path.Combine(Path.GetTempPath(), Path.GetRandomFileName());
Directory.CreateDirectory(WorkDir);
@@ -42,13 +33,6 @@ namespace Timeline.Tests.Helpers
["WorkDir"] = WorkDir
});
})
- .ConfigureServices(services =>
- {
- services.AddDbContext<DatabaseContext>(options =>
- {
- options.UseSqlite(Database.Connection);
- });
- })
.ConfigureWebHost(webBuilder =>
{
webBuilder
@@ -64,8 +48,6 @@ namespace Timeline.Tests.Helpers
Host.Dispose();
Directory.Delete(WorkDir, true);
-
- await Database.DisposeAsync();
}
}
}
diff --git a/BackEnd/Timeline.Tests/Helpers/TestDatabase.cs b/BackEnd/Timeline.Tests/Helpers/TestDatabase.cs
index c51a94ba..d37aace4 100644
--- a/BackEnd/Timeline.Tests/Helpers/TestDatabase.cs
+++ b/BackEnd/Timeline.Tests/Helpers/TestDatabase.cs
@@ -12,11 +12,11 @@ namespace Timeline.Tests.Helpers
{
public class TestDatabase : IAsyncLifetime
{
- private readonly bool _createUser;
+ private readonly bool _init;
- public TestDatabase(bool createUser = true)
+ public TestDatabase(bool init = true)
{
- _createUser = createUser;
+ _init = init;
Connection = new SqliteConnection("Data Source=:memory:;");
}
@@ -24,9 +24,11 @@ namespace Timeline.Tests.Helpers
{
await Connection.OpenAsync();
- using (var context = CreateContext())
+ if (_init)
{
+ using var context = CreateContext();
await context.Database.EnsureCreatedAsync();
+
context.JwtToken.Add(new JwtTokenEntity
{
Key = JwtTokenGenerateHelper.GenerateKey()
@@ -42,11 +44,8 @@ namespace Timeline.Tests.Helpers
await context.SaveChangesAsync();
- if (_createUser)
- {
- var user = await userService.CreateUser("user", "userpw");
- await userService.ModifyUser(user.Id, new ModifyUserParams() { Nickname = "imuser" });
- }
+ var user = await userService.CreateUser("user", "userpw");
+ await userService.ModifyUser(user.Id, new ModifyUserParams() { Nickname = "imuser" });
}
}
diff --git a/BackEnd/Timeline.Tests/IntegratedTests/IntegratedTestBase.cs b/BackEnd/Timeline.Tests/IntegratedTests/IntegratedTestBase.cs
index b700ada2..161e5d98 100644
--- a/BackEnd/Timeline.Tests/IntegratedTests/IntegratedTestBase.cs
+++ b/BackEnd/Timeline.Tests/IntegratedTests/IntegratedTestBase.cs
@@ -64,6 +64,14 @@ namespace Timeline.Tests.IntegratedTests
}
var userService = scope.ServiceProvider.GetRequiredService<IUserService>();
+
+ await userService.ModifyUser(await userService.GetUserIdByUsername("administrator"), new ModifyUserParams
+ {
+ Username = "admin",
+ Password = "adminpw",
+ Nickname = "administrator"
+ });
+
foreach (var user in users)
{
var (username, password, nickname) = user;