public bool Validate(LabVerifyArgs args) { if (args == null) { return(false); } return(_PollTokenService.ValidateToken(args.PollToken)); }
public async Task <IActionResult> PostKeysAreUploaded([FromBody] LabVerifyArgs args, [FromServices] HttpPostLabVerifyCommand command) { if (command == null) { throw new ArgumentNullException(nameof(command)); } _Logger.LogInformation("POST labverify triggered."); return(await command.Execute(args)); }
public void Validate_checks_null() { // Assemble var args = new LabVerifyArgs(); // Act var result = _Validator.Validate(args); // Assert Assert.IsFalse(result); }
public void Validate_checks_pollToken_format_2() { // Assemble var args = new LabVerifyArgs { PollToken = "test_not_base64.part2.part3" }; // Act var result = _Validator.Validate(args); // Assert Assert.IsFalse(result); }
public void Validate_checks_pollToken_valid() { // Assemble var token = _PollTokenService.Next(); var args = new LabVerifyArgs { PollToken = token }; // Act var result = _Validator.Validate(args); // Assert Assert.IsTrue(result); }
public bool Validate(LabVerifyArgs args) { if (args == null) { return(false); } if (string.IsNullOrWhiteSpace(args.PollToken)) { return(false); } return(_PollTokenService.Validate(args.PollToken)); }
public void Validate_checks_pollToken_signature() { // Assemble var token = _PollTokenService.Next(); token = token.Substring(0, token.Length - 2); // modifies end of token which is signature var args = new LabVerifyArgs { PollToken = token }; // Act var result = _Validator.Validate(args); // Assert Assert.IsFalse(result); }
public void Validate_checks_pollToken_expires() { // Assemble var token = _PollTokenService.Next(); var args = new LabVerifyArgs() { PollToken = token }; Assert.Fail("Finish this test."); // Act // var mock = new Mock<IDateTime>(); // mock.Setup(fake => fake.Now) // .Returns(new DateTime(2000, 1, 1)); var result = _Validator.Validate(args); // Assert Assert.IsTrue(result); }
public async Task WorkflowMiss() { // Arrange _FakeTimeProvider.Value = new DateTime(2020, 8, 2, 0, 0, 0, DateTimeKind.Utc); var pollToken = _PollTokenService.Next(); await WriteBucket(pollToken); // Act var args = new LabVerifyArgs { PollToken = "Missed!" }; _DbContext.BeginTransaction(); var result = _Command.Execute(args); // Assert var response = ((LabVerifyAuthorisationResponse)((OkObjectResult)result.Result).Value); Assert.AreEqual("Workflow not found.", response.Error); Assert.AreEqual(false, response.Valid); }
public async Task TeksPosted() { // Arrange _FakeTimeProvider.Value = new DateTime(2020, 8, 2, 0, 0, 0, DateTimeKind.Utc); //Touch var pollToken = _PollTokenService.Next(); await WriteBucket(pollToken); PostTeks(); // Act var args = new LabVerifyArgs { PollToken = pollToken }; _DbContext.BeginTransaction(); var result = _Command.Execute(args); // Assert var response = (LabVerifyAuthorisationResponse)((OkObjectResult)result.Result).Value; Assert.AreEqual(true, response.Valid); }
public async Task NoTekPost() { // Arrange _FakeTimeProvider.Value = new DateTime(2020, 8, 2, 0, 0, 0, DateTimeKind.Utc); var bucket = new byte[32]; var pollToken = _PollTokenService.Next(); await WriteBucket(pollToken); // Act var args = new LabVerifyArgs { PollToken = pollToken }; _DbContext.BeginTransaction(); var result = _Command.Execute(args); // Assert Assert.AreEqual(false, ((LabVerifyAuthorisationResponse)((OkObjectResult)result.Result).Value).Valid); var wf = _DbContext.KeyReleaseWorkflowStates.Single(x => x.BucketId == bucket); Assert.AreEqual(0, wf.Teks.Count); Assert.AreEqual(false, wf.TeksTouched); }
public async Task <IActionResult> PostKeysAreUploaded([FromBody] LabVerifyArgs args, [FromServices] HttpPostLabVerify command) { return(await command.Execute(args)); }