def test_remove_expired_report_data_no_accounts(self, mock_task, mock_remover, mock_accessor): """Test removing expired report data with no accounts.""" expected_results = [{"account_payer_id": "999999999", "billing_period_start": "2018-06-24 15:47:33.052509"}] mock_remover.return_value = expected_results mock_accessor.return_value = [] orchestrator = Orchestrator() results = orchestrator.remove_expired_report_data() self.assertEqual(results, [])
def expired_data(): """Return expired data.""" simulate = True if request.method == 'DELETE' and Config.DEBUG: simulate = False LOG.info('Simulate Flag: %s', simulate) orchestrator = Orchestrator() async_delete_results = orchestrator.remove_expired_report_data(simulate=simulate) response_key = 'Async jobs for expired data removal' if simulate: response_key = response_key + ' (simulated)' return jsonify({response_key: str(async_delete_results)})
def expired_data(request): """Return expired data.""" simulate = True if request.method == "DELETE" and Config.DEBUG: simulate = False LOG.info("Simulate Flag: %s", simulate) orchestrator = Orchestrator() async_delete_results = orchestrator.remove_expired_report_data( simulate=simulate) response_key = "Async jobs for expired data removal" if simulate: response_key = response_key + " (simulated)" return Response({response_key: str(async_delete_results)})
def test_remove_expired_report_data(self, mock_task, mock_remover): """Test removing expired report data.""" expected_results = [{"account_payer_id": "999999999", "billing_period_start": "2018-06-24 15:47:33.052509"}] mock_remover.return_value = expected_results expected = "INFO:masu.processor.orchestrator:Expired data removal queued - schema_name: acct10001, Task ID: {}" # unset disabling all logging below CRITICAL from masu/__init__.py logging.disable(logging.NOTSET) with self.assertLogs("masu.processor.orchestrator", level="INFO") as logger: orchestrator = Orchestrator() results = orchestrator.remove_expired_report_data() self.assertTrue(results) self.assertEqual(len(results), 4) async_id = results.pop().get("async_id") self.assertIn(expected.format(async_id), logger.output)
def test_remove_expired_report_data(self, mock_task, mock_remover): """Test removing expired report data.""" expected_results = [{ 'account_payer_id': '999999999', 'billing_period_start': '2018-06-24 15:47:33.052509', }] mock_remover.return_value = expected_results expected = 'INFO:masu.processor.orchestrator:Expired data removal queued - customer: acct10001, Task ID: {}' # unset disabling all logging below CRITICAL from masu/__init__.py logging.disable(logging.NOTSET) with self.assertLogs('masu.processor.orchestrator', level='INFO') as logger: orchestrator = Orchestrator() results = orchestrator.remove_expired_report_data() self.assertTrue(results) self.assertEqual(len(results), 2) async_id = results.pop().get('async_id') self.assertIn(expected.format(async_id), logger.output)
def expired_data(request): """Return expired data.""" simulate = True if request.method == "DELETE" and Config.DEBUG: simulate = False LOG.info("Simulate Flag: %s", simulate) params = request.query_params acceptabools = ["true", "false"] line_items_only = params.get("line_items_only", "false").lower() if line_items_only not in acceptabools: errmsg = "The param line_items_only must be {}.".format( str(acceptabools)) return Response({"Error": errmsg}, status=status.HTTP_400_BAD_REQUEST) line_items_only = json.loads(line_items_only) orchestrator = Orchestrator() async_delete_results = orchestrator.remove_expired_report_data( simulate=simulate, line_items_only=line_items_only) response_key = "Async jobs for expired data removal" if simulate: response_key = response_key + " (simulated)" return Response({response_key: str(async_delete_results)})
def remove_expired_data(): """Scheduled task to initiate a job to remove expired report data.""" today = DateAccessor().today() LOG.info('Removing expired data at %s', str(today)) orchestrator = Orchestrator() orchestrator.remove_expired_report_data()
def remove_expired_data(simulate=False, line_items_only=False): """Scheduled task to initiate a job to remove expired report data.""" today = DateAccessor().today() LOG.info("Removing expired data at %s", str(today)) orchestrator = Orchestrator() orchestrator.remove_expired_report_data(simulate, line_items_only)