A game about forced loneliness, made by TACStudios
1using System;
2using NUnit.Framework;
3using UnityEngine;
4
5[Category("Text")]
6public class FontCreatedByScript
7{
8 static Font CreateDefaultFontWithOneCharacter(int character)
9 {
10 var font = new Font();
11 CharacterInfo[] characterInfo = new CharacterInfo[1];
12 characterInfo[0].index = character;
13 font.characterInfo = characterInfo;
14 return font;
15 }
16
17 [Test]
18 public static void GetCharacterInfo_FindsCharacterInfoThatIsInSet()
19 {
20 char character = 'A';
21 int charIndex = Convert.ToInt32(character);
22
23 var font = CreateDefaultFontWithOneCharacter(charIndex);
24 CharacterInfo result = new CharacterInfo();
25 Assert.IsTrue(font.GetCharacterInfo(character, out result), "Could not find character info for '" + character + "' even though the Font contains it.");
26 Assert.AreEqual(charIndex, result.index, "Incorrect character info was returned for " + character);
27 }
28
29 [Test]
30 public static void GetCharacterInfo_DoesNotFindCharacterInfoThatIsNotInSet()
31 {
32 char character = 'A';
33 char characterNotInSet = 'X';
34 int charIndex = Convert.ToInt32(character);
35
36 var font = CreateDefaultFontWithOneCharacter(charIndex);
37 CharacterInfo result;
38 Assert.IsFalse(font.GetCharacterInfo(characterNotInSet, out result), "Found character info for '" + characterNotInSet + "' even though the Font does not contain it.");
39 }
40
41 [Test]
42 public static void HasCharacterReturns8BitChars()
43 {
44 char character = 'A';
45 int charIndex = Convert.ToInt32(character);
46
47 var font = CreateDefaultFontWithOneCharacter(charIndex);
48 Assert.IsTrue(font.HasCharacter(character), "HasCharacter returned false even though it should have " + character);
49 }
50
51 [Test]
52 public static void HasCharacterReturns16BitChars()
53 {
54 char character = '\u03A9';
55 int charIndex = Convert.ToInt32(character);
56
57 var font = CreateDefaultFontWithOneCharacter(charIndex);
58 Assert.IsTrue(font.HasCharacter(character), "HasCharacter returned false even though it should have " + character);
59 }
60}