[permission_handler] Add regression integration tests based on upstream v12.0.1#1059
[permission_handler] Add regression integration tests based on upstream v12.0.1#1059seungsoo47 wants to merge 2 commits into
Conversation
…am v12.0.1 Upstream permission_handler v12.0.1 has no integration tests. Added Tizen regression tests for the public permission API covering all privileges declared in the example app's tizen-manifest.xml: - Permission.status: camera, microphone, location, mediaLibrary, storage, contacts - Permission.serviceStatus: location service status is valid - Permission.request: requesting camera permission returns granted - Permission.request: requesting multiple permissions returns granted - openAppSettings (skipped, not supported on emulators) Note: only testable on Galaxy Watch (wearable profile) where runtime permission dialogs are applicable. On TV devices, all declared permissions are granted by default. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
There was a problem hiding this comment.
Code Review
This pull request adds eight integration test cases to the permission_handler package, organizing tests into logical groups for checking permission status, service status, and requesting permissions. The review feedback suggests asserting directly on PermissionStatus enum values rather than using the .isGranted boolean getter or null assertion operators, which provides more descriptive test failure messages and avoids potential null pointer exceptions.
Important
The consumer version of Gemini Code Assist on GitHub is being sunset. Starting June 18, 2026, new organization installations will be blocked, and all code review activity will officially cease on July 17, 2026.
For more details on the timeline and next steps, please review the Help Documentation.
I am not sure if adding this test is a meaningful task. It seems like a package that should effectively be discontinued. What do you think? |
Per review: compare against PermissionStatus.granted directly instead
of asserting .isGranted == true, so a failing test reports the actual
status (e.g. denied, permanentlyDenied) instead of a generic
'Expected: true, Actual: false'. This also drops the null assertion
operator on the request() map lookups, turning a missing key into a
normal test failure ('Actual: null') rather than a runtime exception.
As you know, this plugin does not run on the TV profile. However, as we discussed offline, since we can still check Tizen's Permission APIs on a Tizen platform (like a RPi), I will keep the plugin and the tests. |
Upstream permission_handler v12.0.1 has no integration tests. Added Tizen regression tests for the public permission API covering all privileges declared in the example app's tizen-manifest.xml:
Note: only testable on Galaxy Watch (wearable profile) where runtime permission dialogs are applicable. On TV devices, all declared permissions are granted by default.