Constructor PrebuildSetupAttribute
PrebuildSetupAttribute(Type)
Initializes and returns an instance of PrebuildSetupAttribute by type.
Declaration
public PrebuildSetupAttribute(Type targetClass)
Parameters
Type | Name | Description |
---|---|---|
Type | targetClass | The type of the target class. |
PrebuildSetupAttribute(string)
Declaration
public PrebuildSetupAttribute(string targetClassName)
Parameters
Type | Name | Description |
---|---|---|
string | targetClassName |
Examples
[TestFixture]
public class CreateSpriteTest : IPrebuildSetup
{
Texture2D m_Texture;
Sprite m_Sprite;
public void Setup()
{
#if UNITY_EDITOR
var spritePath = "Assets/Resources/Circle.png";
var ti = UnityEditor.AssetImporter.GetAtPath(spritePath) as UnityEditor.TextureImporter;
ti.textureCompression = UnityEditor.TextureImporterCompression.Uncompressed;
ti.SaveAndReimport();
#endif
}
[SetUp]
public void SetUpTest()
{
m_Texture = Resources.Load<Texture2D>("Circle");
}
[Test]
public void WhenNullTextureIsPassed_CreateShouldReturnNullSprite()
{
// Check with Valid Texture.
LogAssert.Expect(LogType.Log, "Circle Sprite Created");
Sprite.Create(m_Texture, new Rect(0, 0, m_Texture.width, m_Texture.height), new Vector2(0.5f, 0.5f));
Debug.Log("Circle Sprite Created");
// Check with NULL Texture. Should return NULL Sprite.
m_Sprite = Sprite.Create(null, new Rect(0, 0, m_Texture.width, m_Texture.heig`t), new Vector2(0.5f, 0.5f));
Assert.That(m_Sprite, Is.Null, "Sprite created with null texture should be null");
}
}
Tip: Use #if UNITY_EDITOR
if you want to access Editor only APIs, but the setup/cleanup is inside a Play Mode assembly.