Returns list of (cnt_act, cnt_exp, elem) triples where the counts differ
(actual, expected)
| 154 | return result |
| 155 | |
| 156 | def _count_diff_hashable(actual, expected): |
| 157 | 'Returns list of (cnt_act, cnt_exp, elem) triples where the counts differ' |
| 158 | # elements must be hashable |
| 159 | s, t = Counter(actual), Counter(expected) |
| 160 | result = [] |
| 161 | for elem, cnt_s in s.items(): |
| 162 | cnt_t = t.get(elem, 0) |
| 163 | if cnt_s != cnt_t: |
| 164 | diff = _Mismatch(cnt_s, cnt_t, elem) |
| 165 | result.append(diff) |
| 166 | for elem, cnt_t in t.items(): |
| 167 | if elem not in s: |
| 168 | diff = _Mismatch(0, cnt_t, elem) |
| 169 | result.append(diff) |
| 170 | return result |
no test coverage detected