public void CTor_AssignsStringValue_WithQuotes()
        {
            var expected  = "TestValue";
            var underTest = new DumpNode(expected, "TestName");

            Assert.AreEqual("\"" + expected + "\"", underTest.Value);
        }
        public void CTor_AssignsNonStringValue_Directly()
        {
            var expected  = 1234;
            var underTest = new DumpNode(expected, "TestName");

            Assert.AreEqual(expected, underTest.Value);
        }
        public void CTor_AssignsName_Correctly()
        {
            var expected  = "TestName";
            var underTest = new DumpNode("TestValue", expected);

            Assert.AreEqual(expected, underTest.Name);
        }
        public void ToString_NullValue_WithName_Writes_Correct()
        {
            var underTest = new DumpNode(null, "TestName");
            var expected  = "TestName = <null>";
            var actual    = underTest.ToString();

            Assert.AreEqual(expected, actual);
        }
        public void ToString_NullValue_NoName_Writes_Correct()
        {
            var underTest = new DumpNode(null, string.Empty);
            var expected  = "<null>";
            var actual    = underTest.ToString();

            Assert.AreEqual(expected, actual);
        }
        public void ToString_BasicValue_NoName_Writes_Correct()
        {
            var underTest = new DumpNode("TestValue", string.Empty);
            var expected  = "\"TestValue\"";
            var actual    = underTest.ToString();

            Assert.AreEqual(expected, actual);
        }
        public void ToString_BasicValue_MaxDepthOne_And_FullNamesFalse_Writes_Correct()
        {
            var underTest = new DumpNode("TestValue", "TestName");
            var expected  = "TestName = \"TestValue\"";

            var actual = underTest.ToString(1, false);

            Assert.AreEqual(expected, actual);
        }
        public void ToString_BasicValue_MaxDepth0_And_CurrentDepthNegative_Writes_Correct()
        {
            var underTest = new DumpNode("TestValue", "TestName");
            var expected  = "TestName = \"TestValue\"";

            var actual = underTest.ToString(0, -1);

            Assert.AreEqual(expected, actual);
        }
        public void ToString_BasicValue_NoParameters_Writes_Correct()
        {
            var underTest = new DumpNode("TestValue", "TestName");
            var expected  = "TestName = \"TestValue\"";

            var actual = underTest.ToString();

            Assert.AreEqual(expected, actual);
        }
        public void CTor_WithNullName_Creates_WithEmptyName()
        {
            var underTest = new DumpNode("TestValue", null);

            Assert.AreEqual(string.Empty, underTest.Name);
        }