コード例 #1
0
        public void Can_delete_and_update_resource_entries()
        {
            var resources = context.Set<LocaleStringResource>();
            resources.Any().ShouldBeFalse();

            var entries = GetDefaultResourceEntries();
            var migrator = new LocaleResourcesMigrator(context);
            migrator.Migrate(entries);

            var builder = new LocaleResourcesBuilder();
            builder.Delete("Res1");
            builder.AddOrUpdate("Res1").Value("NewValue1");
            migrator.Migrate(builder.Build());

            resources.ToList().Count.ShouldEqual(6);

            var updated = resources.Where(x => x.ResourceName == "Res1").ToList();
            updated.Count.ShouldEqual(2);
            updated.Each(x => x.ResourceValue.ShouldEqual("NewValue1"));

            resources.RemoveRange(resources.ToList());
            context.SaveChanges();
        }
コード例 #2
0
        private IEnumerable<LocaleResourceEntry> GetDefaultResourceEntries()
        {
            var builder = new LocaleResourcesBuilder();
            builder.AddOrUpdate("Res1").Value("en", "Value1");
            builder.AddOrUpdate("Res2").Value("en", "Value2");
            builder.AddOrUpdate("Res3").Value("en", "Value3");
            builder.AddOrUpdate("Res1").Value("de", "Wert1");
            builder.AddOrUpdate("Res2").Value("de", "Wert2");
            builder.AddOrUpdate("Res3").Value("de", "Wert3");

            return builder.Build();
        }