def main(argv=None): """Database main function """ args = parse_cmd_arguments(argv) if args.disable_log: logger.disable("__main__") logger.disable("src.database_operations") if args.all_products: pprint(db.list_all_products()) elif args.available_products: pprint(db.show_available_products()) elif args.all_customers: pprint(db.list_all_customers()) elif args.drop_collections: db.drop_collections() elif args.drop_database: db.drop_database() elif args.rentals_for_customer: pprint(db.rentals_for_customer(args.rentals_for_customer)) elif args.customers_renting_product: pprint(db.show_rentals(args.customers_renting_product)) elif args.insert: pprint(db.import_data(*args.insert))
def test_insert_to_mongo(): """ import given csv file into mongo """ l.drop_collections() data_dir = "./data/" added, errors = l.insert_to_mongo(data_dir, "product.csv") assert isinstance(added, int) assert isinstance(errors, int) assert added == 10 assert errors == 0 added, errors = l.insert_to_mongo(data_dir, "product.csv") assert added == 0 assert errors == 10 added, errors = l.insert_to_mongo(data_dir, "customers.csv") assert isinstance(added, int) assert isinstance(errors, int) assert added == 10 assert errors == 0 added, errors = l.insert_to_mongo(data_dir, "customers.csv") assert added == 0 assert errors == 10 added, errors = l.insert_to_mongo(data_dir, "rental.csv") assert isinstance(added, int) assert isinstance(errors, int) assert added == 9 assert errors == 0 added, errors = l.insert_to_mongo(data_dir, "rental.csv") assert added == 0 assert errors == 9
def test_insert_to_mongo(): """ import given csv file into mongo """ # l.drop_database() l.drop_collections() results = l.insert_to_mongo("./data/product.csv") results = results["product"] assert results["success"] == 9 assert results["fail"] == 0 assert results["total_records"] == 9 assert results["elapsed"] > 0 results = l.insert_to_mongo("./data/customers.csv") results = results["customers"] assert results["success"] == 9 assert results["fail"] == 0 assert results["total_records"] == 9 assert results["elapsed"] > 0 results = l.insert_to_mongo("./data/rental.csv") results = results["rental"] assert results["success"] == 9 assert results["fail"] == 0 assert results["total_records"] == 9 assert results["elapsed"] > 0 results = l.insert_to_mongo("./data/product.csv") results = results["product"] assert results["success"] == 0 assert results["fail"] == 9 assert results["total_records"] == 9 assert results["elapsed"] > 0 results = l.insert_to_mongo("./data/customers.csv") results = results["customers"] assert results["success"] == 0 assert results["fail"] == 9 assert results["total_records"] == 9 assert results["elapsed"] > 0 results = l.insert_to_mongo("./data/rental.csv") results = results["rental"] assert results["success"] == 0 assert results["fail"] == 9 assert results["total_records"] == 9 assert results["elapsed"] > 0
def test_drop_collections(): """ Test drop HPNorton collections """ l.insert_to_mongo("./data/customers.csv") l.insert_to_mongo("./data/product.csv") l.insert_to_mongo("./data/rental.csv") collection_names = ( l.MONGO.connection.HPNorton_PyMongo_L07.list_collection_names()) assert "customers" in collection_names assert "product" in collection_names assert "rental" in collection_names l.drop_collections() collection_names = ( l.MONGO.connection.HPNorton_PyMongo_L07.list_collection_names()) assert "customers" not in collection_names assert "product" not in collection_names assert "rental" not in collection_names
def test_drop_collections(): """Test drop HPNorton collections """ l.drop_collections() data_dir = "./data/" added, errors = l.import_data(data_dir, "product.csv", "customers.csv", "rental.csv") assert added == (10, 10, 9) assert errors == (0, 0, 0) l.drop_collections() # If drop_collections() wasn't working, the following assertions would fail. added, errors = l.import_data(data_dir, "product.csv", "customers.csv", "rental.csv") assert added == (10, 10, 9) assert errors == (0, 0, 0)
def test_import_data(): """ import """ l.drop_collections() data_dir = "./data/" added, errors = l.import_data(data_dir, "product.csv", "customers.csv", "rental.csv") for add in added: assert isinstance(add, int) for error in errors: assert isinstance(error, int) assert added == (10, 10, 9) assert errors == (0, 0, 0) added, errors = l.import_data(data_dir, "product.csv", "customers.csv", "rental.csv") assert added == (0, 0, 0) assert errors == (10, 10, 9)