public async Task <GetAllAuditsResponse> GetAuditByUser(string userEmail)
        {
            var envRecordLimit = Environment.GetEnvironmentVariable("AUDIT_RECORD_LIMIT");
            int recordLimit    = envRecordLimit != null?int.Parse(envRecordLimit) : 20;

            var auditRecords = await _gateway.GetAuditByUser(userEmail.ToLower(), recordLimit);

            //TODO: check querstring values are correct
            return(AuditFactory.ToGetAllAuditsResponse(auditRecords));
        }
        public void CanMapAuditRecordsToGetAllAdminAuditsResponseObject()
        {
            var auditRecords = new List <AdminAuditRecord>
            {
                TestHelpers.CreateAuditRecordObject(_faker),
                TestHelpers.CreateAuditRecordObject(_faker)
            };

            var factoryResponse = AuditFactory.ToGetAllAuditsResponse(auditRecords);

            factoryResponse.Should().NotBeNull();
            factoryResponse.AuditRecords.Count.Should().Equals(auditRecords.Count);
            factoryResponse.AuditRecords[0].User.Should().Equals(auditRecords[0].User);
            factoryResponse.AuditRecords[0].CSSOLogin.ToString().Should().Equals(auditRecords[0].CSSOLogin);
        }
        public void ReturnsAuditList()
        {
            var stubbedAudits =
                new List <AdminAuditRecord>
            {
                TestHelpers.CreateAuditRecordObject(_faker),
                TestHelpers.CreateAuditRecordObject(_faker)
            };

            _mockAuditGateway.Setup(x => x.GetAuditByUser("*****@*****.**", 20)).ReturnsAsync(stubbedAudits);

            var response = _classUnderTest.GetAuditByUser("*****@*****.**");

            response.Should().NotBeNull();
            response.Result.Should().BeEquivalentTo(AuditFactory.ToGetAllAuditsResponse(stubbedAudits));
        }