Skip to content

SDKS-4679 & SDKS-4681: Add Polling and QR Code collectors for DaVinci flows#152

Open
witrisna wants to merge 1 commit intodevelopfrom
SDKS-4679
Open

SDKS-4679 & SDKS-4681: Add Polling and QR Code collectors for DaVinci flows#152
witrisna wants to merge 1 commit intodevelopfrom
SDKS-4679

Conversation

@witrisna
Copy link
Contributor

JIRA Ticket

SDKS-4679
SDKS-4681

Description

  • Implement PollingCollector to handle asynchronous operations like push notifications and OOB authentication, supporting both simple delays and active challenge status polling.
  • Implement QRCodeCollector to handle Base64-encoded QR code images for device pairing and MFA setup.
  • Add Compose UI components (Polling.kt, QRCode.kt) and integrate them into ContinueNode.
  • Register new collectors in CollectorRegistry.
  • Add comprehensive unit tests for PollingCollector and QRCodeCollector logic.

@witrisna witrisna self-assigned this Jan 19, 2026
@codecov
Copy link

codecov bot commented Jan 19, 2026

Codecov Report

❌ Patch coverage is 62.88660% with 36 lines in your changes missing coverage. Please review.
✅ Project coverage is 45.10%. Comparing base (70a5349) to head (20d807d).

Files with missing lines Patch % Lines
...pingidentity/davinci/collector/PollingCollector.kt 62.02% 3 Missing and 27 partials ⚠️
...otlin/com/pingidentity/davinci/module/Transform.kt 0.00% 2 Missing and 2 partials ⚠️
.../pingidentity/davinci/collector/QRCodeCollector.kt 83.33% 0 Missing and 2 partials ⚠️
Additional details and impacted files
@@              Coverage Diff              @@
##             develop     #152      +/-   ##
=============================================
+ Coverage      44.89%   45.10%   +0.20%     
- Complexity      1232     1253      +21     
=============================================
  Files            302      304       +2     
  Lines           9388     9485      +97     
  Branches        1352     1397      +45     
=============================================
+ Hits            4215     4278      +63     
- Misses          4630     4635       +5     
- Partials         543      572      +29     
Flag Coverage Δ
integration-tests 25.72% <2.06%> (-0.26%) ⬇️
unit-tests 26.59% <62.88%> (+0.39%) ⬆️

Flags with carried forward coverage won't be shown. Click here to find out more.

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

Copy link
Contributor

@vibhorgoswami vibhorgoswami left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

One comment related to bitmap extraction.

Copy link
Contributor

@spetrov spetrov left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM! 👍🏻

… flows

- Implement `PollingCollector` to handle asynchronous operations like push notifications and OOB authentication, supporting both simple delays and active challenge status polling.
- Implement `QRCodeCollector` to handle Base64-encoded QR code images for device pairing and MFA setup.
- Add Compose UI components (`Polling.kt`, `QRCode.kt`) and integrate them into `ContinueNode`.
- Register new collectors in `CollectorRegistry`.
- Add comprehensive unit tests for `PollingCollector` and `QRCodeCollector` logic.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Development

Successfully merging this pull request may close these issues.

3 participants