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