def test_get_tag_keys(self): """Test that all OCP-on-AWS tag keys are returned.""" query_params = {'filter': {'resolution': 'monthly', 'time_scope_value': -2, 'time_scope_units': 'month'}, } query_string = '?filter[resolution]=monthly&' + \ 'filter[time_scope_value]=-2&' + \ 'filter[time_scope_units]=month&' handler = OCPAWSTagQueryHandler( query_params, query_string, self.tenant, **{} ) with tenant_context(self.tenant): tag_keys = OCPAWSCostLineItemDailySummary.objects\ .annotate(tag_keys=JSONBObjectKeys('tags'))\ .values('tag_keys')\ .distinct()\ .all() tag_keys = [tag.get('tag_keys') for tag in tag_keys] result = handler.get_tag_keys() self.assertEqual(sorted(result), sorted(tag_keys))
def test_get_tag_keys(self): """Test that all OCP-on-AWS tag keys are returned.""" url = '?filter[time_scope_units]=month&filter[time_scope_value]=-2&filter[resolution]=monthly' query_params = self.mocked_query_params(url, OCPAWSTagView) handler = OCPAWSTagQueryHandler(query_params) with tenant_context(self.tenant): tag_keys = (OCPAWSCostLineItemDailySummary.objects.annotate( tag_keys=JSONBObjectKeys('tags')).values( 'tag_keys').distinct().all()) tag_keys = [tag.get('tag_keys') for tag in tag_keys] result = handler.get_tag_keys() self.assertEqual(sorted(result), sorted(tag_keys))