public void AddTest() { var col = new MyNewCollection("TestCollection", 10); col.Add((Food) new Food().CreateRandom()); Assert.AreEqual(11, col.Count); }
public void AddRandomTest() { var col = new MyNewCollection("TestCollection", 10); col.AddRandom(); Assert.AreEqual(11, col.Count); }
public void IndexSetTest() { var col = new MyNewCollection("TestCollection", 10); Food testItem = (Food) new Food().CreateRandom(); col[0] = testItem; Assert.AreEqual(testItem, col[0]); }
public static void GetMarket(MyNewCollection collection) { Console.WriteLine("Выбран магазин " + collection.Name); collection.Print(); Console.WriteLine("1-Работа с продуктами"); Console.WriteLine("2-Очистить магазин"); Console.WriteLine("3-Добавить продукты в магазин"); CollectionAction(collection); }
public void CollectionReferenceChangedEventTest() { var col1 = new MyNewCollection("FirstCol", 10); var journal = new Journal(); col1.CollectionReferenceChanged += journal.OnCollectionReferenceChanged; col1[5] = (Food) new Food().CreateRandom(); Assert.IsTrue(journal.ToString().Contains("Изменена ссылка")); }
/// <summary> /// Включение подписок на события /// </summary> /// <param name="collection"></param> static void IncludeDependences(MyNewCollection collection) { collection.CollectionProductChanged += new CollectionHandler(journal.CollectionProductChanged); collection.DiscountProductIsEnd += new Discounter(journal.ProductStorageLifeEnd); collection.CollectionProductCountChanged += new CollectionHandler(journal.CollectionProductCountChanged); FoodProduct.DiscountChange += new Discounter(journal.ProductDiscountChanged); collection.Add(new IndustrialProduct("быдых", 100, 1000, 10, DateTime.Now, 20)); FillCollection(collection); }
/// <summary> /// Заполненик коллекции продуктами /// </summary> /// <param name="coll"></param> static void FillCollection(MyNewCollection coll) { List <Product> prod = Generator.Generator.generate(); for (int i = 0; i < prod.Count; i++) { coll.Add(prod[i]); } }
public void SaveToAccess(string about, MyNewCollection productCollection, Journal journal) { try { OleDbConnection connection = new OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=Market.mdb"); connection.Open(); OleDbCommand command; if (productCollection.backups == 1) { string query = $"INSERT INTO [Market] ([market_name],[count_products],[count_backups],[count_offedproducts]) VALUES ('{productCollection.Name}',{productCollection.Count},{productCollection.backups},{journal.DeadProducts.Count})"; command = new OleDbCommand(query, connection); command.ExecuteNonQuery(); command.Dispose(); foreach (var product in productCollection) { var item = (FoodProduct)product; string add = $"INSERT INTO [Products] ( [name_product],[storage_life],[price],[date_production],[discount],[dead],[market_name] ) VALUES ( '{item.Name}',{item.StorageLife},{(int)item.Price},'{item.DateProduction}',{item.PercentDiscount},{item.ProductLifeIsDead},'{productCollection.Name}')"; command = new OleDbCommand(add, connection); command.ExecuteNonQuery(); } command.Dispose(); } else { string query = $"UPDATE Market SET count_backups ={productCollection.backups},count_products ={productCollection.Count},count_offedproducts ={journal.DeadProducts.Count} WHERE market_name ='{productCollection.Name}'"; command = new OleDbCommand(query, connection); command.ExecuteNonQuery(); Console.WriteLine("Информация о магазине в базе данных обновлена"); foreach (var product in productCollection) { var item = (FoodProduct)product; item.Check(); string add = $"UPDATE Products SET storage_life={item.StorageLife},price={(int)item.Price},discount={item.PercentDiscount},dead={item.isOffed} WHERE name_product='{item.Name}'"; command = new OleDbCommand(add, connection); command.ExecuteNonQuery(); } Console.WriteLine("Информация о продуктах обновлена"); } Console.WriteLine("База данных сохранена в Market.mdb"); connection.Close(); connection.Dispose(); } catch (Exception e) { Console.WriteLine(e); } }
public void CollectionCountChangedEventTest() { var col1 = new MyNewCollection("FirstCol", 10); var journal = new Journal(); col1.CollectionCountChanged += journal.OnCollectionCountChanged; col1.Remove(5); col1.AddRandom(); col1.Add((Food) new Food().CreateRandom()); Assert.IsTrue(journal.ToString().Contains("Удаление")); Assert.IsTrue(journal.ToString().Contains("Добавление")); }
public static void Actions(MyNewCollection collection) { collection.Print(); Console.WriteLine("1- Выбрать товар"); Console.WriteLine("2- Сортировка товара по цене"); Console.WriteLine("3- Удалить товар"); switch (Console.ReadLine()) { case "1": Console.WriteLine("Введите индекс товара"); try { int index = InputValidator.InputPositive(); Product product = collection[index]; string name = Console.ReadLine(); string price product.ChangeProduct(); collection.ChangeProduct(index, product); } catch (Exception e) { Console.WriteLine("Товара нет в списке"); } Actions(collection); break; case "2": collection.SortByPrice(); collection.Print(); Actions(collection); break; case "3": try { int index = InputValidator.InputPositive(); Product product = collection[index]; collection.Remove(product); } catch (Exception e) { Console.WriteLine("Товара нельзя удалить"); } break; default: Actions(collection); break; } }
public void RemoveErrorTest() { var col = new MyNewCollection("TestCollection", 10); try { col.Remove(10); Assert.Fail(); } catch { } }
public void SortSerialize(MyNewCollection collection, string typefile) { try { FileStream fs = new FileStream($"{typefile}.xml", FileMode.OpenOrCreate); fs.Close(); fs.Dispose(); } catch (Exception e) { Console.WriteLine(e.Message); throw; } }
public MyNewCollection Deserialize(string file) { BinaryFormatter formatter = new BinaryFormatter(); try { FileStream fs = new FileStream(file, FileMode.OpenOrCreate); MyNewCollection collection = (MyNewCollection)formatter.Deserialize(fs); fs.Close(); fs.Dispose(); return(collection); } catch (Exception e) { Console.WriteLine(e); throw; } }
public void Serialize(MyNewCollection collection, string colname, Journal journal) { BinaryFormatter formatter = new BinaryFormatter(); try { FileStream fs = new FileStream($"{colname}.dat", FileMode.OpenOrCreate); formatter.Serialize(fs, collection); fs.Close(); fs.Dispose(); Backup(colname); SaveToAccess(collection.Name, collection, journal); collection.backups++; } catch (Exception e) { Console.WriteLine(e); } }
public static void CollectionAction(MyNewCollection collection) { switch (Console.ReadLine()) { case "1": Actions(collection); break; case "2": collection.Clear(); break; case "3": FillCollection(collection); break; default: Console.WriteLine("Вы выбрали неверный ответ"); CollectionAction(collection); break; } }
public void NameTest() { var col = new MyNewCollection("TestCollection", 10); Assert.AreEqual("TestCollection", col.Name); }
public void ConstructorTest() { var col = new MyNewCollection("TestCollection", 10); Assert.AreEqual(10, col.Count); }