/** Tests building a report query. */ @Test public void testBuild() { String expectedAwql = "SELECT CampaignId, CampaignName FROM CAMPAIGN_PERFORMANCE_REPORT WHERE " + "CampaignStatus = \"ENABLED\" DURING 20170101,20170131"; ReportQueryInterface reportQuery = new ReportQuery.Builder() .fields("CampaignId", "CampaignName") .from(ReportDefinitionReportType.CAMPAIGN_PERFORMANCE_REPORT) .where("CampaignStatus").equalTo("ENABLED") .during(new LocalDate(2017, 1, 1), new LocalDate(2017, 1, 31)) .build(); assertEquals(expectedAwql, reportQuery.toString()); checkUtilitiesState(); }
/** Tests building a report query using a copy constructor. */ @Test public void testBuildWithCopyConstructor() { ReportQueryInterface.BuilderInterface oldBuilder = new ReportQuery.Builder() .fields("CampaignId", "CampaignName") .from(ReportDefinitionReportType.CAMPAIGN_PERFORMANCE_REPORT) .where("CampaignStatus").notEqualTo("ENABLED") .during(new LocalDate(2017, 1, 1), new LocalDate(2017, 1, 31)); ReportQueryInterface expectedReportQuery = oldBuilder.build(); ReportQueryInterface newReportQuery = new ReportQuery.Builder(oldBuilder).build(); assertEquals(expectedReportQuery, newReportQuery); checkUtilitiesState(); }
/** Tests building a report query with enum date range. */ @Test public void testBuildWithEnumDateRange() { String expectedAwql = "SELECT CampaignId, CampaignName FROM CLICK_PERFORMANCE_REPORT " + "DURING THIS_WEEK_MON_TODAY"; ReportQueryInterface reportQuery = new ReportQuery.Builder() .fields("CampaignId", "CampaignName") .from(ReportDefinitionReportType.CLICK_PERFORMANCE_REPORT) .during(ReportDefinitionDateRangeType.THIS_WEEK_MON_TODAY) .build(); assertEquals(expectedAwql, reportQuery.toString()); checkUtilitiesState(); }