Compare commits
No commits in common. "036168359b2033412521deae74775cbb46337c4f" and "c04a603d56849cae3d9791001cb5f64ddc81fa19" have entirely different histories.
036168359b
...
c04a603d56
|
@ -12,7 +12,7 @@ namespace AccessQueueService.Data
|
|||
public int GetActiveTicketsCount(DateTime activeCutoff) => _accessTickets
|
||||
.Count(t => t.Value.ExpiresOn > DateTime.UtcNow && t.Value.LastActive >activeCutoff);
|
||||
public int GetQueueCount() => _accessQueue.Count;
|
||||
public int GetRequestsAhead(Guid userId)
|
||||
public int IndexOfTicket(Guid userId)
|
||||
{
|
||||
var index = 0;
|
||||
foreach (var ticket in _accessQueue)
|
||||
|
|
|
@ -10,7 +10,7 @@ namespace AccessQueueService.Data
|
|||
public int GetQueueCount();
|
||||
public AccessTicket? GetTicket(Guid userId);
|
||||
public void UpsertTicket(AccessTicket ticket);
|
||||
public int GetRequestsAhead(Guid userId);
|
||||
public int IndexOfTicket(Guid userId);
|
||||
public void Enqueue(AccessTicket ticket);
|
||||
public int DeleteExpiredTickets();
|
||||
public bool RemoveUser(Guid userId);
|
||||
|
|
|
@ -68,8 +68,9 @@ namespace AccessQueueService.Services
|
|||
}
|
||||
else
|
||||
{
|
||||
var requestsAhead = _accessQueueRepo.GetRequestsAhead(userId);
|
||||
if (requestsAhead == -1)
|
||||
var indexOfTicket = _accessQueueRepo.IndexOfTicket(userId);
|
||||
var requestsAhead = _accessQueueRepo.GetQueueCount() - indexOfTicket - 1;
|
||||
if (indexOfTicket == -1)
|
||||
{
|
||||
_accessQueueRepo.Enqueue(new AccessTicket
|
||||
{
|
||||
|
@ -81,7 +82,7 @@ namespace AccessQueueService.Services
|
|||
return new AccessResponse
|
||||
{
|
||||
ExpiresOn = null,
|
||||
RequestsAhead = _accessQueueRepo.GetQueueCount() - 1
|
||||
RequestsAhead = requestsAhead
|
||||
};
|
||||
}
|
||||
}
|
||||
|
|
|
@ -245,19 +245,6 @@ namespace AccessQueueServiceTests
|
|||
Assert.Equal(0, response.RequestsAhead);
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public async Task RequestAccess_ShouldShowCorrectRequestsAhead_WhenAccessRerequested()
|
||||
{
|
||||
for (int i = 0; i < CAP_LIMIT + 3; i++)
|
||||
{
|
||||
await _accessService.RequestAccess(Guid.NewGuid());
|
||||
}
|
||||
var id = Guid.NewGuid();
|
||||
var response = await _accessService.RequestAccess(id);
|
||||
Assert.Equal(3, response.RequestsAhead);
|
||||
response = await _accessService.RequestAccess(id);
|
||||
Assert.Equal(3, response?.RequestsAhead);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
Loading…
Reference in New Issue