dfe-analytical-services / dfe-analytical-services/dfe-published-data-qa
Add a filter interactions test
- Dominant language
- R
- Stars
- 4
- Forks
- 1
- PR merge metrics
- No merged PRs in 30d
Description
We've attempted this before but stopped due to how much time it can take to run.
Because the table tool already filters after time and geography steps, we want to get every option under every filter and then make a big cube of all the possible combinations.
We then want to check if all of those combinations exist in the data file.
Filter groups will need to be handled as a special case, potentially by smushing into a single string that covers both cols?
Then likely need to present back to the users in a way that is helpful, ideally some kind of visual table where they can see (or download) to understand what is missing.
Once the multi-layer hierarchies work is in EES, we could enforce this more strongly and then anyone who needs to will use the breakdown / breakdown topic approach.
This will need some heavy performance testing, and use of the most efficient functions possible given the potential size of what needs to happen here as files get bigger.
Worth looking at something like [Git LFS](https://git-lfs.com/) to hold some larger test files we can use in performance testing.
Contributor guide
Research direction
Start by locating the table tool's existing time and geography filtering, then trace how filter groups and the data file are represented. Define the interaction combinations and performance test approach before implementing; done means missing combinations are detected and presented in a useful table or download.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- r
- Domain
- data, testing
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 20/100