package com.linkedin.thirdeye.datalayer.bao; import com.linkedin.thirdeye.datalayer.dto.DatasetConfigDTO; import java.util.List; import org.testng.Assert; import org.testng.annotations.AfterClass; import org.testng.annotations.BeforeClass; import org.testng.annotations.Test; public class TestDatasetConfigManager extends AbstractManagerTestBase { private Long datasetConfigId1; private Long datasetConfigId2; private static String collection1 = "my dataset1"; private static String collection2 = "my dataset2"; @BeforeClass void beforeClass() { super.init(); } @AfterClass(alwaysRun = true) void afterClass() { super.cleanup(); } @Test public void testCreate() { DatasetConfigDTO datasetConfig1 = getTestDatasetConfig(collection1); datasetConfig1.setRequiresCompletenessCheck(true); datasetConfigId1 = datasetConfigDAO.save(datasetConfig1); Assert.assertNotNull(datasetConfigId1); DatasetConfigDTO datasetConfig2 = getTestDatasetConfig(collection2); datasetConfig2.setActive(false); datasetConfig2.setRequiresCompletenessCheck(true); datasetConfigId2 = datasetConfigDAO.save(datasetConfig2); Assert.assertNotNull(datasetConfigId2); List<DatasetConfigDTO> datasetConfigs = datasetConfigDAO.findAll(); Assert.assertEquals(datasetConfigs.size(), 2); datasetConfigs = datasetConfigDAO.findActive(); Assert.assertEquals(datasetConfigs.size(), 1); } @Test(dependsOnMethods = {"testCreate"}) public void testFindByDataset() { DatasetConfigDTO datasetConfigs = datasetConfigDAO.findByDataset(collection1); Assert.assertEquals(datasetConfigs.getDataset(), collection1); } @Test(dependsOnMethods = { "testFindByDataset" }) public void testUpdate() { DatasetConfigDTO datasetConfig = datasetConfigDAO.findById(datasetConfigId1); Assert.assertNotNull(datasetConfig); Assert.assertFalse(datasetConfig.isMetricAsDimension()); datasetConfig.setMetricAsDimension(true); datasetConfigDAO.update(datasetConfig); datasetConfig = datasetConfigDAO.findById(datasetConfigId1); Assert.assertNotNull(datasetConfig); Assert.assertTrue(datasetConfig.isMetricAsDimension()); } @Test(dependsOnMethods = { "testUpdate" }) public void testDelete() { datasetConfigDAO.deleteById(datasetConfigId2); DatasetConfigDTO datasetConfig = datasetConfigDAO.findById(datasetConfigId2); Assert.assertNull(datasetConfig); } @Test(dependsOnMethods = {"testCreate"}) public void testActiveRequiresCompletenessCheck() { Assert.assertEquals(datasetConfigDAO.findActiveRequiresCompletenessCheck().size(), 1); } }