def test_simple(self):
        resp = self.get_response(qs_params={"v2": 1})
        assert resp.status_code == 200

        assert len(resp.data) == len(manager.all())
        for guide in resp.data:
            assert guide["seen"] is False
Esempio n. 2
0
 def get(self, request):
     """Return all the guides with a 'seen' attribute if it has been 'viewed' or 'dismissed'."""
     guides = deepcopy(manager.all())
     seen_ids = set(
         AssistantActivity.objects.filter(user=request.user, ).values_list(
             'guide_id', flat=True))
     for k, v in guides.items():
         v['seen'] = v['id'] in seen_ids
     return Response(guides)
Esempio n. 3
0
 def get(self, request):
     """Return all the guides with a 'seen' attribute if it has been 'viewed' or 'dismissed'."""
     guides = deepcopy(manager.all())
     seen_ids = set(AssistantActivity.objects.filter(
         user=request.user,
     ).values_list('guide_id', flat=True))
     for k, v in guides.items():
         v['seen'] = v['id'] in seen_ids
     return Response(guides)
Esempio n. 4
0
    def get(self, request):
        """Return all the guides the user has not viewed or dismissed."""
        guides = manager.all()
        exclude_ids = set(
            AssistantActivity.objects.filter(user=request.user, ).values_list(
                'guide_id', flat=True))
        result = {
            k: v
            for k, v in guides.items() if v['id'] not in exclude_ids
        }

        return Response(result)
Esempio n. 5
0
    def get(self, request):
        """Return all the guides with a 'seen' attribute if it has been 'viewed' or 'dismissed'."""
        active_guides = manager.all()
        seen_ids = set(
            AssistantActivity.objects.filter(user=request.user).values_list("guide_id", flat=True)
        )

        guides = [
            {"guide": guide.name.lower(), "seen": guide.value in seen_ids}
            for guide in active_guides
        ]
        return Response(guides)
Esempio n. 6
0
    def get(self, request):
        """Return all the guides with a 'seen' attribute if it has been 'viewed' or 'dismissed'."""
        guides = deepcopy(manager.all())
        seen_ids = set(
            AssistantActivity.objects.filter(user=request.user).values_list("guide_id", flat=True)
        )

        for key, value in six.iteritems(guides):
            value["seen"] = value["id"] in seen_ids

        if "v2" in request.GET:
            guides = [{"guide": key, "seen": value["seen"]} for key, value in six.iteritems(guides)]
        return Response(guides)
Esempio n. 7
0
    def test_activity(self):
        guides_with_seen = deepcopy(manager.all())
        for g in guides_with_seen:
            guides_with_seen[g]["seen"] = False

        resp = self.client.get(self.path)
        assert resp.status_code == 200
        assert resp.data == guides_with_seen

        # Dismiss the guide and make sure it is not returned again.
        resp = self.client.put(self.path, {"guide_id": 3, "status": "dismissed"})
        assert resp.status_code == 201
        resp = self.client.get(self.path)
        guides_with_seen["issue_stream"]["seen"] = True
        assert resp.status_code == 200
        assert resp.data == guides_with_seen
Esempio n. 8
0
    def test_activity(self):
        guides_with_seen = deepcopy(manager.all())
        for g in guides_with_seen:
            guides_with_seen[g]['seen'] = False

        resp = self.client.get(self.path)
        assert resp.status_code == 200
        assert resp.data == guides_with_seen

        # Dismiss the guide and make sure it is not returned again.
        resp = self.client.put(self.path, {
            'guide_id': 2,
            'status': 'dismissed',
        })
        assert resp.status_code == 201
        resp = self.client.get(self.path)
        guides_with_seen['releases']['seen'] = True
        assert resp.status_code == 200
        assert resp.data == guides_with_seen
 def guides(self):
     return manager.all()
 def setUp(self):
     super().setUp()
     self.login_as(user=self.user)
     self.path = reverse("sentry-api-0-assistant")
     self.guides = manager.all()
Esempio n. 11
0
 def setUp(self):
     super(AssistantActivity, self).setUp()
     self.login_as(user=self.user)
     self.path = reverse('sentry-api-0-assistant')
     self.guides = manager.all()