def testExportSourceCubeCsv(self): cubeSetName = "test-" + str(uuid.uuid4()) csvFilePath = cubeSetName + ".csv" try: shutil.copyfile("cubify/tests/testdata.csv", cubeSetName + ".csv") except Exception: shutil.copyfile("./testdata.csv", cubeSetName + ".csv") binningFileName = "cubify/tests/test_binnings.json" if os.path.isfile(binningFileName) == False: binningFileName = "./test_binnings.json" with open(binningFileName) as binnings_file: binnings = json.load(binnings_file) aggFileName = "cubify/tests/test_agg.json" if os.path.isfile(aggFileName) == False: aggFileName = "./test_agg.json" with open(aggFileName) as agg_file: aggs = json.load(agg_file) cs = CubeSetService("testdb") cubeSet = cs.createCubeSet("testOwner", cubeSetName, csvFilePath, binnings, aggs) cs.exportSourceCubeToCsv(cubeSet, "cubeSetSourceExported.csv") with open("cubeSetSourceExported.csv") as csvfile: reader = csv.DictReader(csvfile) fieldNames = reader.fieldnames self.assertTrue(fieldNames == ["S:CustomerId", "S:ProductId", "S:State", "D:Date", "N:Price", "N:Qty"]) rowNum = 0 for row in reader: rowNum += 1 self.assertTrue(rowNum == 14) os.remove(cubeSetName + ".csv") os.remove("cubeSetSourceExported.csv")