public override void Initialize() { base.Initialize(); AddArtistToCache(Artist.Unknown); AddArtistToCache(Artist.Various); var batch = BatchFactory.Create(); var commands = new List <ICommand>(); foreach (var artist in Cache.GetAll()) { var command = CommandFactory.Create(); command.AddStatement( Insert .OrReplace .Into(Schema.Name) .Columns(Schema.Fields.Select(x => x.Getter)) .Values(artist, Schema.Fields.Select(x => x.Getter)) ); commands.Add(command); } commands.Each(x => batch.AddCommand(x)); Store.Execute(batch); }
public void BatchCreateProductByName() { const int batchSize = 5; var factory = new BatchFactory(); IEnumerable <IProduct> products = factory.Create(batchSize); Assert.AreEqual(batchSize, products.Count()); Assert.AreEqual(batchSize, products.Count(x => x is ProductA)); products = factory.Create("a", batchSize); Assert.AreEqual(batchSize, products.Count()); Assert.AreEqual(batchSize, products.Count(x => x is ProductA)); products = factory.Create("b", batchSize); Assert.AreEqual(batchSize, products.Count()); Assert.AreEqual(batchSize, products.Count(x => x is ProductB)); }
public void BatchCreateProductByName() { var batchSize = 5; var factory = new BatchFactory(); //create default product var products = factory.Create(batchSize); Assert.AreEqual <int>(batchSize, products.Count()); Assert.AreEqual <int>(batchSize, products.Count(x => x is ProductA)); //concrete product type by name products = factory.Create("a", batchSize); Assert.AreEqual <int>(batchSize, products.Count()); Assert.AreEqual <int>(batchSize, products.Count(x => x is ProductA)); products = factory.Create("b", batchSize); Assert.AreEqual <int>(batchSize, products.Count()); Assert.AreEqual <int>(batchSize, products.Count(x => x is ProductB)); }