Swiftgram/submodules/AsyncDisplayKit/Tests/ASTextKitFontSizeAdjusterTests.mm
Peter 9bc996374f Add 'submodules/AsyncDisplayKit/' from commit '02bedc12816e251ad71777f9d2578329b6d2bef6'
git-subtree-dir: submodules/AsyncDisplayKit
git-subtree-mainline: d06f423e0ed3df1fed9bd10d79ee312a9179b632
git-subtree-split: 02bedc12816e251ad71777f9d2578329b6d2bef6
2019-06-11 18:42:43 +01:00

52 lines
1.8 KiB
Plaintext

//
// ASTextKitFontSizeAdjusterTests.mm
// Texture
//
// Copyright (c) Pinterest, Inc. All rights reserved.
// Licensed under Apache 2.0: http://www.apache.org/licenses/LICENSE-2.0
//
#import <AsyncDisplayKit/ASTextKitFontSizeAdjuster.h>
#import <XCTest/XCTest.h>
#if AS_ENABLE_TEXTNODE
@interface ASFontSizeAdjusterTests : XCTestCase
@end
@implementation ASFontSizeAdjusterTests
- (void)testFontSizeAdjusterAttributes
{
NSMutableParagraphStyle *paragraphStyle = [NSMutableParagraphStyle new];
paragraphStyle.lineHeightMultiple = 2.0;
paragraphStyle.lineSpacing = 2.0;
paragraphStyle.paragraphSpacing = 4.0;
paragraphStyle.firstLineHeadIndent = 6.0;
paragraphStyle.headIndent = 8.0;
paragraphStyle.tailIndent = 10.0;
paragraphStyle.minimumLineHeight = 12.0;
paragraphStyle.maximumLineHeight = 14.0;
NSMutableAttributedString *string = [[NSMutableAttributedString alloc] initWithString:@"Lorem ipsum dolor sit amet"
attributes:@{ NSParagraphStyleAttributeName: paragraphStyle }];
[ASTextKitFontSizeAdjuster adjustFontSizeForAttributeString:string withScaleFactor:0.5];
NSParagraphStyle *adjustedParagraphStyle = [string attribute:NSParagraphStyleAttributeName atIndex:0 effectiveRange:nil];
XCTAssertEqual(adjustedParagraphStyle.lineHeightMultiple, 2.0);
XCTAssertEqual(adjustedParagraphStyle.lineSpacing, 1.0);
XCTAssertEqual(adjustedParagraphStyle.paragraphSpacing, 2.0);
XCTAssertEqual(adjustedParagraphStyle.firstLineHeadIndent, 3.0);
XCTAssertEqual(adjustedParagraphStyle.headIndent, 4.0);
XCTAssertEqual(adjustedParagraphStyle.tailIndent, 5.0);
XCTAssertEqual(adjustedParagraphStyle.minimumLineHeight, 6.0);
XCTAssertEqual(adjustedParagraphStyle.maximumLineHeight, 7.0);
}
@end
#endif