Fix #2 requestsAhead working fr this time
This commit is contained in:
parent
295c91a05c
commit
1de9b57c5c
|
@ -71,6 +71,7 @@ namespace AccessQueueService.Services
|
||||||
var requestsAhead = _accessQueueRepo.GetRequestsAhead(userId);
|
var requestsAhead = _accessQueueRepo.GetRequestsAhead(userId);
|
||||||
if (requestsAhead == -1)
|
if (requestsAhead == -1)
|
||||||
{
|
{
|
||||||
|
requestsAhead = _accessQueueRepo.GetQueueCount();
|
||||||
_accessQueueRepo.Enqueue(new AccessTicket
|
_accessQueueRepo.Enqueue(new AccessTicket
|
||||||
{
|
{
|
||||||
UserId = userId,
|
UserId = userId,
|
||||||
|
@ -81,7 +82,7 @@ namespace AccessQueueService.Services
|
||||||
return new AccessResponse
|
return new AccessResponse
|
||||||
{
|
{
|
||||||
ExpiresOn = null,
|
ExpiresOn = null,
|
||||||
RequestsAhead = _accessQueueRepo.GetQueueCount() - 1
|
RequestsAhead = requestsAhead
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -281,15 +281,30 @@ namespace AccessQueueServiceTests
|
||||||
public async Task RequestAccess_ShouldShowCorrectRequestsAhead_WhenAccessRerequested(IAccessQueueRepo repo)
|
public async Task RequestAccess_ShouldShowCorrectRequestsAhead_WhenAccessRerequested(IAccessQueueRepo repo)
|
||||||
{
|
{
|
||||||
CreateService(repo);
|
CreateService(repo);
|
||||||
for (int i = 0; i < CAP_LIMIT + 3; i++)
|
for (int i = 0; i < CAP_LIMIT; i++)
|
||||||
{
|
{
|
||||||
await _accessService.RequestAccess(Guid.NewGuid());
|
await _accessService.RequestAccess(Guid.NewGuid());
|
||||||
}
|
}
|
||||||
var id = Guid.NewGuid();
|
|
||||||
var response = await _accessService.RequestAccess(id);
|
var id1 = Guid.NewGuid();
|
||||||
Assert.Equal(3, response.RequestsAhead);
|
var id2 = Guid.NewGuid();
|
||||||
response = await _accessService.RequestAccess(id);
|
var id3 = Guid.NewGuid();
|
||||||
Assert.Equal(3, response?.RequestsAhead);
|
|
||||||
|
var response1 = await _accessService.RequestAccess(id1);
|
||||||
|
var response2 = await _accessService.RequestAccess(id2);
|
||||||
|
var response3 = await _accessService.RequestAccess(id3);
|
||||||
|
|
||||||
|
Assert.Equal(0, response1.RequestsAhead);
|
||||||
|
Assert.Equal(1, response2.RequestsAhead);
|
||||||
|
Assert.Equal(2, response3.RequestsAhead);
|
||||||
|
|
||||||
|
response1 = await _accessService.RequestAccess(id1);
|
||||||
|
response2 = await _accessService.RequestAccess(id2);
|
||||||
|
response3 = await _accessService.RequestAccess(id3);
|
||||||
|
|
||||||
|
Assert.Equal(0, response1.RequestsAhead);
|
||||||
|
Assert.Equal(1, response2.RequestsAhead);
|
||||||
|
Assert.Equal(2, response3.RequestsAhead);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue