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

medplum / medplum / 23914850865
92%
main: 92%

Build:
Build:
LAST BUILD BRANCH: cody-collapse-duplicate-problems
DEFAULT BRANCH: main
Ran 02 Apr 2026 06:28PM UTC
Jobs 1
Files 755
Run time 2min
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

02 Apr 2026 06:07PM UTC coverage: 92.221% (+0.005%) from 92.216%
23914850865

push

github

web-flow
Teach scheduling operations to use HealthcareService scheduling parameters (#8580)

* Clean up required service-type parameter types

In commit b98f2b0551 this went from optional to required, but I missed
this opportunity to tidy up the types. Oops! Let's correct that.

Signed-off-by: Noah Silas <noah@medplum.com>

* Teach $find operation to use ActivityDefinition scheduling parameters

When setting up scheduling for multiple providers, we want to be able to
set the SchedulingParameters up in a single place and have it be shared
across other resources, so that we don't have to keep many Schedule
extensions in sync.

To that end, you may define these parameters on an ActivityDefinition
whose `code` attribute matches the `serviceType` value in the scheduling
parameters.

This has some extra priority rules that we must follow:

- If a Schedule has any extensions exactly matching a requested service
  type, only those extensions are used. This lets an individual calendar
  override the shared rules.

- Next, any extensions from an ActivityDefinition that match a requested
  service type are used.

Signed-off-by: Noah Silas <noah@medplum.com>

* Teach $book operation to use ActivityDefinition scheduling parameters

When setting up scheduling for multiple providers, we want to be able to
set the SchedulingParameters up in a single place and have it be shared
across other resources, so that we don't have to keep many Schedule
extensions in sync.

In the parent commit we implemented this in the $find operation. Here we
hoist some of the helpers authored there so they can be shared with
$book, and then start using them.

We perform a little bit of extra checking in $book (filtering the
returned scheduling parameters based on attributes like `duration` in
comparison to the slot requested).

Signed-off-by: Noah Silas <noah@medplum.com>

* Feedback: prefer `getReferenceString` over `Reference.reference` access

Signed-off-by: Noah Silas <noah@medplum.com>

* Shar... (continued)

18016 of 20453 branches covered (88.08%)

Branch coverage included in aggregate %.

59 of 59 new or added lines in 3 files covered. (100.0%)

32690 of 34530 relevant lines covered (94.67%)

14519.77 hits per line

Jobs
ID Job ID Ran Files Coverage
1 23914850865.1 02 Apr 2026 06:28PM UTC 755
92.22
GitHub Action Run
Source Files on build 23914850865
  • Tree
  • List 755
  • Changed 3
  • Source Changed 0
  • Coverage Changed 3
Coverage ∆ File Lines Relevant Covered Missed Hits/Line Branch Hits Branch Misses
  • Back to Repo
  • 407b368f on github
  • Prev Build on gh-readonly-queue/main/pr-8844-59930832da5266609552dc3d3cb724b416930499 (#23912754581)
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