From 40cf840df26e66fca8ab81d602fd67ff1d2a6afa Mon Sep 17 00:00:00 2001 From: dr scofield (aka dirk husemann) Date: Thu, 1 Oct 2009 09:47:45 +0200 Subject: adding testcase for LandDataSerializer; fixing LandDataSerializer ;-) --- .../Serialization/External/LandDataSerializer.cs | 64 ++++++++-------- .../Serialization/Tests/LandDataSerializerTests.cs | 86 ++++++++++++++++++++++ 2 files changed, 118 insertions(+), 32 deletions(-) create mode 100644 OpenSim/Framework/Serialization/Tests/LandDataSerializerTests.cs (limited to 'OpenSim/Framework/Serialization') diff --git a/OpenSim/Framework/Serialization/External/LandDataSerializer.cs b/OpenSim/Framework/Serialization/External/LandDataSerializer.cs index 6bfae41..0d91859 100644 --- a/OpenSim/Framework/Serialization/External/LandDataSerializer.cs +++ b/OpenSim/Framework/Serialization/External/LandDataSerializer.cs @@ -132,47 +132,47 @@ namespace OpenSim.Framework.Serialization.External xtw.WriteStartDocument(); xtw.WriteStartElement("LandData"); - xtw.WriteElementString("Area", landData.Area.ToString()); - xtw.WriteElementString("AuctionID", landData.AuctionID.ToString()); - xtw.WriteElementString("AuthBuyerID", landData.AuthBuyerID.ToString()); - xtw.WriteElementString("Category", landData.Category.ToString()); - xtw.WriteElementString("ClaimDate", landData.ClaimDate.ToString()); - xtw.WriteElementString("ClaimPrice", landData.ClaimPrice.ToString()); - xtw.WriteElementString("GlobalID", landData.GlobalID.ToString()); - xtw.WriteElementString("GroupID", landData.GroupID.ToString()); - xtw.WriteElementString("IsGroupOwned", landData.IsGroupOwned.ToString()); - xtw.WriteElementString("Bitmap", landData.Bitmap.ToString()); - xtw.WriteElementString("Description", landData.Description); - xtw.WriteElementString("Flags", landData.Flags.ToString()); - xtw.WriteElementString("LandingType", landData.LandingType.ToString()); - xtw.WriteElementString("Name", landData.Name); - xtw.WriteElementString("Status", landData.Status.ToString()); - xtw.WriteElementString("LocalID", landData.LocalID.ToString()); - xtw.WriteElementString("MediaAutoScale", landData.MediaAutoScale.ToString()); - xtw.WriteElementString("MediaID", landData.MediaID.ToString()); - xtw.WriteElementString("MediaURL", landData.MediaURL.ToString()); - xtw.WriteElementString("MusicURL", landData.MusicURL.ToString()); - xtw.WriteElementString("OwnerID", landData.OwnerID.ToString()); + xtw.WriteElementString("Area", Convert.ToString(landData.Area)); + xtw.WriteElementString("AuctionID", Convert.ToString(landData.AuctionID)); + xtw.WriteElementString("AuthBuyerID", landData.AuthBuyerID.ToString()); + xtw.WriteElementString("Category", Convert.ToString(landData.Category)); + xtw.WriteElementString("ClaimDate", Convert.ToString(landData.ClaimDate)); + xtw.WriteElementString("ClaimPrice", Convert.ToString(landData.ClaimPrice)); + xtw.WriteElementString("GlobalID", landData.GlobalID.ToString()); + xtw.WriteElementString("GroupID", landData.GroupID.ToString()); + xtw.WriteElementString("IsGroupOwned", Convert.ToString(landData.IsGroupOwned)); + xtw.WriteElementString("Bitmap", Convert.ToBase64String(landData.Bitmap)); + xtw.WriteElementString("Description", landData.Description); + xtw.WriteElementString("Flags", Convert.ToString(landData.Flags)); + xtw.WriteElementString("LandingType", Convert.ToString(landData.LandingType)); + xtw.WriteElementString("Name", landData.Name); + xtw.WriteElementString("Status", Convert.ToString(landData.Status)); + xtw.WriteElementString("LocalID", landData.LocalID.ToString()); + xtw.WriteElementString("MediaAutoScale", Convert.ToString(landData.MediaAutoScale)); + xtw.WriteElementString("MediaID", landData.MediaID.ToString()); + xtw.WriteElementString("MediaURL", landData.MediaURL); + xtw.WriteElementString("MusicURL", landData.MusicURL); + xtw.WriteElementString("OwnerID", landData.OwnerID.ToString()); xtw.WriteStartElement("ParcelAccessList"); foreach(ParcelManager.ParcelAccessEntry pal in landData.ParcelAccessList) { xtw.WriteStartElement("ParcelAccessEntry"); - xtw.WriteElementString("AgentID", pal.AgentID.ToString()); - xtw.WriteElementString("Time", pal.Time.ToString()); - xtw.WriteElementString("AccessList", pal.Flags.ToString()); + xtw.WriteElementString("AgentID", pal.AgentID.ToString()); + xtw.WriteElementString("Time", Convert.ToString(pal.Time)); + xtw.WriteElementString("AccessList", Convert.ToString(pal.Flags)); xtw.WriteEndElement(); } xtw.WriteEndElement(); - xtw.WriteElementString("PassHours", landData.PassHours.ToString()); - xtw.WriteElementString("PassPrice", landData.PassPrice.ToString()); - xtw.WriteElementString("SalePrice", landData.SalePrice.ToString()); - xtw.WriteElementString("SnapshotID", landData.SnapshotID.ToString()); - xtw.WriteElementString("UserLocation", landData.UserLocation.ToString()); - xtw.WriteElementString("UserLookAt", landData.UserLookAt.ToString()); - xtw.WriteElementString("Dwell", landData.Dwell.ToString()); - xtw.WriteElementString("OtherCleanTime", landData.OtherCleanTime.ToString()); + xtw.WriteElementString("PassHours", Convert.ToString(landData.PassHours)); + xtw.WriteElementString("PassPrice", Convert.ToString(landData.PassPrice)); + xtw.WriteElementString("SalePrice", Convert.ToString(landData.SalePrice)); + xtw.WriteElementString("SnapshotID", landData.SnapshotID.ToString()); + xtw.WriteElementString("UserLocation", landData.UserLocation.ToString()); + xtw.WriteElementString("UserLookAt", landData.UserLookAt.ToString()); + xtw.WriteElementString("Dwell", Convert.ToString(landData.Dwell)); + xtw.WriteElementString("OtherCleanTime", Convert.ToString(landData.OtherCleanTime)); xtw.WriteEndElement(); diff --git a/OpenSim/Framework/Serialization/Tests/LandDataSerializerTests.cs b/OpenSim/Framework/Serialization/Tests/LandDataSerializerTests.cs new file mode 100644 index 0000000..f1881a1 --- /dev/null +++ b/OpenSim/Framework/Serialization/Tests/LandDataSerializerTests.cs @@ -0,0 +1,86 @@ +/* + * Copyright (c) Contributors, http://opensimulator.org/ + * See CONTRIBUTORS.TXT for a full list of copyright holders. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of the OpenSimulator Project nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE DEVELOPERS ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL THE CONTRIBUTORS BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +using System.Collections.Generic; +using OpenSim.Framework; +using OpenSim.Framework.Serialization.External; +using OpenMetaverse; +using OpenMetaverse.StructuredData; +using NUnit.Framework; + +namespace OpenSim.Framework.Serialization.Tests +{ + [TestFixture] + public class LandDataSerializerTest + { + private LandData land; + + [SetUp] + public void setup() + { + // setup LandData object + this.land = new LandData(); + this.land.AABBMax = new Vector3(0, 0, 0); + this.land.AABBMin = new Vector3(128, 128, 128); + this.land.Area = 128; + this.land.AuctionID = 0; + this.land.AuthBuyerID = new UUID(); + this.land.Category = ParcelCategory.Residential; + this.land.ClaimDate = 0; + this.land.ClaimPrice = 0; + this.land.GlobalID = new UUID("54ff9641-dd40-4a2c-b1f1-47dd3af24e50"); + this.land.GroupID = new UUID("d740204e-bbbf-44aa-949d-02c7d739f6a5"); + this.land.GroupPrims = 0; + this.land.Description = "land data to test LandDataSerializer"; + this.land.Flags = (uint)(ParcelFlags.AllowDamage | ParcelFlags.AllowVoiceChat); + this.land.LandingType = (byte)LandingType.Direct; + this.land.Name = "LandDataSerializerTest Land"; + this.land.Status = ParcelStatus.Leased; + this.land.LocalID = 0; + this.land.MediaAutoScale = (byte)0x01; + this.land.MediaID = new UUID("d4452578-2f25-4b97-a81b-819af559cfd7"); + this.land.MediaURL = "http://videos.opensimulator.org/bumblebee.mp4"; + this.land.OwnerID = new UUID("1b8eedf9-6d15-448b-8015-24286f1756bf"); + } + + /// + /// + [Test] + public void TestLandDataSerializerSerializeTest() + { + string serialized = LandDataSerializer.Serialize(this.land); + Assert.That(serialized.Length > 0); + } + + /// + /// + [Test] + public void TestLandDataSerializerDeserializeTest() + { + } + } +} -- cgit v1.1