Ejemplo n.º 1
0
        public void Constructor_FakeRestrictiveAccess_ActiveUser()
        {
            Mock <IDatabaseContext> fakeContext = new Mock <IDatabaseContext>();

            fakeContext.Setup(x => x.List <Person>()).Returns(new[] { new Person {
                                                                          Id = 1
                                                                      } }.AsQueryable());
            var access = new FakeRestrictiveAccess(fakeContext.Object, 1);

            Assert.IsTrue(access.ValidUser);
        }
Ejemplo n.º 2
0
        public void Constructor_DisabledAccount_ThrowsException()
        {
            Mock <IDatabaseContext> fakeContext = new Mock <IDatabaseContext>();

            fakeContext.Setup(x => x.List <Person>()).Returns(new[]
            {
                new Person
                {
                    Id           = 1,
                    DisabledDate = DateTime.Now
                }
            }.AsQueryable());
            var access = new FakeRestrictiveAccess(fakeContext.Object, 1);
        }
Ejemplo n.º 3
0
        public void MyPermissions_MegaList_Works()
        {
            //person1, is disabled
            //person2 is the target source
            //person3 is just an average user across different companies
            //what is happening!!?!!??!!?!???
            Mock <IDatabaseContext> fakeContext = new Mock <IDatabaseContext>();
            var person1 = new Person {
                Id = 1
            };
            var person2 = new Person {
                Id = 2
            };
            var person3 = new Person {
                Id = 3
            };

            var group1 = new AccountGroup {
                Id = 1
            };
            var group2 = new AccountGroup {
                Id = 2
            };
            var group3 = new AccountGroup {
                Id = 3, EndDate = DateTime.Today.AddDays(-1)
            };

            person1.AddToGroup(group1, 1);

            //person 2 is an admin user in group 2
            var p2g1 = person2.AddToGroup(group1, 2);

            p2g1.PermissionLevel = PermissionLevel.Admin;
            var p2g2 = person2.AddToGroup(group2, 3);

            p2g2.PermissionLevel = PermissionLevel.SuperAdmin;

            person3.AddToGroup(group1, 4);
            person3.AddToGroup(group2, 5);
            person3.AddToGroup(group3, 6);

            fakeContext.Setup(x => x.List <Person>()).Returns(new[] { person1, person2, person3 }.AsQueryable());

            //not sure what this is suppose to test
            var access1 = new FakeRestrictiveAccess(fakeContext.Object, 1);

            Assert.AreEqual(1, access1.MyPermissions.Count());

            //needs to return exactly an admin record and a superadmin record
            var access2 = new FakeRestrictiveAccess(fakeContext.Object, 2);

            Assert.IsTrue(access2.MyPermissions.Any(x => x.Value == PermissionLevel.Admin && x.Key.Id == 1));
            Assert.IsTrue(access2.MyPermissions.Any(x => x.Value == PermissionLevel.SuperAdmin && x.Key.Id == 2));
            Assert.IsFalse(access2.MyPermissions.Any(x => x.Value == PermissionLevel.Normal));
            Assert.IsFalse(access2.MyPermissions.Any(x => x.Value == PermissionLevel.Disable));


            //this is to test what's happening with disabled account groups
            var access3 = new FakeRestrictiveAccess(fakeContext.Object, 3);

            Assert.AreEqual(2, access3.MyPermissions.Count());
        }