def test_report_fixtures_provider_with_app_that_doesnt_have_reports(self): from corehq.apps.userreports.reports.data_source import ConfigurableReportDataSource with patch.object(ConfigurableReportDataSource, "get_data") as get_data_mock: get_data_mock.return_value = self.rows fixtures = report_fixture_generator(self.user, "2.0", None, app=self.app3) self.assertEqual(len(fixtures), 0)
def test_report_fixtures_provider_with_app_that_doesnt_have_reports(self): from corehq.apps.userreports.reports.data_source import ConfigurableReportDataSource with patch.object(ConfigurableReportDataSource, 'get_data') as get_data_mock: get_data_mock.return_value = self.rows fixtures = report_fixture_generator(self.user, '2.0', None, app=self.app3) self.assertEqual(len(fixtures), 0)
def test_report_fixtures_provider_with_app(self): """ ReportFixturesProvider should not iterate all apps if app given """ from corehq.apps.userreports.reports.data_source import ConfigurableReportDataSource with patch.object(ConfigurableReportDataSource, 'get_data') as get_data_mock: get_data_mock.return_value = self.rows fixtures = report_fixture_generator(self.user, '2.0', None, app=self.app1) reports = fixtures[0].findall('.//report') self.assertEqual(len(reports), 1) self.assertEqual(reports[0].attrib.get('id'), '123456')
def test_report_fixtures_provider_without_app(self): """ ReportFixturesProvider should iterate all apps if app not given """ from corehq.apps.userreports.reports.data_source import ConfigurableReportDataSource with patch.object(ConfigurableReportDataSource, 'get_data') as get_data_mock: get_data_mock.return_value = self.rows fixtures = report_fixture_generator(self.user, '2.0', None) reports = fixtures[0].findall('.//report') self.assertEqual(len(reports), 2) report_ids = {r.attrib.get('id') for r in reports} self.assertEqual(report_ids, {'123456', 'abcdef'})
def test_report_fixtures_provider_with_app(self): """ ReportFixturesProvider should not iterate all apps if app given """ from corehq.apps.userreports.reports.data_source import ConfigurableReportDataSource with patch.object(ConfigurableReportDataSource, "get_data") as get_data_mock: get_data_mock.return_value = self.rows with mock_sql_backend(): with mock_datasource_config(): fixtures = report_fixture_generator(self.user, "2.0", None, app=self.app1) reports = fixtures[0].findall(".//report") self.assertEqual(len(reports), 1) self.assertEqual(reports[0].attrib.get("id"), "123456")