コード例 #1
0
ファイル: ScanTests.cs プロジェクト: testokur/TestOkur.WebApi
        public async Task ShouldStartAndEnd()
        {
            using var testServer = await CreateWithUserAsync();

            var client = testServer.CreateClient();

            await CreateExamAsync(client);

            var exams = await GetExamListAsync(client);

            var startCommand = new StartScanSessionCommand(
                Guid.NewGuid(),
                exams.First().Id,
                true,
                false,
                "USB Camera");
            var response = await client.PostAsync(ApiPath, startCommand.ToJsonContent());

            response.EnsureSuccessStatusCode();
            var endCommand = new EndScanSessionCommand(startCommand.Id, Random.Next());

            response = await client.PutAsync(ApiPath, endCommand.ToJsonContent());

            response.IsSuccessStatusCode.Should().BeTrue();
        }
コード例 #2
0
        public async Task ShouldStartAndEnd()
        {
            using (var testServer = await CreateWithUserAsync())
            {
                var client = testServer.CreateClient();
                var exam   = await CreateExamAsync(client);

                var exams = await GetExamListAsync(client);

                var startCommand = new StartScanSessionCommand(
                    Guid.NewGuid(),
                    exams.First().Id,
                    true,
                    false,
                    "USB Camera");
                var response = await client.PostAsync(ApiPath, startCommand.ToJsonContent());

                response.EnsureSuccessStatusCode();
                var endCommand = new EndScanSessionCommand(startCommand.Id, Random.Next());
                response = await client.PutAsync(ApiPath, endCommand.ToJsonContent());

                response.EnsureSuccessStatusCode();

                var dbContext = testServer.Host.Services.GetService(typeof(ApplicationDbContext))
                                as ApplicationDbContext;
                var session = await dbContext.ExamScanSessions.FirstAsync(e => e.ReportId == startCommand.Id);

                session.ScannedStudentCount.Should().Be(endCommand.ScannedStudentCount);
                session.Source.Should().Be(startCommand.Source);
                session.ByCamera.Should().Be(startCommand.ByCamera);
                session.ByFile.Should().Be(startCommand.ByFile);
            }
        }