public async Task <ActionResult> CurrentVersionAsync() { _logger.LogInformation("Attempting to get current schemas"); GetCurrentVersionResponse currentVersionResponse = await _mediator.GetCurrentVersionAsync(HttpContext.RequestAborted).ConfigureAwait(false); return(new JsonResult(currentVersionResponse.CurrentVersions)); }
public static async Task <GetCurrentVersionResponse> GetCurrentVersionAsync(this IMediator mediator, CancellationToken cancellationToken) { EnsureArg.IsNotNull(mediator, nameof(mediator)); var request = new GetCurrentVersionRequest(); GetCurrentVersionResponse response = await mediator.Send(request, cancellationToken); return(response); }
public async Task GivenACurrentMediator_WhenCurrentRequestAndEmptySchemaVersionTable_ThenReturnsEmptyArray() { var mockCurrentVersions = new List <CurrentVersionInformation>(); _schemaDataStore.GetCurrentVersionAsync(Arg.Any <CancellationToken>()) .Returns(mockCurrentVersions); GetCurrentVersionResponse response = await _mediator.GetCurrentVersionAsync(_cancellationToken); Assert.Equal(0, response.CurrentVersions.Count); }
public async Task GivenACurrentMediator_WhenCurrentRequest_ThenReturnsCurrentVersionInformation() { string status = "completed"; var mockCurrentVersions = new List <CurrentVersionInformation>() { new CurrentVersionInformation(1, (SchemaVersionStatus)Enum.Parse(typeof(SchemaVersionStatus), status, true), new List <string>() { "server1", "server2" }), new CurrentVersionInformation(2, (SchemaVersionStatus)Enum.Parse(typeof(SchemaVersionStatus), status, true), new List <string>()), }; _schemaDataStore.GetCurrentVersionAsync(Arg.Any <CancellationToken>()) .Returns(mockCurrentVersions); GetCurrentVersionResponse response = await _mediator.GetCurrentVersionAsync(_cancellationToken); var currentVersionsResponse = response.CurrentVersions; Assert.Equal(mockCurrentVersions.Count, currentVersionsResponse.Count); Assert.Equal(1, currentVersionsResponse[0].Id); Assert.Equal(SchemaVersionStatus.Completed, currentVersionsResponse[0].Status); Assert.Equal(2, currentVersionsResponse[0].Servers.Count); }