def test_process_yum_mongo_file(self, mock_date): """Function: test_process_yum_mongo_file Description: Test writing to Mongo database and to a file. Arguments: """ mock_date.datetime.strftime.return_value = self.time_str package_admin.process_yum(self.args_array, self.yum, self.dict_key, self.func_name, class_cfg=self.mongo_cfg) mongo = mongo_libs.crt_coll_inst(self.mongo_cfg, self.dbn, self.tbl) mongo.connect() if mongo.coll_find1()["Server"] == self.yum.hostname: status = filecmp.cmp(self.out_file, self.non_json_file) else: status = False mongo_libs.disconnect([mongo]) self.assertTrue(status)
def test_main_repo_mongo_file(self, mock_date, mock_host, mock_data, mock_distro): """Function: test_main_repo_mongo_file Description: Test writing to Mongo database and to a file for repo option. Arguments: """ mock_date.datetime.strftime.return_value = self.time_str mock_data.return_value = self.repo_data mock_host.return_value = self.hostname mock_distro.return_value = self.distro cmdline = gen_libs.get_inst(sys) self.argv_list.append("-R") cmdline.argv = self.argv_list package_admin.main() mongo = mongo_libs.crt_coll_inst(self.mongo_cfg, self.dbn, self.tbl) mongo.connect() if mongo.coll_find1()["Server"] == self.hostname: status = filecmp.cmp(self.out_file, self.repo_non_json_file) else: status = False mongo_libs.disconnect([mongo]) self.assertTrue(status)
def mongo_check(config_path, config_file): """Function: mongo_check Description: Check the contents of the output file based on the items in the search_list variable and check to see if file is in JSON format. Arguments: (input) config_path -> Path name to configuration file. (input) config_file -> Name of configuration file, without .py ext. (output) status -> True|False - Status of checks. """ status = True cfg = gen_libs.load_module(config_file, config_path) coll = mongo_libs.crt_coll_inst(cfg, cfg.db, cfg.coll) coll.connect() status = coll.coll_cnt() == 1 mongo = mongo_class.DB(cfg.name, cfg.user, cfg.passwd, host=cfg.host, port=cfg.port, db=cfg.db, auth=cfg.auth, conf_file=cfg.conf_file) mongo.db_connect(cfg.db) mongo.db_cmd("dropDatabase") cmds_gen.disconnect([coll, mongo]) return status
def test_list_repo_mongo(self, mock_date): """Function: test_list_repo_mongo Description: Test writing to Mongo database. Arguments: """ mock_date.datetime.strftime.return_value = self.time_str package_admin.list_repo(self.args_array3, self.yum, class_cfg=self.mongo_cfg) mongo = mongo_libs.crt_coll_inst(self.mongo_cfg, self.dbn, self.tbl) mongo.connect() status = \ True if mongo.coll_find1()["Server"] == self.yum.hostname \ else False mongo_libs.disconnect([mongo]) self.assertTrue(status)
def test_main_repo_mongo(self, mock_date, mock_host, mock_data): """Function: test_main_repo_mongo Description: Test writing to Mongo database for repo option. Arguments: """ mock_date.datetime.strftime.return_value = self.time_str mock_data.return_value = self.repo_data mock_host.return_value = self.hostname cmdline = gen_libs.get_inst(sys) self.argv_list3.append("-R") cmdline.argv = self.argv_list3 package_admin.main() mongo = mongo_libs.crt_coll_inst(self.mongo_cfg, self.dbn, self.tbl) mongo.connect() status = \ True if mongo.coll_find1()["Server"] == self.hostname else False mongo_libs.disconnect([mongo]) self.assertTrue(status)
def test_run_program_repo_mongo_file(self, mock_date, mock_host, mock_data, mock_distro): """Function: test_run_program_repo_mongo_file Description: Test writing to Mongo database and to a file for update option. Arguments: """ mock_date.datetime.strftime.return_value = self.time_str mock_data.return_value = self.repo_data mock_host.return_value = self.hostname mock_distro.return_value = self.distro self.args_array["-R"] = True package_admin.run_program(self.args_array, self.func_dict) mongo = mongo_libs.crt_coll_inst(self.mongo_cfg, self.dbn, self.tbl) mongo.connect() if mongo.coll_find1()["Server"] == self.hostname: status = filecmp.cmp(self.out_file, self.repo_non_json_file) else: status = False mongo_libs.disconnect([mongo]) self.assertTrue(status)
def test_run_program_repo_mongo(self, mock_date, mock_host, mock_data): """Function: test_run_program_repo_mongo Description: Test writing to Mongo database for install option. Arguments: """ mock_date.datetime.strftime.return_value = self.time_str mock_data.return_value = self.repo_data mock_host.return_value = self.hostname self.args_array3["-R"] = True package_admin.run_program(self.args_array3, self.func_dict) mongo = mongo_libs.crt_coll_inst(self.mongo_cfg, self.dbn, self.tbl) mongo.connect() status = \ True if mongo.coll_find1()["Server"] == self.hostname else False mongo_libs.disconnect([mongo]) self.assertTrue(status)
def run_compact(mongo, db_name, tbl_list=None, **kwargs): """Function: run_compact Description: Changes database instance to new database and executes compact command within the class instance against a list of tables. Arguments: (input) mongo -> Database instance. (input) db_name -> Database name. (input) tbl_list -> List of tables. """ if tbl_list is None: tbl_list = [] else: tbl_list = list(tbl_list) mongo.chg_db(dbs=db_name) print("Compacting for %s" % (mongo.db_name)) if not tbl_list: tbl_list = mongo.get_tbl_list(False) for item in tbl_list: print("\tCompacting: {0:50}".format(item + "..."), end="") coll = mongo_libs.crt_coll_inst(mongo, db_name, item) state = coll.connect() if state[0]: if coll.coll_options().get("capped", False): print("\tCollection capped: not compacted") else: if mongo.db_cmd("compact", obj=item)["ok"] == 1: print("\tDone") else: print("\tCommand Failed") mongo_libs.disconnect([coll]) else: print("\tError encountered: %s" % (state[1]))
def test_mongo(self): """Function: test_mongo Description: Test inserting data into Mongo database. Arguments: """ self.args_array.update({"-n": True, "-m": True}) server_usage.run_program(self.args_array) coll = mongo_libs.crt_coll_inst(self.cfg, self.cfg.db, self.cfg.coll) coll.connect() self.assertTrue(coll.coll_cnt() == 1)
def test_mongo(self): """Function: test_mongo Description: Test inserting data into Mongo database. Arguments: """ cmdline = gen_libs.get_inst(sys) self.argv_list.extend(("-m", "-n")) cmdline.argv = self.argv_list server_usage.main() coll = mongo_libs.crt_coll_inst(self.cfg, self.cfg.db, self.cfg.coll) coll.connect() self.assertTrue(coll.coll_cnt() == 1)
def test_mongo_insert(self): """Function: test_mongo_insert Description: Test inserting data into Mongo database. Arguments: """ args_array = {"-n": True, "-m": True} server_usage.post_process(self.proc_data, args_array, self.cfg) coll = mongo_libs.crt_coll_inst(self.cfg, self.cfg.db, self.cfg.coll) coll.connect() self.assertTrue(coll.coll_cnt() == 1)
def mongo_check(mongo_cfg, hostname, dbn, tbl): """Function: mongo_check Description: Validates the contents of the mongo database. Arguments: (input) mongo_cfg -> Mongo server configuration. (input) hostname -> Host name of the server running the check. (input) dbn -> Name of the database in Mongo. (input) tbl -> Name of the table in Mongo. """ coll = mongo_libs.crt_coll_inst(mongo_cfg, dbn, tbl) coll.connect() status = True if coll.coll_find1()["Server"] == hostname else False mongo_libs.disconnect([coll]) return status