| 
						
						
						
					 | 
				
			
			 | 
			 | 
			
				@ -1,9 +1,10 @@
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				//
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				//  Copyright (c) 2017 Open Whisper Systems. All rights reserved.
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				//  Copyright (c) 2018 Open Whisper Systems. All rights reserved.
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				//
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				import XCTest
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				@testable import Signal
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				@testable import SignalMessaging
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				class DisplayableTextTest: XCTestCase {
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				
 | 
			
		
		
	
	
		
			
				
					| 
						
						
						
							
								
							
						
					 | 
				
			
			 | 
			 | 
			
				@ -20,20 +21,20 @@ class DisplayableTextTest: XCTestCase {
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				    func testDisplayableText() {
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				        // show plain text
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				        let boringText = "boring text"
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				        XCTAssertEqual(boringText, DisplayableText.displayableText(boringText))
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				        XCTAssertEqual(boringText, DisplayableText.displayableText(boringText).displayText)
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				        // show high byte emojis
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				        let emojiText = "🇹🇹🌼🇹🇹🌼🇹🇹"
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				        XCTAssertEqual(emojiText, DisplayableText.displayableText(emojiText))
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				        XCTAssertEqual(emojiText, DisplayableText.displayableText(emojiText).displayText)
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				        // show normal diacritic usage
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				        let diacriticalText = "Příliš žluťoučký kůň úpěl ďábelské ódy."
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				        XCTAssertEqual(diacriticalText, DisplayableText.displayableText(diacriticalText))
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				        XCTAssertEqual(diacriticalText, DisplayableText.displayableText(diacriticalText).displayText)
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				        // filter excessive diacritics
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				        XCTAssertEqual("HAVING TROUBLE READING TEXT?", DisplayableText.displayableText("H҉̸̧͘͠A͢͞V̛̛I̴̸N͏̕͏G҉̵͜͏͢ ̧̧́T̶̛͘͡R̸̵̨̢̀O̷̡U͡҉B̶̛͢͞L̸̸͘͢͟É̸ ̸̛͘͏R͟È͠͞A̸͝Ḑ̕͘͜I̵͘҉͜͞N̷̡̢͠G̴͘͠ ͟͞T͏̢́͡È̀X̕҉̢̀T̢͠?̕͏̢͘͢") )
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				        XCTAssertEqual("HAVING TROUBLE READING TEXT?", DisplayableText.displayableText("H҉̸̧͘͠A͢͞V̛̛I̴̸N͏̕͏G҉̵͜͏͢ ̧̧́T̶̛͘͡R̸̵̨̢̀O̷̡U͡҉B̶̛͢͞L̸̸͘͢͟É̸ ̸̛͘͏R͟È͠͞A̸͝Ḑ̕͘͜I̵͘҉͜͞N̷̡̢͠G̴͘͠ ͟͞T͏̢́͡È̀X̕҉̢̀T̢͠?̕͏̢͘͢").displayText )
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				        XCTAssertEqual("LGO!", DisplayableText.displayableText("L̷̳͔̲͝Ģ̵̮̯̤̩̙͍̬̟͉̹̘̹͍͈̮̦̰̣͟͝O̶̴̮̻̮̗͘͡!̴̷̟͓͓"))
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				        XCTAssertEqual("LGO!", DisplayableText.displayableText("L̷̳͔̲͝Ģ̵̮̯̤̩̙͍̬̟͉̹̘̹͍͈̮̦̰̣͟͝O̶̴̮̻̮̗͘͡!̴̷̟͓͓").displayText)
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				    }
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				    func testGlyphCount() {
 | 
			
		
		
	
	
		
			
				
					| 
						
							
								
							
						
						
						
					 | 
				
			
			 | 
			 | 
			
				
 
 |