The structure could looks like below. Please mind that, due to my graphic skills, I didn't draw the Selector label. Instead, I present example of instances below the picture.
The Selector label would be consist of elements for example like that:
Selector label 1 --- Test 1 pass?: True, Test 2 pass?: False ---> Test 3 pass? doesn't matter in this case
Selector label 2 --- Test 1 pass?: False ---> Test 2 pass? Test 3 pass? don't matter in this case
Selector label 3 --- Test 2 pass?: False ---> Test 1 pass? Test 3 pass? don't matter in this case
Selector label 4 --- Test 1 pass?: True, Test 2 pass?: False, Test3 pass?: True
Rest of the variations handled by Default case.
Maximum number of cases 2^n, where n is number of selectors. We can think about limiting the the number of selectors.
Value added by this idea:
-- avoid nested cases - better visibility/readability - lower cost of delivering the code
-- works as a table of truth but not only for decision making but it executes the code in the cases
-- not every case would need to be explicitly defined; actually when we create this structure it can be born only with one case - Default, then by explicit definition of every case we can make our code case by case, letting the Default case implicitly handle all cases not covered by us.
-- can work with the string/rings/enums
Any idea that has received less than 3 kudos within 3 years after posting will be automatically declined.