// // Tests for System.Web.UI.WebControls.ImageMap.cs // // Author: // Hagit Yidov (hagity@mainsoft.com // // (C) 2005 Mainsoft Corporation (http://www.mainsoft.com) // // Permission is hereby granted, free of charge, to any person obtaining // a copy of this software and associated documentation files (the // "Software"), to deal in the Software without restriction, including // without limitation the rights to use, copy, modify, merge, publish, // distribute, sublicense, and/or sell copies of the Software, and to // permit persons to whom the Software is furnished to do so, subject to // the following conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF // MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE // LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION // OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION // WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. // using NUnit.Framework; using System; using System.IO; using System.Globalization; using System.Web; using System.Web.UI; using System.Web.UI.WebControls; using MonoTests.stand_alone.WebHarness; using MonoTests.SystemWeb.Framework; using System.Threading; namespace MonoTests.System.Web.UI.WebControls { [TestFixture] public class TreeNodeStyleTest { [Test] public void TreeNodeStyle_DefaultProperties () { TreeNodeStyle tns = new TreeNodeStyle (); Assert.AreEqual (0.0, tns.ChildNodesPadding.Value, "ChildNodesPadding"); Assert.AreEqual (0.0, tns.HorizontalPadding.Value, "HorizontalPadding"); Assert.AreEqual ("", tns.ImageUrl, "ImageUrl"); Assert.AreEqual (0.0, tns.NodeSpacing.Value, "NodeSpacing"); Assert.AreEqual (0.0, tns.VerticalPadding.Value, "VerticalPadding"); } [Test] public void TreeNodeStyle_AssignToDefaultProperties () { TreeNodeStyle tns = new TreeNodeStyle (); tns.ChildNodesPadding = 0; Assert.AreEqual (0.0, tns.ChildNodesPadding.Value, "ChildNodesPadding"); tns.HorizontalPadding = 0; Assert.AreEqual (0.0, tns.HorizontalPadding.Value, "HorizontalPadding"); tns.ImageUrl = ""; Assert.AreEqual ("", tns.ImageUrl, "ImageUrl"); tns.NodeSpacing = 0; Assert.AreEqual (0.0, tns.NodeSpacing.Value, "NodeSpacing"); tns.VerticalPadding = 0; Assert.AreEqual (0.0, tns.VerticalPadding.Value, "VerticalPadding"); } [Test] public void TreeNodeStyle_Method_CopyFrom () { TreeNodeStyle tns = new TreeNodeStyle (); TreeNodeStyle copy = new TreeNodeStyle (); tns.BorderStyle = BorderStyle.Double; tns.BorderWidth = 3; tns.ChildNodesPadding = 4; tns.Height = 5; tns.HorizontalPadding = 6; tns.ImageUrl = "ImageUrl"; tns.NodeSpacing = 7; tns.VerticalPadding = 8; tns.Width = 9; copy.CopyFrom (tns); Assert.AreEqual (tns.BorderStyle, copy.BorderStyle, "BorderStyle"); Assert.AreEqual (tns.BorderWidth, copy.BorderWidth, "Borderidth"); Assert.AreEqual (tns.ChildNodesPadding, copy.ChildNodesPadding, "ChildNodesPadding"); Assert.AreEqual (tns.Height, copy.Height, "Height"); Assert.AreEqual (tns.HorizontalPadding, copy.HorizontalPadding, "HorizontalPadding"); Assert.AreEqual (tns.ImageUrl, copy.ImageUrl, "ImageUrl"); Assert.AreEqual (tns.NodeSpacing, copy.NodeSpacing, "NodeSpacing"); Assert.AreEqual (tns.VerticalPadding, copy.VerticalPadding, "VerticalPadding"); Assert.AreEqual (tns.Width, copy.Width, "Width"); } [Test] public void TreeNodeStyle_Method_MergeWith () { TreeNodeStyle tns = new TreeNodeStyle (); TreeNodeStyle copy = new TreeNodeStyle (); tns.BorderStyle = BorderStyle.Double; tns.BorderWidth = 3; tns.ChildNodesPadding = 4; tns.Height = 5; tns.HorizontalPadding = 6; tns.ImageUrl = "ImageUrl"; tns.NodeSpacing = 7; tns.VerticalPadding = 8; tns.Width = 9; copy.ImageUrl = "NewImageUrl"; copy.NodeSpacing = 10; copy.VerticalPadding = 11; copy.Width = 12; copy.MergeWith (tns); Assert.AreEqual (tns.BorderStyle, copy.BorderStyle, "BorderStyle"); Assert.AreEqual (tns.BorderWidth, copy.BorderWidth, "Borderidth"); Assert.AreEqual (tns.ChildNodesPadding, copy.ChildNodesPadding, "ChildNodesPadding"); Assert.AreEqual (tns.Height, copy.Height, "Height"); Assert.AreEqual (tns.HorizontalPadding, copy.HorizontalPadding, "HorizontalPadding"); Assert.AreEqual ("NewImageUrl", copy.ImageUrl, "ImageUrl1"); Assert.AreEqual (Unit.Pixel (10), copy.NodeSpacing, "NodeSpacing1"); Assert.AreEqual (Unit.Pixel (11), copy.VerticalPadding, "VerticalPadding1"); Assert.AreEqual (Unit.Pixel (12), copy.Width, "Width1"); Assert.AreEqual ("NewImageUrl", copy.ImageUrl, "ImageUrl2"); Assert.AreEqual (10.0, copy.NodeSpacing.Value, "NodeSpacing2"); Assert.AreEqual (11.0, copy.VerticalPadding.Value, "VerticalPadding2"); Assert.AreEqual (12.0, copy.Width.Value, "Width2"); } [Test] public void TreeNodeStyle_Method_Reset () { TreeNodeStyle tns = new TreeNodeStyle (); tns.BorderStyle = BorderStyle.Double; tns.BorderWidth = 3; tns.ChildNodesPadding = 4; tns.Height = 5; tns.HorizontalPadding = 6; tns.ImageUrl = "ImageUrl"; tns.NodeSpacing = 7; tns.VerticalPadding = 8; tns.Width = 9; Assert.AreEqual (BorderStyle.Double, tns.BorderStyle, "BorderStyle1"); Assert.AreEqual (3.0, tns.BorderWidth.Value, "BorderWidth1"); Assert.AreEqual (4.0, tns.ChildNodesPadding.Value, "ChildNodesPadding1"); Assert.AreEqual (5.0, tns.Height.Value, "Height1"); Assert.AreEqual (6.0, tns.HorizontalPadding.Value, "HorizontalPadding1"); Assert.AreEqual ("ImageUrl", tns.ImageUrl, "ImageUrl1"); Assert.AreEqual (7.0, tns.NodeSpacing.Value, "NodeSpacing1"); Assert.AreEqual (8.0, tns.VerticalPadding.Value, "VerticalPadding1"); Assert.AreEqual (9.0, tns.Width.Value, "Width1"); tns.Reset (); Assert.AreEqual (0.0, tns.BorderWidth.Value, "BorderWidth2"); Assert.AreEqual (0.0, tns.ChildNodesPadding.Value, "ChildNodesPadding2"); Assert.AreEqual (0.0, tns.Height.Value, "Height2"); Assert.AreEqual (0.0, tns.HorizontalPadding.Value, "HorizontalPadding2"); Assert.AreEqual ("", tns.ImageUrl, "ImageUrl2"); Assert.AreEqual (0.0, tns.NodeSpacing.Value, "NodeSpacing2"); Assert.AreEqual (0.0, tns.VerticalPadding.Value, "VerticalPadding2"); Assert.AreEqual (0.0, tns.Width.Value, "Width2"); } [Test] public void TreeNodeStyle_ViewState () { TreeNodeStyle orig = new TreeNodeStyle (); ((IStateManager) orig).TrackViewState (); TreeNodeStyle copy = new TreeNodeStyle (); Assert.AreEqual (true, orig.IsEmpty, "TreeNodeStyle_ViewState"); orig.ChildNodesPadding = 4; orig.HorizontalPadding = 6; orig.ImageUrl = "ImageUrl"; orig.NodeSpacing = 7; orig.VerticalPadding = 8; Assert.AreEqual (false, orig.IsEmpty, "TreeNodeStyle_ViewState"); object state = ((IStateManager) orig).SaveViewState (); ((IStateManager) copy).LoadViewState (state); Assert.AreEqual (false, copy.IsEmpty, "TreeNodeStyle_ViewState"); Assert.AreEqual (4.0, copy.ChildNodesPadding.Value, "TreeNodeStyle_ViewState"); Assert.AreEqual (6.0, copy.HorizontalPadding.Value, "TreeNodeStyle_ViewState"); Assert.AreEqual ("ImageUrl", copy.ImageUrl, "TreeNodeStyle_ViewState"); Assert.AreEqual (7.0, copy.NodeSpacing.Value, "TreeNodeStyle_ViewState"); Assert.AreEqual (8.0, copy.VerticalPadding.Value, "TreeNodeStyle_ViewState"); } } }