-
Notifications
You must be signed in to change notification settings - Fork 3
Open
Labels
Description
on mismatch in AList AnyOrder, cycle through all combinations which could match (so every matcher is matched against each object once), store result, then figure out which permutations ensure all matchers are matched once.
Currently as soon as a matcher matches, it's taken out of the list of possible matchers, So one matcher could be too eager
e.g. make it like so
foreach(item in actual){
result.Current = item
foreach(matcher in matchers)
if( matcher.Match(item))
results.Matched(matcher)
}
result.CalculateAllMatchersMatchedOnce()