Esempio n. 1
0
        public void DeleteEntityInvalidRowKey()
        {
            var table  = new AzureTable <Entity>(CloudStorageAccount.DevelopmentStorageAccount);
            var entity = new Entity()
            {
                RowKey       = StringHelper.NullEmptyWhiteSpace(),
                PartitionKey = StringHelper.ValidString()
            };

            table.DeleteEntity(entity);
        }
Esempio n. 2
0
        public void DeleteEntityNullPartitionKey()
        {
            var table  = new AzureTable <Entity>(CloudStorageAccount.DevelopmentStorageAccount);
            var entity = new Entity()
            {
                PartitionKey = null,
                RowKey       = StringHelper.ValidString()
            };

            table.DeleteEntity(entity);
        }
Esempio n. 3
0
        public void AddUpdateEntitiesDeleteEntities()
        {
            Random random = new Random();
            var    table  = new AzureTable <EntityWithDataStore>(CloudStorageAccount.DevelopmentStorageAccount, new TestStoreValidator());

            table.DeleteIfExist();
            table.EnsureExist();
            var entities = new List <EntityWithDataStore>();
            var entity   = new EntityWithDataStore()
            {
                RowKey       = Guid.NewGuid().ToString(),
                PartitionKey = Guid.NewGuid().ToString(),
                ToTest       = random.Next()
            };

            entities.Add(entity);
            entity = new EntityWithDataStore()
            {
                RowKey       = Guid.NewGuid().ToString(),
                PartitionKey = Guid.NewGuid().ToString(),
                ToTest       = random.Next()
            };
            entities.Add(entity);
            entity = new EntityWithDataStore()
            {
                RowKey       = Guid.NewGuid().ToString(),
                PartitionKey = Guid.NewGuid().ToString(),
                ToTest       = random.Next()
            };
            entities.Add(entity);
            table.AddOrUpdateEntity(entities);

            var returned = from data in table.Query
                           select data;

            Assert.AreEqual <int>(entities.Count, returned.ToList().Count);

            foreach (var e in entities)
            {
                e.ToTest = random.Next();
            }

            table.AddOrUpdateEntity(entities);

            table.DeleteEntity(entities);
        }
Esempio n. 4
0
        public void DeleteEntitiesEntityNull()
        {
            var table    = new AzureTable <Entity>(CloudStorageAccount.DevelopmentStorageAccount);
            var entities = new List <Entity>();
            var entity   = new Entity()
            {
                PartitionKey = StringHelper.ValidString(),
                RowKey       = StringHelper.ValidString()
            };

            entities.Add(entity);
            entities.Add(null);
            entity = new Entity()
            {
                PartitionKey = StringHelper.ValidString(),
                RowKey       = StringHelper.ValidString()
            };
            entities.Add(entity);
            table.DeleteEntity(entities);
        }
Esempio n. 5
0
        public void AddUpdateEntityDeleteEntity()
        {
            Random random = new Random();
            var    table  = new AzureTable <EntityWithDataStore>(CloudStorageAccount.DevelopmentStorageAccount, new TestStoreValidator());

            table.EnsureExist();
            var entity = new EntityWithDataStore()
            {
                RowKey       = Guid.NewGuid().ToString(),
                PartitionKey = Guid.NewGuid().ToString(),
                ToTest       = random.Next()
            };

            table.AddOrUpdateEntity(entity);

            var returned = table.QueryBy(entity.PartitionKey, entity.RowKey);

            Assert.IsNotNull(returned);
            Assert.AreEqual <string>(entity.PartitionKey, returned.PartitionKey);
            Assert.AreEqual <string>(entity.RowKey, returned.RowKey);
            Assert.AreEqual <int>(entity.ToTest, returned.ToTest);

            entity.ToTest = random.Next();

            table.AddOrUpdateEntity(entity);

            var updated = (from data in table.Query
                           where data.PartitionKey == entity.PartitionKey && data.RowKey == entity.RowKey
                           select data).SingleOrDefault();

            Assert.IsNotNull(returned);
            Assert.AreEqual <string>(entity.PartitionKey, updated.PartitionKey);
            Assert.AreEqual <string>(entity.RowKey, updated.RowKey);
            Assert.AreEqual <int>(entity.ToTest, updated.ToTest);

            table.DeleteEntity(entity);
        }
        /// <summary>
        /// Remove Users From Roles
        /// </summary>
        /// <param name="usernames">User Names</param>
        /// <param name="roleNames">Role Names</param>
        public override void RemoveUsersFromRoles(string[] usernames, string[] roleNames)
        {
            using (new PerformanceMonitor())
            {
                if (roleNames.Any(rolename => !this.RoleExists(rolename)))
                {
                    throw new ProviderException("Role name not found.");
                }
                else if (usernames.Any(username => roleNames.Any(rolename => !this.IsUserInRole(username, rolename))))
                {
                    throw new ProviderException("User is not already in role.");
                }
                else
                {
                    foreach (var userName in usernames)
                    {
                        var user = (from data in userTable.QueryByPartition(this.ApplicationName)
                                    where data.UserName == userName
                                    select data).FirstOrDefault();

                        foreach (var roleName in roleNames)
                        {
                            if (!this.IsUserInRole(userName, roleName))
                            {
                                var roles = from data in roleTable.QueryByPartition(ServerConfiguration.ApplicationIdentifier.ToString())
                                            where data.Name == roleName &&
                                            data.UserIdentifier == user.Id
                                            select data;

                                roleTable.DeleteEntity(roles);
                            }
                        }
                    }
                }
            }
        }
Esempio n. 7
0
        public void AddEntityDeleteEntity()
        {
            Random random = new Random();
            var    table  = new AzureTable <Entity>(CloudStorageAccount.DevelopmentStorageAccount);

            table.EnsureExist();
            var entity = new Entity()
            {
                RowKey       = Guid.NewGuid().ToString(),
                PartitionKey = Guid.NewGuid().ToString(),
                ToTest       = random.Next()
            };

            table.AddEntity(entity);

            var returned = table.QueryBy(entity.PartitionKey, entity.RowKey);

            Assert.IsNotNull(returned);
            Assert.AreEqual <string>(entity.PartitionKey, returned.PartitionKey);
            Assert.AreEqual <string>(entity.RowKey, returned.RowKey);
            Assert.AreEqual <int>(entity.ToTest, returned.ToTest);

            table.DeleteEntity(entity);
        }
Esempio n. 8
0
        public void DeleteEntitiesNull()
        {
            var table = new AzureTable <Entity>(CloudStorageAccount.DevelopmentStorageAccount);

            table.DeleteEntity((IEnumerable <Entity>)null);
        }