• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

uw-it-aca / pathways / 4388556538

pending completion
4388556538

push

github

GitHub
Merge pull request #237 from uw-it-aca/develop

68 of 68 new or added lines in 9 files covered. (100.0%)

578 of 852 relevant lines covered (67.84%)

0.68 hits per line

Source File
Press 'n' to go to next uncovered line, 'b' for previous

24.32
/pathways/views/api/user.py
1
# Copyright 2023 UW-IT, University of Washington
2
# SPDX-License-Identifier: Apache-2.0
3

4
from pathways.views.api import RESTDispatch
1✔
5
from pathways.models.user import User
1✔
6
from django.utils.decorators import method_decorator
1✔
7
from django.contrib.auth.decorators import login_required
1✔
8
from uw_saml.utils import get_user
1✔
9
import json
1✔
10

11

12
@method_decorator(login_required, name="dispatch")
1✔
13
class UserPreference(RESTDispatch):
1✔
14
    def post(self, request, *args, **kwargs):
1✔
15
        uwnetid = get_user(self.request)
×
16
        request_params = json.loads(request.body)
×
17
        welcome_display = request_params.get("viewed_welcome_display")
×
18
        bottleneck_display = request_params.get("viewed_bottleneck_banner")
×
19
        outcomes_display = request_params.get("viewed_outcomes_banner")
×
20
        coi_display = request_params.get("viewed_coi_banner")
×
21

22
        user, created = \
×
23
            User.objects.get_or_create(uwnetid=uwnetid)
24
        user_updated = False
×
25
        if welcome_display is not None:
×
26
            if welcome_display != user.has_viewed_welcome:
×
27
                user_updated = True
×
28
                user.has_viewed_welcome = welcome_display
×
29
        if bottleneck_display is not None:
×
30
            if bottleneck_display != user.has_viewed_bottleneck_banner:
×
31
                user_updated = True
×
32
                user.has_viewed_bottleneck_banner = bottleneck_display
×
33
        if outcomes_display is not None:
×
34
            if outcomes_display != user.has_viewed_outcomes_banner:
×
35
                user_updated = True
×
36
                user.has_viewed_outcomes_banner = outcomes_display
×
37
        if coi_display is not None:
×
38
            if coi_display != user.has_viewed_outcomes_banner:
×
39
                user_updated = True
×
40
                user.has_viewed_coi_banner = coi_display
×
41
        if user_updated:
×
42
            user.save()
×
43
            return self.json_response(status=200)
×
44
        else:
45
            return self.json_response(status=304)
×
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc