A game about forced loneliness, made by TACStudios
1using System.Linq;
2using NUnit.Framework;
3using UnityEngine;
4using UnityEditor.Graphing;
5
6namespace UnityEditor.ShaderGraph.UnitTests
7{
8 [TestFixture]
9 class AbstractMaterialGraphTests
10 {
11 private class TestableMNode : AbstractMaterialNode
12 { }
13
14 [OneTimeSetUp]
15 public void RunBeforeAnyTests()
16 {
17 Debug.unityLogger.logHandler = new ConsoleLogHandler();
18 }
19
20 [Test]
21 public void TestCanCreateMaterialGraph()
22 {
23 GraphData graph = new GraphData();
24 Assert.AreEqual(0, graph.edges.Count());
25 Assert.AreEqual(0, graph.GetNodes<AbstractMaterialNode>().Count());
26 }
27
28 [Test]
29 public void TestCanAddMaterialNodeToMaterialGraph()
30 {
31 GraphData graph = new GraphData();
32
33 var node = new TestableMNode();
34 graph.AddNode(node);
35 Assert.AreEqual(0, graph.edges.Count());
36 Assert.AreEqual(1, graph.GetNodes<AbstractMaterialNode>().Count());
37 }
38
39 [Test]
40 public void TestCanGetMaterialNodeFromMaterialGraph()
41 {
42 GraphData graph = new GraphData();
43
44 var node = new TestableMNode();
45 graph.AddNode(node);
46 Assert.AreEqual(0, graph.edges.Count());
47 Assert.AreEqual(1, graph.GetNodes<AbstractMaterialNode>().Count());
48
49 Assert.AreEqual(node, graph.GetNodeFromId(node.objectId));
50 Assert.AreEqual(node, graph.GetNodeFromId<TestableMNode>(node.objectId));
51 }
52
53 /* [Test]
54 public void TestCreatePixelShaderGraphWorks()
55 {
56 var graph = new UnityEngine.MaterialGraph.MaterialGraph();
57 Assert.AreEqual(0, graph.GetNodes<AbstractMaterialNode>().Count());
58
59 var psn = new MetallicMasterNode();
60 graph.AddNode(psn);
61 Assert.AreEqual(0, graph.edges.Count());
62 Assert.AreEqual(1, graph.GetNodes<AbstractMaterialNode>().Count());
63 Assert.IsInstanceOf(typeof(MetallicMasterNode), graph.GetNodes<AbstractMaterialNode>().FirstOrDefault());
64 Assert.IsNotNull(graph.masterNode);
65 Assert.AreEqual(1, graph.GetNodes<AbstractMaterialNode>().Count());
66 }
67
68 [Test]
69 public void TestCanAddMultipleMasterNode()
70 {
71 var graph = new UnityEngine.MaterialGraph.MaterialGraph();
72 Assert.AreEqual(0, graph.GetNodes<AbstractMaterialNode>().Count());
73
74 var psn = new MetallicMasterNode();
75 graph.AddNode(psn);
76 Assert.AreEqual(0, graph.edges.Count());
77 Assert.AreEqual(1, graph.GetNodes<AbstractMaterialNode>().Count());
78
79 var psn2 = new SpecularMasterNode();
80 graph.AddNode(psn2);
81 Assert.AreEqual(0, graph.edges.Count());
82 Assert.AreEqual(2, graph.GetNodes<AbstractMaterialNode>().Count());
83 }*/
84 }
85}