Ejemplo n.º 1
0
        public void CannotAddPageOfAnotherTenant()
        {
            var canvas = secondTenant.Canvases.First();
            var page   = Presto.Create <Page>(x => { x.Canvas = canvas; x.CanvasID = canvas.ID; });

            Assert.Throws <ArgumentOutOfRangeException>(() => ClarityDB.Instance.Pages.Add(page));
        }
Ejemplo n.º 2
0
        public void ReturnsCanvasUserIsAddedAsGroup()
        {
            var canvas = Presto.Persist <Canvas>();

            ClarityDB.CurrentTenant = canvas.Tenant;
            ClarityDB.CurrentTenant.Canvases.Add(canvas);
            var group = CreateGroup(canvas.Tenant);

            canvas.MenuTile.Members.Add(new Membership {
                Group = group, GroupID = group.ID
            });

            var user = CreateUser(canvas.Tenant);

            group.Users.Add(user);

            try
            {
                ClarityDB.Instance.SaveChanges();
            }
            catch (System.Data.Entity.Validation.DbEntityValidationException ex)
            {
                throw ex;
            }

            ClarityDB.CreateInstance(user);
            Assert.AreEqual(1, ClarityDB.Instance.Canvases.Count());
        }
Ejemplo n.º 3
0
        public void VariableIsNull_ReturnsNotFound()
        {
            NumericCategory category = Presto.Create <NumericCategory>();
            var             result   = service.Create(category.ToJson());

            Assert.AreEqual(HttpStatusCode.NotFound, result.StatusCode);
        }
Ejemplo n.º 4
0
        public void CategoryDoesNotExist_ReturnsNotFound()
        {
            NumericCategory category = Presto.Create <NumericCategory>();
            var             result   = service.UpdateCategory(category.ID, category.ToJson());

            Assert.AreEqual(HttpStatusCode.NotFound, result.StatusCode);
        }
    public static void Intialize()
    {
        if (initialized == false)
        {
            Presto.Sequence.Add <User>();

            Presto.Define <User>(x => {
                var passwordHash = new PasswordHash();
                x.ID             = Presto.Sequence.Next <User>();
                x.UserName       = "******";
                x.Salt           = passwordHash.CreateSalt();
                x.Password       = passwordHash.CreatePasswordHash("Password", x.Salt);
                x.FirstName      = "First Name";
                x.LastName       = "Last Name";
                x.Role           = Role.Admin;
                x.CreatedDate    = DateTime.Now;
            });

            Presto.PersistAction = entity => {
                var addEntityMethod       = typeof(IClarityDB).GetMethod("AddEntity");
                var addEntityOfTypeMethod = addEntityMethod.MakeGenericMethod(new[] { entity.GetType() });

                addEntityOfTypeMethod.Invoke(ClarityDB.Instance, new object[] { entity });
            };
        }

        initialized = true;
    }
Ejemplo n.º 6
0
        public void CategoryIsValid_ReturnsOK()
        {
            NumericCategory category = Presto.Persist <NumericCategory>();
            var             json     = category.ToJson();
            var             result   = service.UpdateCategory(category.ID, json);

            Assert.AreEqual(HttpStatusCode.OK, result.StatusCode);
        }
Ejemplo n.º 7
0
        public void Setup()
        {
            fakeDB                  = new FakeDB();
            ClarityDB.Instance      = fakeDB;
            ClarityDB.CurrentTenant = Presto.Persist <Tenant>();

            service = new CategoryService();
        }
Ejemplo n.º 8
0
        public void CategoryIsNotValid_ReturnsBadRequest()
        {
            NumericCategory category = Presto.Persist <NumericCategory>(X => X.ID = 1);
            var             json     = JObject.Parse("{ id: 1 }");
            var             result   = service.UpdateCategory(1, json);

            Assert.AreEqual(HttpStatusCode.BadRequest, result.StatusCode);
        }
Ejemplo n.º 9
0
        public void CategoryIsValid_SavesChanges()
        {
            NumericCategory category = Presto.Persist <NumericCategory>();
            var             json     = category.ToJson();
            var             result   = service.UpdateCategory(category.ID, json);

            Assert.IsTrue(fakeDB.SaveChangesCalled);
        }
        public void ToJson_HomeMenuIDIsNull_ReturnsJObjectWithEmptyHomeMenu()
        {
            var user       = Presto.Create <User>(x => { x.HomeMenuID = null; });
            var jObject    = user.ToJson();
            var homeMenuID = jObject.Value <string>("homeMenuId");

            Assert.AreEqual("", homeMenuID);
        }
Ejemplo n.º 11
0
        public void CategoryIsValid_ReturnsJson()
        {
            NumericCategory category = Presto.Persist <NumericCategory>();
            var             json     = category.ToJson();
            var             result   = service.UpdateCategory(category.ID, json);

            Assert.NotNull(result.Json);
        }
Ejemplo n.º 12
0
        public void Add_User()
        {
            var user = Presto.Create <User>();

            ClarityDB.Instance.Users.Add(user);
            ClarityDB.Instance.SaveChanges();
            Assert.That(DatabaseHelper.TableHasRows("Users"));
        }
Ejemplo n.º 13
0
        public void ReturnsOwnMenu()
        {
            var menuTile = Presto.Persist <MenuTile>();

            ClarityDB.Instance.SaveChanges();

            ClarityDB.CreateInstance(menuTile.Owner);
            Assert.AreEqual(1, ClarityDB.Instance.MenuTiles.Count());
        }
Ejemplo n.º 14
0
        public void GetCategoriesByVariable_VariableExists_ReturnsOK()
        {
            ClarityDB.Instance = new FakeDB();
            var           variable = Presto.Persist <NumericVariable>();
            var           service  = new CategoryService();
            RestApiResult result   = service.GetCategoriesByVariable(variable.ID);

            Assert.AreEqual(HttpStatusCode.OK, result.StatusCode);
        }
Ejemplo n.º 15
0
        public void GetCategories_VariableHasOneCategory_ReturnsOneCategorie()
        {
            ClarityDB.Instance = new FakeDB();
            var           category = Presto.Persist <NumericCategory>();
            var           service  = new CategoryService();
            RestApiResult result   = service.GetCategoriesByVariable(category.VariableID);

            Assert.AreEqual(1, result.Json.Count());
        }
Ejemplo n.º 16
0
        public void SetUp()
        {
            HttpContext.Current = new HttpContext(
                new HttpRequest(null, "http://localhost:9090/", null),
                new HttpResponse(null));

            ClarityDB.Instance = new FakeDB();
            user = Presto.Persist <User>();
        }
        public void ReturnsOwnScorecard()
        {
            var scorecard = Presto.Persist <Scorecard>();

            ClarityDB.Instance.SaveChanges();

            ClarityDB.CreateInstance(scorecard.MenuTile.Owner);
            Assert.AreEqual(1, ClarityDB.Instance.Scorecards.Count());
        }
Ejemplo n.º 18
0
        public void GetCategories_VariableDoesNotExist_ReturnsEmpty()
        {
            ClarityDB.Instance = new FakeDB();
            var           variable = Presto.Persist <NumericVariable>();
            var           service  = new CategoryService();
            RestApiResult result   = service.GetCategoriesByVariable(variable.ID);

            Assert.AreEqual(0, result.Json.Count());
        }
Ejemplo n.º 19
0
        public void FiltersOtherPersonMenuTile()
        {
            var menuTile = Presto.Persist <MenuTile>();
            var user     = CreateUser(menuTile.Tenant);

            ClarityDB.Instance.SaveChanges();

            ClarityDB.CreateInstance(user);
            Assert.AreEqual(0, ClarityDB.Instance.MenuTiles.Count());
        }
        public void FiltersOtherPersonScorecardSection()
        {
            var section = Presto.Persist <ScorecardSection>();
            var user    = CreateUser(section.Scorecard.Tenant);

            ClarityDB.Instance.SaveChanges();

            ClarityDB.CreateInstance(user);
            Assert.AreEqual(0, ClarityDB.Instance.ScorecardSections.Count());
        }
        public void SetUp()
        {
            fakeDB             = new FakeDB();
            ClarityDB.Instance = fakeDB;
            Presto.Persist <User>(x => x.UserName = "******");
            user = Presto.Persist <User>(x => x.UserName = "******");

            fakeFormsAuthentication = new FakeFormsAuthentication();
            service = new AuthenticationService(fakeFormsAuthentication, new FakePasswordHash(), null);
        }
        private static User CreateUser(Tenant tenant)
        {
            var user = Presto.Create <User>();

            user.Tenant   = tenant;
            user.TenantID = tenant.ID;
            ClarityDB.Instance.Users.Add(user);

            return(user);
        }
Ejemplo n.º 23
0
        public void CannotAddCategoryOfAnotherTenant()
        {
            var category = Presto.Create <NumericCategory>(x =>
            {
                x.Variable   = secondTenant.Datasets.First().Variables.First();
                x.VariableID = x.Variable.ID;
            });

            Assert.Throws <ArgumentOutOfRangeException>(() => ClarityDB.Instance.Categories.Add(category));
        }
        private static Group CreateGroup(Tenant tenant)
        {
            var group = Presto.Create <Group>();

            group.TenantID = tenant.ID;
            group.Tenant   = tenant;

            ClarityDB.Instance.Groups.Add(group);
            return(group);
        }
        public void CannotAddAssociatedVariableOfAnotherTenant()
        {
            var associatedVariable = Presto.Create <AssociatedVariable>(x =>
            {
                x.VariableGroup   = secondTenant.Datasets.First().VariableGroups.First();
                x.VariableGroupID = x.VariableGroup.ID;
            });

            Assert.Throws <ArgumentOutOfRangeException>(() => ClarityDB.Instance.AssociatedVariables.Add(associatedVariable));
        }
Ejemplo n.º 26
0
        public void GetCategories_VariableHasOneCategory_ReturnsCorrectCategory()
        {
            ClarityDB.Instance = new FakeDB();
            var           category = Presto.Persist <NumericCategory>();
            var           service  = new CategoryService();
            RestApiResult result   = service.GetCategoriesByVariable(category.VariableID);
            var           json     = result.Json.First();

            Assert.AreEqual(category.ID, json.Value <long>("id"));
            Assert.AreEqual(category.Label, json.Value <string>("label"));
        }
Ejemplo n.º 27
0
        public void FiltersOtherPersonCanvas()
        {
            var canvas = Presto.Persist <Canvas>();
            var user   = CreateUser(canvas.Tenant);

            ClarityDB.CurrentTenant = canvas.Tenant;
            ClarityDB.Instance.SaveChanges();

            ClarityDB.CreateInstance(user);
            Assert.AreEqual(0, ClarityDB.Instance.Canvases.Count());
        }
Ejemplo n.º 28
0
        public void ReturnsOwnCanvas()
        {
            var canvas = Presto.Persist <Canvas>();

            ClarityDB.CurrentTenant = canvas.Tenant;
            ClarityDB.CurrentTenant.Canvases.Add(canvas);
            ClarityDB.Instance.SaveChanges();

            ClarityDB.CreateInstance(canvas.MenuTile.Owner);
            Assert.AreEqual(1, ClarityDB.Instance.Canvases.Count());
        }
Ejemplo n.º 29
0
        public override void SetUp()
        {
            base.SetUp();

            var user = Presto.Persist <User>();

            firstTenant  = user.Tenant;
            secondTenant = Presto.Persist <Tenant>();
            ClarityDB.Instance.SaveChanges();

            ClarityDB.CreateInstance(user);
        }
Ejemplo n.º 30
0
        public void SetUp()
        {
            user = Presto.Create <User>(x => {
                x.ID        = 10;
                x.Role      = Role.PartnerAccount;
                x.UserName  = "******";
                x.LastName  = "Pan";
                x.FirstName = "Peter";
            });

            json = user.ToJson();
        }