コード例 #1
0
ファイル: HomeController.cs プロジェクト: rjcanto/SI.1314i
        public ActionResult Index()
        {
            ViewBag.Message = "PEP - Policy Enforcement Point.";

            var pdp = new PDP();
            IList<User> users = pdp.GetUsers();
            var userRoles = new Dictionary<int, string>();

            foreach (var user in users)
            {
                List<Role> roles = pdp.getRolesOfUser(user.UserName);
                var sb = new StringBuilder();
                foreach (var role in roles)
                {
                    if (sb.Length != 0)
                    {
                        sb.Append(", ");
                    }
                    sb.Append(role.RoleName);
                }
                userRoles[user.UserId] = sb.ToString();
            }

            ViewBag.Users = users;
            ViewBag.UserRoles = userRoles;
            return View();
        }
コード例 #2
0
ファイル: PDPTests.cs プロジェクト: rjcanto/SI.1314i
        public void GetRolesOExistingfUsersSucceeds()
        {
            var pdp = new PDP();
            
            // Admin
            Assert.That(pdp.getRolesOfUser("Ricardo").Select(role => role.RoleName), Is.EquivalentTo(new[] {"Admin", "Director", "User", "Manager", "Guest"}));

            // Director
            Assert.That(pdp.getRolesOfUser("Luís").Select(role => role.RoleName), Is.EquivalentTo(new[] { "Director", "User", "Guest" }));

            // Manager
            Assert.That(pdp.getRolesOfUser("Pedro").Select(role => role.RoleName), Is.EquivalentTo(new[] { "Manager", "User", "Guest" }));

            // Auditor
            Assert.That(pdp.getRolesOfUser("João").Select(role => role.RoleName), Is.EquivalentTo(new[] { "Auditor", "User", "Guest" }));

            // User
            var users = new[] {"Lídia", "Teresa", "Sara", "Elsa", "Mário", "Cristina"};
            foreach (var user in users)
            {
                Assert.That(pdp.getRolesOfUser(user).Select(role => role.RoleName), Is.EquivalentTo(new[] { "User", "Guest" }));
            }

            // Guest
            var guests = new[] { "Maria", "Miguel" };
            foreach (var guest in guests)
            {
                Assert.That(pdp.getRolesOfUser(guest).Select(role => role.RoleName), Is.EquivalentTo(new[] { "Guest" }));
            }
        }
コード例 #3
0
ファイル: Program.cs プロジェクト: rjcanto/SI.1314i
        static void getRolesOfUserTest(PDP lib)
        {
            String userName = "******";
            List<Role> result = lib.getRolesOfUser(userName);

            if (result == null)
                Console.WriteLine("O utilizador {0} não tem Roles", userName);
            else
            {
                Console.WriteLine("O utilizador {0} tem os seguintes Roles:", userName);
                foreach (Role r in result)
                    Console.WriteLine("\t {0}", r.RoleName);
            }
        }
コード例 #4
0
ファイル: PDPTests.cs プロジェクト: rjcanto/SI.1314i
        public void GetRolesOfUnknownUserReturnsEmptyList()
        {
            var pdp = new PDP();

            Assert.That(pdp.getRolesOfUser("Unknown").Select(role => role.RoleName), Is.EquivalentTo(new string[] {}));
        }
コード例 #5
0
ファイル: PDPTests.cs プロジェクト: rjcanto/SI.1314i
        public void GetRolesForExistingUserSucceeds()
        {
            var pdp = new PDP();

            Assert.That(pdp.getRolesOfUser("Ricardo").Select(role => role.RoleName),
                Is.EquivalentTo(new[] {"Admin", "Manager", "Director", "User", "Guest"}));
        }
コード例 #6
0
ファイル: PDPTests.cs プロジェクト: rjcanto/SI.1314i
        public void GetRolesForUnknownUserReturnsEmptyList()
        {
            var pdp = new PDP();

            Assert.That(pdp.getRolesOfUser("unknown user"), Is.EquivalentTo(new string[] { }));
        }