From 810e4cb23f37809252e7767a988a68a146aca7bc Mon Sep 17 00:00:00 2001 From: crupest Date: Wed, 5 Feb 2020 18:24:10 +0800 Subject: Improve relate filter. --- Timeline.Tests/IntegratedTests/TimelineTest.cs | 59 ++++++++++++++++++++------ 1 file changed, 46 insertions(+), 13 deletions(-) (limited to 'Timeline.Tests/IntegratedTests/TimelineTest.cs') diff --git a/Timeline.Tests/IntegratedTests/TimelineTest.cs b/Timeline.Tests/IntegratedTests/TimelineTest.cs index 253554df..2500a0c3 100644 --- a/Timeline.Tests/IntegratedTests/TimelineTest.cs +++ b/Timeline.Tests/IntegratedTests/TimelineTest.cs @@ -67,7 +67,9 @@ namespace Timeline.Tests.IntegratedTests { await CreateTestTimelines(); - var testResult = new List(); + var testResultOwn = new List(); + var testResultJoin = new List(); + var testResultAll = new List(); { var client = await CreateClientAsUser(); @@ -84,31 +86,62 @@ namespace Timeline.Tests.IntegratedTests { var res = await client.GetAsync("/users/user1/timeline"); - testResult.Add(res.Should().HaveStatusCode(200) - .And.HaveJsonBody().Which); + var timeline = res.Should().HaveStatusCode(200) + .And.HaveJsonBody().Which; + testResultAll.Add(timeline); + testResultJoin.Add(timeline); } { var res = await client.GetAsync("/timelines/t1"); - testResult.Add(res.Should().HaveStatusCode(200) - .And.HaveJsonBody().Which); - } - - { - var res = await client.GetAsync("/users/user2/timeline"); - testResult.Add(res.Should().HaveStatusCode(200) - .And.HaveJsonBody().Which); + var timeline = res.Should().HaveStatusCode(200) + .And.HaveJsonBody().Which; + testResultAll.Add(timeline); + testResultJoin.Add(timeline); } } - testResult.Add(_testTimelines[2]); + testResultAll.Add(_testTimelines[2]); + testResultOwn.Add(_testTimelines[2]); { var client = await CreateClientAs(2); var res = await client.GetAsync("/timelines?relate=user2"); res.Should().HaveStatusCode(200) .And.HaveJsonBody>() - .Which.Should().BeEquivalentTo(testResult); + .Which.Should().BeEquivalentTo(testResultAll); + } + + { + var client = await CreateClientAs(2); + var res = await client.GetAsync("/timelines?relate=user2&relateType=own"); + res.Should().HaveStatusCode(200) + .And.HaveJsonBody>() + .Which.Should().BeEquivalentTo(testResultOwn); + } + + { + var client = await CreateClientAs(2); + var res = await client.GetAsync("/timelines?relate=user2&relateType=join"); + res.Should().HaveStatusCode(200) + .And.HaveJsonBody>() + .Which.Should().BeEquivalentTo(testResultJoin); + } + } + + [Fact] + public async Task TimelineList_InvalidModel() + { + var client = await CreateClientAsUser(); + + { + var res = await client.GetAsync("/timelines?relate=us!!"); + res.Should().BeInvalidModel(); + } + + { + var res = await client.GetAsync("/timelines?relateType=aaa"); + res.Should().BeInvalidModel(); } } -- cgit v1.2.3