aboutsummaryrefslogtreecommitdiff
path: root/BackEnd/Timeline.Tests/Services/SearchServiceTest.cs
diff options
context:
space:
mode:
authorcrupest <crupest@outlook.com>2021-01-16 19:48:09 +0800
committercrupest <crupest@outlook.com>2021-01-16 19:48:09 +0800
commit280698f244bdaf3fbe2896d7104826d132c0b95a (patch)
treefbc6334bf444472bb9afe899127576c9a89d7623 /BackEnd/Timeline.Tests/Services/SearchServiceTest.cs
parenteba5936d0ed97d50d4c2d263624c02457539c8c1 (diff)
downloadtimeline-280698f244bdaf3fbe2896d7104826d132c0b95a.tar.gz
timeline-280698f244bdaf3fbe2896d7104826d132c0b95a.tar.bz2
timeline-280698f244bdaf3fbe2896d7104826d132c0b95a.zip
test: Add unit tests for search service.
Diffstat (limited to 'BackEnd/Timeline.Tests/Services/SearchServiceTest.cs')
-rw-r--r--BackEnd/Timeline.Tests/Services/SearchServiceTest.cs49
1 files changed, 49 insertions, 0 deletions
diff --git a/BackEnd/Timeline.Tests/Services/SearchServiceTest.cs b/BackEnd/Timeline.Tests/Services/SearchServiceTest.cs
new file mode 100644
index 00000000..968352c0
--- /dev/null
+++ b/BackEnd/Timeline.Tests/Services/SearchServiceTest.cs
@@ -0,0 +1,49 @@
+using FluentAssertions;
+using System.Threading.Tasks;
+using Timeline.Services;
+using Xunit;
+
+namespace Timeline.Tests.Services
+{
+ public class SearchServiceTest : ServiceTestBase
+ {
+ private SearchService _service = default!;
+
+ protected override void OnInitialize()
+ {
+ _service = new SearchService(Database);
+ }
+
+ [Fact]
+ public async Task TimelineSearch_Should_Work()
+ {
+ await TimelineService.CreateTimeline("hahaha", UserId);
+ var t2 = await TimelineService.CreateTimeline("bababa", UserId);
+ await TimelineService.ChangeProperty(t2.Id, new TimelineChangePropertyParams { Title = "hahaha" });
+ await TimelineService.CreateTimeline("bbbbbb", UserId);
+
+ var searchResult = await _service.SearchTimeline("hah");
+ searchResult.Items.Should().HaveCount(2);
+ searchResult.Items[0].Item.Name.Should().Be("hahaha");
+ searchResult.Items[0].Score.Should().Be(2);
+ searchResult.Items[1].Item.Name.Should().Be("bababa");
+ searchResult.Items[1].Score.Should().Be(1);
+ }
+
+ [Fact]
+ public async Task UserSearch_Should_Work()
+ {
+ await UserService.CreateUser("hahaha", "p");
+ var u2 = await UserService.CreateUser("bababa", "p");
+ await UserService.ModifyUser(u2.Id, new ModifyUserParams { Nickname = "hahaha" });
+ await UserService.CreateUser("bbbbbb", "p");
+
+ var searchResult = await _service.SearchUser("hah");
+ searchResult.Items.Should().HaveCount(2);
+ searchResult.Items[0].Item.Username.Should().Be("hahaha");
+ searchResult.Items[0].Score.Should().Be(2);
+ searchResult.Items[1].Item.Username.Should().Be("bababa");
+ searchResult.Items[1].Score.Should().Be(1);
+ }
+ }
+}