public void Can_add_non_nullable_columns_and_valid_defaults_generated_when_existing_data_in_table()
        {
            ResetDatabase();

            var migrator = CreateMigrator <ShopContext_v1>();

            migrator.Update();

            using (var context = CreateContext <ShopContext_v1>())
            {
                context.Customers.Add(
                    new MigrationsCustomer
                {
                    HomeAddress = new MigrationsAddress(),
                    WorkAddress = new MigrationsAddress(),
                    DateOfBirth = DateTime.Now
                });

                context.SaveChanges();
            }

            var addNonNullableColumnsWithNoDefaults = new AddNonNullableColumnsWithNoDefaults();

            WhenSqlCe(
                () =>
            {
                addNonNullableColumnsWithNoDefaults.GetOperations().RemoveAt(13);
                addNonNullableColumnsWithNoDefaults.GetOperations().RemoveAt(4);
            });

            migrator = CreateMigrator <ShopContext_v1>(addNonNullableColumnsWithNoDefaults);

            migrator.Update();
        }
        public void Can_add_non_nullable_columns_and_valid_defaults_generated_when_existing_data_in_table()
        {
            ResetDatabase();

            var migrator = CreateMigrator<ShopContext_v1>();

            migrator.Update();

            using (var context = CreateContext<ShopContext_v1>())
            {
                context.Customers.Add(
                    new MigrationsCustomer
                    {
                        HomeAddress = new MigrationsAddress(),
                        WorkAddress = new MigrationsAddress(),
                        DateOfBirth = DateTime.Now
                    });

                context.SaveChanges();
            }

            var addNonNullableColumnsWithNoDefaults = new AddNonNullableColumnsWithNoDefaults();

            WhenSqlCe(
               () =>
               {
                   addNonNullableColumnsWithNoDefaults.GetOperations().RemoveAt(13);
                   addNonNullableColumnsWithNoDefaults.GetOperations().RemoveAt(4);
               });

            migrator = CreateMigrator<ShopContext_v1>(addNonNullableColumnsWithNoDefaults);

            migrator.Update();
        }