def test_data_partitions_with_default_data_paths(self): self.log.info("Fetch number of cores on cbas node") shell = RemoteMachineShellConnection(self.cbas_node) cores = shell.get_number_of_cores()[0] self.log.info("Number of cores %s" % cores) self.log.info("Fetch IO Devices path on CBAS node") status, content, _ = self.cbas_util.fetch_config_on_cbas() self.assertTrue(status, msg="Fetch config on CBAS failed") config_dict = json.loads((content.decode("utf-8"))) io_devices = len(config_dict["iodevices"]) self.log.info("Number of IO devices on cluster %d" % io_devices) self.log.info("Fetch number of partitions") response = self.cbas_util.fetch_analytics_cluster_response(shell) if 'partitions' in response: partitions = len(response['partitions']) self.log.info("Number of data partitions on cluster %d" % partitions) self.log.info("Assert number of partitions/IO devices") fixed_partitions = self.input.param("fixed_partitions", False) if fixed_partitions: self.log.info("Fixed partitions") self.log.info(self.cbas_path) expected_partitions = len(self.cbas_path.split(",")) else: self.log.info("Variable partitions : Pick min of cores on machine, cbas_memory_quota") expected_partitions = min(min(16, int(cores)), int(self.cbas_memory_quota/1024)) self.log.info("Expected partitions %d" % expected_partitions) self.assertTrue(partitions==expected_partitions, msg="Number of partitions mismatch. Expected %s Actual %s" %(expected_partitions, partitions)) self.assertTrue(io_devices==expected_partitions, msg="Number of IO devices mismatch. Expected %s Actual %s" %(expected_partitions, io_devices))