Repository navigation
[Testing] MapScreen cluster expansion to individual task list is untested — the most user-critical map interaction has no coverage #147
Description
Activity
- addedGrantFox OSSIssue tracked in GrantFox OSSIssue tracked in GrantFox OSSMaybe RewardedIssue may be eligible for a GrantFox rewardIssue may be eligible for a GrantFox rewardThird CampaignCampaign: Third CampaignCampaign: Third Campaign
on Aug 28, 2026 Hi! I’ve worked with React Native Testing Library, mocked native maps, and navigation assertions. I’ll extend the existing MapScreen tests for single markers, multi-task clusters, and count:null promotion without changing runtime behavior. I can open a focused draft within 24 hours after assignment. Please assign this issue to me.
devOgazi commented
on Aug 28, 2026 ContributorMore actionsI’d like to work on this issue because it addresses an important area of the project and presents a great opportunity to make a meaningful contribution. I’m particularly interested in delivering a solution that is reliable, maintainable, and aligned with the project’s existing architecture and development standards.
I have experience working across software development, including backend and frontend development, APIs, databases, testing, DevOps, and blockchain-based applications. I’m comfortable understanding existing codebases, identifying the root cause of issues, implementing clean and scalable solutions, and writing thorough tests to prevent regressions.
My approach would be to first understand the existing implementation and project conventions, then develop the solution in a focused and incremental way. I’ll ensure the changes are well-tested, documented where necessary, and do not introduce unnecessary complexity or break existing functionality. I’m also committed to clear communication, responding to review feedback, and delivering a polished contribution that provides real value to the project.
grantfox-oss commented
on Aug 28, 2026 grantfox-ossboton Aug 28, 2026 – with GrantFox OSSMore actionsgrantfox-oss commented
on Aug 29, 2026 grantfox-ossboton Aug 29, 2026 – with GrantFox OSSMore actions🎉 This issue has been marked as completed on GrantFox as part of the Third Campaign campaign!
@devOgazi's PR #156 was approved and merged by @cybermax4200.
🏆 @devOgazi: You earned 35 FoxPoints for this contribution! Your current tier: Explorer (729 total points). Track your full progress on GrantFox.
👏 Great work, @devOgazi! Keep contributing to ecotask-network.
Why this matters now
The map view is a core task discovery feature (
MapScreen.tsx, 306 lines).MapScreen.test.tsxexists and tests marker rendering, but the most important user-facing behavior — tapping a cluster marker to see its individual tasks — has no test.MapScreenPerformance.test.tsxbenchmarks clustering but never verifies that the cluster expansion actually navigates to the correct task.Problem / What
When a user taps a cluster
Marker, the current behavior (onCalloutPress) only navigates if the marker is a single task (!isCluster). Cluster markers show "Zoom in to see individual tasks" in the description. But there is no tested path for: (a) what happens when a user taps a cluster on a device that doesn't support zooming, (b) whether a single-item cluster (which hascount: nulland renders as a task marker) correctly navigates toTaskDetail, and (c) whether the cluster callout press guardif (!isCluster && firstTask)actually prevents navigation for multi-task clusters.MapScreen.test.tsxalready mocksreact-native-mapsand renders the map — the missing tests can be added to this file.Key Challenges
Marker.onCalloutPressis a prop on a mocked native component — simulate it viafireEventor by directly calling the prop in the test.useTaskStackNavigationmust be mocked to assertnavigate('TaskDetail', { taskId })is called with the correct ID.count: null) and a multi-task cluster (count: N).Acceptance Criteria
MapScreen.test.tsxcovering: tapping a single-task marker navigates toTaskDetailwith the correcttaskId; tapping a multi-task cluster does NOT navigate; tapping a cluster withcount: null(promoted to single marker) navigates correctly.MapScreen.tsxbehavior.Relevant files / functions
src/__tests__/MapScreen.test.tsx— extendsrc/screens/MapScreen.tsx—handleCalloutPress, cluster guardsrc/__tests__/MapScreenPerformance.test.tsx— optionally add correctness checkOut of scope