mirror of
https://github.com/Instagram/IGListKit
synced 2026-05-05 22:48:21 +00:00
Refactored check in IGListCollectionViewLayout for more reliable coverage
Summary: The `[context invalidateDataSourceCounts] && _minimumInvalidatedSection == NSNotFound` condition was never getting triggered in any of our tests. I tried to simulate this condition in my testing, but it doesn't seem possible to have `_minimumInvalidatedSection` set to `NSNotFound` when execution reaches this point. This is because the only public pathway I could see to `[context invalidateLayoutWithContext:]` was via the regular `invalidateLayout` method which always sets `_minimumInvalidatedSection` to 0 before continuing. To solve this, since the resulting logic ends up being the same in the check above, I simply collapsed this check into the one above it. Reviewed By: fabiomassimo Differential Revision: D50000788 fbshipit-source-id: da0bf0cb16c98de95f802dfd35bbdf0e935e615f
This commit is contained in:
parent
1c73ecb4e7
commit
a511891376
1 changed files with 1 additions and 3 deletions
|
|
@ -389,12 +389,10 @@ static void adjustZIndexForAttributes(UICollectionViewLayoutAttributes *attribut
|
|||
|
||||
if (hasInvalidatedItemIndexPaths
|
||||
|| [context invalidateEverything]
|
||||
|| ([context invalidateDataSourceCounts] && _minimumInvalidatedSection == NSNotFound) // if count changed and we don't have information on the minimum invalidated section
|
||||
|| context.ig_invalidateAllAttributes) {
|
||||
// invalidates all
|
||||
_minimumInvalidatedSection = 0;
|
||||
} else if ([context invalidateDataSourceCounts] && _minimumInvalidatedSection == NSNotFound) {
|
||||
// invalidate all if count changed and we don't have information on the minimum invalidated section
|
||||
_minimumInvalidatedSection = 0;
|
||||
}
|
||||
|
||||
if (context.ig_invalidateSupplementaryAttributes) {
|
||||
|
|
|
|||
Loading…
Reference in a new issue