mirror of
https://github.com/Swiftgram/Telegram-iOS.git
synced 2025-12-19 12:49:02 +00:00
* Clean up snapshot test cases: - Drop 32bit snapshots - Update iOS 9 snapshots and move some others to the correct directory - Remove `setUp` overrides in subclasses of `ASLayoutSpecSnapshotTestCase` that set `recordMode` flag. Doing so in multiple places make it difficult to enable/dis able the flag for all layout spec test cases. It can always be overridden locally if need to. - Fix BUCK build * Fix testThatOnDidLoadThrowsIfCalledOnLoadedOffMain of ASDisplayNodeTests
42 lines
1.5 KiB
Objective-C
42 lines
1.5 KiB
Objective-C
//
|
|
// ASSnapshotTestCase.m
|
|
// AsyncDisplayKit
|
|
//
|
|
// Copyright (c) 2014-present, Facebook, Inc. All rights reserved.
|
|
// This source code is licensed under the BSD-style license found in the
|
|
// LICENSE file in the root directory of this source tree. An additional grant
|
|
// of patent rights can be found in the PATENTS file in the same directory.
|
|
//
|
|
|
|
#import "ASSnapshotTestCase.h"
|
|
#import <AsyncDisplayKit/ASAvailability.h>
|
|
#import <AsyncDisplayKit/ASDisplayNode+Beta.h>
|
|
#import <AsyncDisplayKit/ASDisplayNodeExtras.h>
|
|
#import <AsyncDisplayKit/ASDisplayNode+Subclasses.h>
|
|
|
|
NSOrderedSet *ASSnapshotTestCaseDefaultSuffixes(void)
|
|
{
|
|
NSMutableOrderedSet *suffixesSet = [[NSMutableOrderedSet alloc] init];
|
|
// In some rare cases, slightly different rendering may occur on 32 vs 64 bit architectures,
|
|
// or on iOS 10 (text rasterization). If the test folders find any image that exactly matches,
|
|
// they pass; if an image is not present at all, or it fails, it moves on to check the others.
|
|
// This means the order doesn't matter besides reducing logging / performance.
|
|
if (AS_AT_LEAST_IOS10) {
|
|
[suffixesSet addObject:@"_iOS_10"];
|
|
}
|
|
[suffixesSet addObject:@"_64"];
|
|
return [suffixesSet copy];
|
|
}
|
|
|
|
@implementation ASSnapshotTestCase
|
|
|
|
+ (void)hackilySynchronouslyRecursivelyRenderNode:(ASDisplayNode *)node
|
|
{
|
|
ASDisplayNodePerformBlockOnEveryNode(nil, node, YES, ^(ASDisplayNode * _Nonnull node) {
|
|
[node.layer setNeedsDisplay];
|
|
});
|
|
[node recursivelyEnsureDisplaySynchronously:YES];
|
|
}
|
|
|
|
@end
|