Jo Shields a575963da9 Imported Upstream version 3.6.0
Former-commit-id: da6be194a6b1221998fc28233f2503bd61dd9d14
2014-08-13 10:39:27 +01:00

205 lines
7.9 KiB
C#

//
// 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.
//
#if NET_2_0
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;
namespace MonoTests.System.Web.UI.WebControls
{
class PokerHotSpot : HotSpot
{
// View state Stuff
public PokerHotSpot()
{
TrackViewState();
}
public object SaveState()
{
return SaveViewState();
}
public void LoadState(object o)
{
LoadViewState(o);
}
public StateBag StateBag
{
get { return base.ViewState; }
}
// Protected Properties
public bool IsTrackingState
{
get { return base.IsTrackingViewState; }
}
// Implementation for abstract members
protected internal override string MarkupName
{
get { return (""); }
}
public override string GetCoordinates()
{
return ("");
}
}
[TestFixture]
public class HotSpotTest
{
[Test]
public void HotSpot_DefaultProperties()
{
PokerHotSpot hotSpot = new PokerHotSpot();
Assert.AreEqual(0, hotSpot.StateBag.Count, "ViewState.Count");
// Public Properties
Assert.AreEqual(string.Empty, hotSpot.AccessKey, "AccessKey");
Assert.AreEqual(string.Empty, hotSpot.AlternateText, "AlternateText");
Assert.AreEqual(HotSpotMode.NotSet, hotSpot.HotSpotMode, "HotSpotMode");
Assert.AreEqual(string.Empty, hotSpot.NavigateUrl, "NavigateUrl");
Assert.AreEqual(string.Empty, hotSpot.PostBackValue, "PostBackValue");
Assert.AreEqual(0, hotSpot.TabIndex, "TabIndex");
Assert.AreEqual(string.Empty, hotSpot.Target, "Target");
// Protected Properties
Assert.AreEqual(true, hotSpot.IsTrackingState, "IsTrackingState");
}
[Test]
public void HotSpot_AssignToDefaultProperties()
{
PokerHotSpot hotSpot = new PokerHotSpot();
Assert.AreEqual(0, hotSpot.StateBag.Count, "ViewState.Count");
hotSpot.AccessKey = string.Empty;
Assert.AreEqual(string.Empty, hotSpot.AccessKey, "AccessKey");
Assert.AreEqual(1, hotSpot.StateBag.Count, "ViewState.Count-1");
hotSpot.AlternateText = string.Empty;
Assert.AreEqual(string.Empty, hotSpot.AlternateText, "AlternateText");
Assert.AreEqual(2, hotSpot.StateBag.Count, "ViewState.Count-2");
hotSpot.HotSpotMode = HotSpotMode.NotSet;
Assert.AreEqual(HotSpotMode.NotSet, hotSpot.HotSpotMode, "HotSpotMode");
Assert.AreEqual(3, hotSpot.StateBag.Count, "ViewState.Count-3");
hotSpot.NavigateUrl = string.Empty;
Assert.AreEqual(string.Empty, hotSpot.NavigateUrl, "NavigateUrl");
Assert.AreEqual(4, hotSpot.StateBag.Count, "ViewState.Count-4");
hotSpot.PostBackValue = string.Empty;
Assert.AreEqual(string.Empty, hotSpot.PostBackValue, "PostBackValue");
Assert.AreEqual(5, hotSpot.StateBag.Count, "ViewState.Count-5");
hotSpot.TabIndex = 0;
Assert.AreEqual(0, hotSpot.TabIndex, "TabIndex");
Assert.AreEqual(6, hotSpot.StateBag.Count, "ViewState.Count-6");
hotSpot.Target = string.Empty;
Assert.AreEqual(string.Empty, hotSpot.Target, "Target");
Assert.AreEqual(7, hotSpot.StateBag.Count, "ViewState.Count-7");
}
[Test]
public void HotSpot_ViewState()
{
PokerHotSpot hotSpot = new PokerHotSpot();
hotSpot.AccessKey = string.Empty;
Assert.AreEqual(string.Empty, hotSpot.AccessKey, "AccessKey-beforecopy");
hotSpot.AlternateText = string.Empty;
Assert.AreEqual(string.Empty, hotSpot.AlternateText, "AlternateText-beforecopy");
hotSpot.HotSpotMode = HotSpotMode.NotSet;
Assert.AreEqual(HotSpotMode.NotSet, hotSpot.HotSpotMode, "HotSpotMode-beforecopy");
hotSpot.NavigateUrl = string.Empty;
Assert.AreEqual(string.Empty, hotSpot.NavigateUrl, "NavigateUrl-beforecopy");
hotSpot.PostBackValue = string.Empty;
Assert.AreEqual(string.Empty, hotSpot.PostBackValue, "PostBackValue-beforecopy");
hotSpot.TabIndex = 0;
Assert.AreEqual(0, hotSpot.TabIndex, "TabIndex-beforecopy");
hotSpot.Target = string.Empty;
Assert.AreEqual(string.Empty, hotSpot.Target, "Target-beforecopy");
Assert.AreEqual(true, hotSpot.IsTrackingState, "IsTrackingState-beforecopy");
object state = hotSpot.SaveState();
PokerHotSpot copy = new PokerHotSpot();
copy.LoadState(state);
Assert.AreEqual(string.Empty, hotSpot.AccessKey, "AccessKey-aftercopy");
Assert.AreEqual(string.Empty, hotSpot.AlternateText, "AlternateText-aftercopy");
Assert.AreEqual(HotSpotMode.NotSet, hotSpot.HotSpotMode, "HotSpotMode-aftercopy");
Assert.AreEqual(string.Empty, hotSpot.NavigateUrl, "NavigateUrl-aftercopy");
Assert.AreEqual(string.Empty, hotSpot.PostBackValue, "PostBackValue-aftercopy");
Assert.AreEqual(0, hotSpot.TabIndex, "TabIndex-aftercopy");
Assert.AreEqual(string.Empty, hotSpot.Target, "Target-aftercopy");
Assert.AreEqual(true, hotSpot.IsTrackingState, "IsTrackingState-aftercopy");
}
[Test]
[ExpectedException(typeof(ArgumentOutOfRangeException))]
public void HotSpot_ExpAccessKey()
{
// The specified access key is neither a a null reference,
// an empty string (""), nor a single character string.
PokerHotSpot hotSpot = new PokerHotSpot();
hotSpot.AccessKey = "abc";
}
[Test]
[ExpectedException(typeof(ArgumentOutOfRangeException))]
public void HotSpot_ExpHotSpotMode()
{
// The specified type is not one of the HotSpotMode enumeration values.
PokerHotSpot hotSpot = new PokerHotSpot();
hotSpot.HotSpotMode = (HotSpotMode)10;
}
//[Test]
//[ExpectedException(typeof(ArgumentOutOfRangeException))]
//public void HotSpot_ExpTabIndex()
//{
// // The specified tab index is not between -32768 and 32767
// PokerHotSpot hotSpot = new PokerHotSpot();
// short bignum = Convert.ToInt16(40000);
// hotSpot.TabIndex = bignum;
//}
}
}
#endif