def test_change_article_availability(self): # Given articles = [{ "id": "1", "name": ["mlotek", "hammer"], "total_quantity": 2, "quantity": 2, "is_available": True }, { "id": "2", "name": ["wiertarka", "driller"], "total_quantity": 2, "quantity": 2, "is_available": False }] with open(self.config_file_name, "w") as f: json.dump(articles, f) config_manager = ConfigManager() config_manager.db_path = self.config_file_name db = DBConnector(DbFileConnector(config_manager)) search_id = '2' expected = Article('2', ["wiertarka", "driller"], 2, 2, True) # When article = db.change_article_availability(search_id, True) # Then self.assertEqual(expected, article)
def i_change_to_not_available_article(step, number): config_manager = ConfigManager() config_manager.db_path = world.path_db db_file_connector = DbFileConnector(config_manager) db = DBConnector(db_file_connector) new_obj = db.change_article_availability(number, False) if new_obj: db.remove_article_by_id(number) db.add_article(new_obj) world.articles = db.get_all_articles()