public void PoliciesService_GetPoliciesByClientId_ExistingClientIdWithPolicies_ReturnPolicies()
        {
            //Arrange
            var id    = ArrangeProvider._ID0_;
            var email = ArrangeProvider._EMAIL_;

            var rootPolicy = ArrangeProvider.GetRootPolicy();

            rootPolicy.Policies.Add(ArrangeProvider.GetPolicy("1", email, id, 1.1));
            rootPolicy.Policies.Add(ArrangeProvider.GetPolicy("2", email, id, 2.2));
            rootPolicy.Policies.Add(ArrangeProvider.GetPolicy("3", email, id, 3.3));

            var mockPoliciesRepository = new Mock <IPoliciesRepository>();

            mockPoliciesRepository.Setup(x => x.GetPoliciesByClientId(id)).Returns(rootPolicy.Policies);

            var mapper = ArrangeProvider.GetMapper();

            var service = new PoliciesService(mapper, mockPoliciesRepository.Object);

            var expected = rootPolicy.Policies.Select(p => mapper.Map <PolicyDto>(p)).ToList();

            //Act
            var result = service.GetPoliciesByClientId(id);

            //Assert
            CollectionAssert.AreEquivalent((System.Collections.ICollection)(expected), (System.Collections.ICollection)result);
        }
Exemple #2
0
        public void AltranController_GetPoliciesByName_ExistingClientNameWithoutPolicies_ReturnsNoContentResult()
        {
            //Arrange
            var mapper = ArrangeProvider.GetMapper();

            var name      = ArrangeProvider._NAME_;
            var email     = ArrangeProvider._EMAIL_;
            var id        = ArrangeProvider._ID0_;
            var clientDto = mapper.Map <ClientDto>(ArrangeProvider.GetClient(name: name, email: email, id: id));

            var mockClientService = new Mock <IClientsService>();

            mockClientService.Setup(x => x.GetClientByName(name)).Returns(clientDto);

            List <Policy> policies = new List <Policy>();

            var policyDtos = policies.Select(p => mapper.Map <PolicyDto>(p)).ToList();

            var mockPolicyService = new Mock <IPoliciesService>();

            mockPolicyService.Setup(x => x.GetPoliciesByClientId(id)).Returns(policyDtos);

            var controller = new AltranController(mockClientService.Object, mockPolicyService.Object);

            // Act
            var actionResult = controller.GetPoliciesByName(name);

            //Assert
            Assert.IsInstanceOfType(actionResult.Result, typeof(NoContentResult));
        }
        public void PoliciesService_GetPoliciesByClientId_NonExistingClientId_ReturnNull()
        {
            //Arrange
            var id    = ArrangeProvider._ID0_;
            var email = ArrangeProvider._EMAIL_;

            var rootPolicy = ArrangeProvider.GetRootPolicy();

            rootPolicy.Policies.Add(ArrangeProvider.GetPolicy("1", email, id, 1.1));
            rootPolicy.Policies.Add(ArrangeProvider.GetPolicy("2", email, id, 2.2));
            rootPolicy.Policies.Add(ArrangeProvider.GetPolicy("3", email, id, 3.3));

            var mockPoliciesRepository = new Mock <IPoliciesRepository>();

            mockPoliciesRepository.Setup(x => x.GetPoliciesByClientId(id)).Returns(rootPolicy.Policies);

            var mapper = ArrangeProvider.GetMapper();

            var service = new PoliciesService(mapper, mockPoliciesRepository.Object);

            //Act
            var result = service.GetPoliciesByClientId(ArrangeProvider._ID1_);

            //Assert
            Assert.IsTrue(result.Count() == 0);
        }
Exemple #4
0
        public void AltranController_Authenticate_ExistingEmails_ReturnsAuthenticationToken()
        {
            //Arrange
            var mapper = ArrangeProvider.GetMapper();

            var email = ArrangeProvider._EMAIL_;

            var token = new AuthenticationTokenDto
            {
                Email = ArrangeProvider._EMAIL_,
                Role  = Role.Admin,
                Token = "Token"
            };

            var mockClientService = new Mock <IClientsService>();

            mockClientService.Setup(x => x.Authenticate(email)).Returns(token);

            var mockPolicyService = new Mock <IPoliciesService>();

            var controller = new AltranController(mockClientService.Object, mockPolicyService.Object);

            // Act
            var actionResult = controller.Authenticate(email);

            //Assert
            var result = actionResult.Result as OkObjectResult;

            Assert.IsNotNull(result);
            Assert.AreEqual(token.Email, ((result.Value) as AuthenticationTokenDto).Email);
            Assert.AreEqual(token.Role, ((result.Value) as AuthenticationTokenDto).Role);
            Assert.AreEqual(token.Token, ((result.Value) as AuthenticationTokenDto).Token);
        }
Exemple #5
0
        public void AltranController_Authenticate_NonExistingEmails_ReturnsBadRequestObjectResult()
        {
            //Arrange
            var mapper = ArrangeProvider.GetMapper();

            var email = ArrangeProvider._EMAIL_;

            var token = new AuthenticationTokenDto
            {
                Email = ArrangeProvider._EMAIL_,
                Role  = Role.Admin,
                Token = "Token"
            };

            var mockClientService = new Mock <IClientsService>();

            mockClientService.Setup(x => x.Authenticate(email)).Returns(token);

            var mockPolicyService = new Mock <IPoliciesService>();

            var controller = new AltranController(mockClientService.Object, mockPolicyService.Object);

            // Act
            var actionResult = controller.Authenticate(ArrangeProvider._EMAIL2_);

            //Assert
            Assert.IsInstanceOfType(actionResult.Result, typeof(BadRequestObjectResult));
        }
Exemple #6
0
        public void AltranController_GetClientPolicyById_NonExistingClientForPolicyId_ReturnsNoContentResult()
        {
            //Arrange
            var mapper = ArrangeProvider.GetMapper();

            var id = ArrangeProvider._ID0_;

            var mockClientService = new Mock <IClientsService>();

            Policy policy = ArrangeProvider.GetPolicy(id: id);

            var policyDto = mapper.Map <PolicyDto>(policy);

            var mockPolicyService = new Mock <IPoliciesService>();

            mockPolicyService.Setup(x => x.GetPolicyById(id)).Returns(policyDto);

            var controller = new AltranController(mockClientService.Object, mockPolicyService.Object);

            // Act
            var actionResult = controller.GetClientPolicyById(id);

            //Assert
            Assert.IsInstanceOfType(actionResult.Result, typeof(NoContentResult));
        }
Exemple #7
0
        public void AltranController_GetClientPolicyById_NonExistingPolicyId_ReturnsBadRequestResult()
        {
            //Arrange
            var mapper = ArrangeProvider.GetMapper();

            var name      = ArrangeProvider._NAME_;
            var email     = ArrangeProvider._EMAIL_;
            var id        = ArrangeProvider._ID0_;
            var clientDto = mapper.Map <ClientDto>(ArrangeProvider.GetClient(name: name, email: email, id: id));

            var mockClientService = new Mock <IClientsService>();

            mockClientService.Setup(x => x.GetClientById(id)).Returns(clientDto);

            Policy policy = ArrangeProvider.GetPolicy("1", email, id, 1.1);

            var policyDto = mapper.Map <PolicyDto>(policy);

            var mockPolicyService = new Mock <IPoliciesService>();

            mockPolicyService.Setup(x => x.GetPolicyById(id)).Returns(policyDto);

            var controller = new AltranController(mockClientService.Object, mockPolicyService.Object);

            // Act
            var actionResult = controller.GetClientPolicyById(ArrangeProvider._ID1_);

            //Assert
            Assert.IsInstanceOfType(actionResult.Result, typeof(BadRequestObjectResult));
        }
Exemple #8
0
        public void AltranController_GetClientPolicyById_ExistingPolicyId_ReturnsClient()
        {
            //Arrange
            var mapper = ArrangeProvider.GetMapper();

            var name      = ArrangeProvider._NAME_;
            var email     = ArrangeProvider._EMAIL_;
            var id        = ArrangeProvider._ID0_;
            var clientDto = mapper.Map <ClientDto>(ArrangeProvider.GetClient(name: name, email: email, id: id));

            var mockClientService = new Mock <IClientsService>();

            mockClientService.Setup(x => x.GetClientById(id)).Returns(clientDto);

            Policy policy = ArrangeProvider.GetPolicy("1", email, id, 1.1);

            var policyDto = mapper.Map <PolicyDto>(policy);

            var mockPolicyService = new Mock <IPoliciesService>();

            mockPolicyService.Setup(x => x.GetPolicyById(id)).Returns(policyDto);

            var controller = new AltranController(mockClientService.Object, mockPolicyService.Object);

            // Act
            var actionResult = controller.GetClientPolicyById(id);

            //Assert
            var result = actionResult.Result as OkObjectResult;

            Assert.IsNotNull(result);
            Assert.AreEqual(clientDto, result.Value);
        }
Exemple #9
0
        public void ClientsRepository_GetClientByName_NonExistingName_ReturnsNullClient()
        {
            //Arrange
            string url = ArrangeProvider._URL_;

            var client = ArrangeProvider.GetClient(name: ArrangeProvider._NAME_);
            var json   = JsonConvert.SerializeObject(ArrangeProvider.GetRootClient(client), Formatting.Indented);

            var options    = ArrangeProvider.GetResourcesUrlOption(url, url);
            var httpClient = ArrangeProvider.GetMockJsonHttpClient(url, json);

            var clientsRepository = new ClientsRepository(options, httpClient);

            //Act
            var result = clientsRepository.GetClientByName(ArrangeProvider._NAME2_);

            //Assert
            Assert.IsNull(result);
        }
Exemple #10
0
        public void ClientsRepository_GetClientById_ExistingId_ReturnsClient()
        {
            //Arrange
            string url = ArrangeProvider._URL_;

            var client = ArrangeProvider.GetClient(id: ArrangeProvider._ID1_);
            var json   = JsonConvert.SerializeObject(ArrangeProvider.GetRootClient(client), Formatting.Indented);

            var options    = ArrangeProvider.GetResourcesUrlOption(url, url);
            var httpClient = ArrangeProvider.GetMockJsonHttpClient(url, json);

            var clientsRepository = new ClientsRepository(options, httpClient);

            //Act
            var result = clientsRepository.GetClientById(ArrangeProvider._ID1_);

            //Assert
            Assert.AreEqual(client, result);
        }
Exemple #11
0
        public void PoliciesRepository_GetPoliciesByClientId_ExistingClientIdWithoutPolicies_ReturnsZeroPolicies()
        {
            //Arrange
            string url = ArrangeProvider._URL_;

            var rootPolicy = ArrangeProvider.GetRootPolicy();

            var json = JsonConvert.SerializeObject(rootPolicy, Formatting.Indented);

            var options    = ArrangeProvider.GetResourcesUrlOption(url, url);
            var httpClient = ArrangeProvider.GetMockJsonHttpClient(url, json);

            var clientsRepository = new PoliciesRepository(options, httpClient);

            //Act
            var result = clientsRepository.GetPoliciesByClientId(ArrangeProvider._ID1_);

            //Assert
            Assert.IsTrue(result.Count == 0);
        }
Exemple #12
0
        public void AltranController_GetClientByName_NonExistingClientName_ReturnsNoContentResult()
        {
            //Arrange
            var mapper = ArrangeProvider.GetMapper();

            var name              = ArrangeProvider._NAME_;
            var clientDto         = mapper.Map <ClientDto>(ArrangeProvider.GetClient(name: name));
            var mockClientService = new Mock <IClientsService>();

            mockClientService.Setup(x => x.GetClientByName(name)).Returns(clientDto);
            var mockPolicyService = new Mock <IPoliciesService>();


            var controller = new AltranController(mockClientService.Object, mockPolicyService.Object);

            // Act
            var actionResult = controller.GetClientByName(ArrangeProvider._NAME2_);

            //Assert
            Assert.IsInstanceOfType(actionResult.Result, typeof(NoContentResult));
        }
Exemple #13
0
        public void ClientsService_Authenticate_NonExistingEmail_ReturnsNull()
        {
            //Arrange
            string email  = ArrangeProvider._EMAIL_;
            Client client = ArrangeProvider.GetClient(id: email);

            var mockRepo = new Mock <IClientsRepository>();

            mockRepo.Setup(x => x.GetClientByEmail(email)).Returns(client);

            var options = ArrangeProvider.GetAppSettingslOption();
            var mapper  = ArrangeProvider.GetMapper();

            var service = new ClientsService(options, mapper, mockRepo.Object);

            //Act
            var result = service.Authenticate(ArrangeProvider._EMAIL2_);

            //Assert
            Assert.IsNull(result);
        }
Exemple #14
0
        public void ClientsService_GetClientById_NonExistingId_ReturnsNull()
        {
            //Arrange
            string id     = ArrangeProvider._ID1_;
            Client client = ArrangeProvider.GetClient(id: id);

            var mockRepo = new Mock <IClientsRepository>();

            mockRepo.Setup(x => x.GetClientById(id)).Returns(client);

            var options = ArrangeProvider.GetAppSettingslOption();
            var mapper  = ArrangeProvider.GetMapper();

            var service = new ClientsService(options, mapper, mockRepo.Object);

            //Act
            var result = service.GetClientById(ArrangeProvider._ID0_);

            //Assert
            Assert.IsNull(result);
        }
Exemple #15
0
        public void ClientsService_GetClientByName_NonExistingName_ReturnsNull()
        {
            //Arrange
            string name   = ArrangeProvider._NAME_;
            Client client = ArrangeProvider.GetClient(email: name);

            var mockRepo = new Mock <IClientsRepository>();

            mockRepo.Setup(x => x.GetClientByName(name)).Returns(client);

            var options = ArrangeProvider.GetAppSettingslOption();
            var mapper  = ArrangeProvider.GetMapper();

            var service = new ClientsService(options, mapper, mockRepo.Object);

            //Act
            var result = service.GetClientByName(ArrangeProvider._NAME2_);

            //Assert
            Assert.IsNull(result);
        }
Exemple #16
0
        public void PoliciesService_GetPolicyById_NonExistingExistingPolicyId_ReturnNull()
        {
            //Arrange
            var id = ArrangeProvider._ID0_;

            var policy = ArrangeProvider.GetPolicy(id: id);

            var mockPoliciesRepository = new Mock <IPoliciesRepository>();

            mockPoliciesRepository.Setup(x => x.GetPolicyById(id)).Returns(policy);

            var mapper = ArrangeProvider.GetMapper();

            var service = new PoliciesService(mapper, mockPoliciesRepository.Object);

            //Act
            var result = service.GetPolicyById(ArrangeProvider._ID1_);

            //Assert
            Assert.IsNull(result);
        }
Exemple #17
0
        public void ClientsService_Authenticate_ExistingEmailAndSpecificRole_ReturnsValidJWDTokenWithSameRole()
        {
            //Arrange
            string email  = ArrangeProvider._EMAIL_;
            string role   = Role.Admin;
            Client client = ArrangeProvider.GetClient(id: email, role: role);

            var mockRepo = new Mock <IClientsRepository>();

            mockRepo.Setup(x => x.GetClientByEmail(email)).Returns(client);

            var options = ArrangeProvider.GetAppSettingslOption();
            var mapper  = ArrangeProvider.GetMapper();

            var service = new ClientsService(options, mapper, mockRepo.Object);

            //Act
            var result = service.Authenticate(ArrangeProvider._EMAIL_);

            //Assert
            Assert.AreEqual(role, result.Role);
        }
Exemple #18
0
        public void AltranController_GetPoliciesByName_ExistingClientNameWithPolicies_ReturnsPolicies()
        {
            //Arrange
            var mapper = ArrangeProvider.GetMapper();

            var name      = ArrangeProvider._NAME_;
            var email     = ArrangeProvider._EMAIL_;
            var id        = ArrangeProvider._ID0_;
            var clientDto = mapper.Map <ClientDto>(ArrangeProvider.GetClient(name: name, email: email, id: id));

            var mockClientService = new Mock <IClientsService>();

            mockClientService.Setup(x => x.GetClientByName(name)).Returns(clientDto);

            List <Policy> policies = new List <Policy>();

            policies.Add(ArrangeProvider.GetPolicy("1", email, id, 1.1));
            policies.Add(ArrangeProvider.GetPolicy("2", email, id, 2.2));
            policies.Add(ArrangeProvider.GetPolicy("3", email, id, 3.3));

            var policyDtos = policies.Select(p => mapper.Map <PolicyDto>(p)).ToList();

            var mockPolicyService = new Mock <IPoliciesService>();

            mockPolicyService.Setup(x => x.GetPoliciesByClientId(id)).Returns(policyDtos);

            var controller = new AltranController(mockClientService.Object, mockPolicyService.Object);

            // Act
            var actionResult = controller.GetPoliciesByName(name);

            //Assert
            var result = actionResult.Result as OkObjectResult;

            Assert.IsNotNull(result);
            Assert.AreEqual(policyDtos, result.Value);
        }
Exemple #19
0
        public void AltranController_GetClientByName_ExistingClientName_ReturnsClient()
        {
            //Arrange
            var mapper = ArrangeProvider.GetMapper();

            var name              = ArrangeProvider._NAME_;
            var clientDto         = mapper.Map <ClientDto>(ArrangeProvider.GetClient(name: name));
            var mockClientService = new Mock <IClientsService>();

            mockClientService.Setup(x => x.GetClientByName(name)).Returns(clientDto);
            var mockPolicyService = new Mock <IPoliciesService>();


            var controller = new AltranController(mockClientService.Object, mockPolicyService.Object);

            // Act
            var actionResult = controller.GetClientByName(name);

            //Assert
            var result = actionResult.Result as OkObjectResult;

            Assert.IsNotNull(result);
            Assert.AreEqual(clientDto, result.Value);
        }
Exemple #20
0
        public void PoliciesRepository_GetPoliciesByClientId_ExistingClientIdWithPolicies_ReturnsPolicies()
        {
            //Arrange
            string url = ArrangeProvider._URL_;

            var rootPolicy = ArrangeProvider.GetRootPolicy();

            rootPolicy.Policies.Add(ArrangeProvider.GetPolicy("1", ArrangeProvider._EMAIL_, ArrangeProvider._ID1_, 1.1));
            rootPolicy.Policies.Add(ArrangeProvider.GetPolicy("2", ArrangeProvider._EMAIL_, ArrangeProvider._ID1_, 2.2));
            rootPolicy.Policies.Add(ArrangeProvider.GetPolicy("3", ArrangeProvider._EMAIL_, ArrangeProvider._ID1_, 3.3));

            var json = JsonConvert.SerializeObject(rootPolicy, Formatting.Indented);

            var options    = ArrangeProvider.GetResourcesUrlOption(url, url);
            var httpClient = ArrangeProvider.GetMockJsonHttpClient(url, json);

            var clientsRepository = new PoliciesRepository(options, httpClient);

            //Act
            var result = clientsRepository.GetPoliciesByClientId(ArrangeProvider._ID1_);

            //Assert
            CollectionAssert.AreEquivalent((System.Collections.ICollection)rootPolicy.Policies, (System.Collections.ICollection)result);
        }