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

kobotoolbox / kpi / 13265713528
81%
master: 76%

Build:
Build:
LAST BUILD BRANCH: beccagraber/dev-1452-new_action
DEFAULT BRANCH: master
Ran 11 Feb 2025 03:31PM UTC
Jobs 1
Files 626
Run time 239min
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

11 Feb 2025 02:53PM UTC coverage: 80.715%. Remained the same
13265713528

push

github

web-flow
feat(organizationInvites): UI for accepting invite TASK-1093 (#5479)

### 📣 Summary
Display Modal for accepting or declining invitation to join
team/organization. Display dismissable info banner after joining
team/organization.

### 💭 Notes
Fix mutation functions not returning a promise in
`membersInviteQuery.ts`. Create new hook `useSafeUsernameStorageKey`
that produces a safe key for local/session storage and use it in
`NewFeatureDialog` and `OrgInviteAcceptedBanner`.

### 👀 Preview steps

Temp HACK:
- in `kpi/kobo/apps/organizations/permissions.py` between line 70 and 71
add:
  ```
  return True
  ```
- this makes invitations endpoint accessible (until BE fixes this)

Steps to test it:
1. ℹ️ have a user (e.g "zefir") who has an MMO organization (find the ID
of organization, e.g. "org4K8HofCw2gDW3hfGvbJ2s")
2. ℹ️ have a user (e.g. "natalia")
3. ℹ️ have SMTP properly enabled (see Notion article if needed)
4. manually invite "natalia" to join organization that "zefir" owns:
   ```
   cd kobo-install
   ./run.py -cf exec kpi bash
   ./manage.py shell_plus
   
   org = Organization.objects.get(id="org4K8HofCw2gDW3hfGvbJ2s")
   zefir = User.objects.get(username="zefir")
   natalia = User.objects.get(username="natalia")
invite = OrganizationInvitation.objects.create(invited_by=zefir,
invitee=natalia, invitee_role="member", organization=org)
invite.guid // this gives you invitation id, e.g.
"a4832198-8baa-47c8-bc74-568c2db601fd"
   ```
5. logged in as "natalia" visit (make sure to use your ids):
http://kf.kobo.local/#/projects/home?organization_id=org4K8HofCw2gDW3hfGvbJ2s&organization_invite=a4832198-8baa-47c8-bc74-568c2db601fd
7. 🟢 notice that a modal appears (with accept and decline buttons)
8. click "Accept"
9. 🟢 notice a notification appears and a banner
10. reload page
11. 🟢 notice the banner persists
12. click "x" on the banner
13. 🟢 notice the banner disappears forever (action stored localStorage

5991 of 9536 branches covered (62.83%)

22764 of 28203 relevant lines covered (80.71%)

0.81 hits per line

Jobs
ID Job ID Ran Files Coverage
1 13265713528.1 11 Feb 2025 03:31PM UTC 626
80.71
Source Files on build 13265713528
  • Tree
  • List 626
  • Changed 0
  • Source Changed 0
  • Coverage Changed 0
Coverage ∆ File Lines Relevant Covered Missed Hits/Line Branch Hits Branch Misses
  • Back to Repo
  • 9802a92b on github
  • Prev Build on main (#13263907128)
  • Next Build on main (#13295670900)
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

© 2025 Coveralls, Inc