Add TestOsNpcLoadAppearance()
parent
1743fe5d62
commit
5d4ac5a90f
|
@ -330,6 +330,9 @@ namespace OpenSim.Framework
|
|||
SetVisualParams(visualParams);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Set avatar height by a calculation based on their visual parameters.
|
||||
/// </summary>
|
||||
public virtual void SetHeight()
|
||||
{
|
||||
// Start with shortest possible female avatar height
|
||||
|
|
|
@ -36,11 +36,12 @@ using OpenMetaverse;
|
|||
using OpenMetaverse.Assets;
|
||||
using OpenMetaverse.StructuredData;
|
||||
using OpenSim.Framework;
|
||||
using OpenSim.Region.CoreModules.Avatar.Attachments;
|
||||
using OpenSim.Region.CoreModules.Avatar.AvatarFactory;
|
||||
using OpenSim.Region.OptionalModules.World.NPC;
|
||||
using OpenSim.Region.Framework.Scenes;
|
||||
using OpenSim.Region.ScriptEngine.Shared;
|
||||
using OpenSim.Region.ScriptEngine.Shared.Api;
|
||||
using OpenSim.Region.OptionalModules.World.NPC;
|
||||
using OpenSim.Services.Interfaces;
|
||||
using OpenSim.Tests.Common;
|
||||
using OpenSim.Tests.Common.Mock;
|
||||
|
@ -68,7 +69,8 @@ namespace OpenSim.Region.ScriptEngine.Shared.Tests
|
|||
config.Set("Enabled", "true");
|
||||
|
||||
m_scene = new SceneHelpers().SetupScene();
|
||||
SceneHelpers.SetupSceneModules(m_scene, initConfigSource, new AvatarFactoryModule(), new NPCModule());
|
||||
SceneHelpers.SetupSceneModules(
|
||||
m_scene, initConfigSource, new AvatarFactoryModule(), new AttachmentsModule(), new NPCModule());
|
||||
|
||||
m_engine = new XEngine.XEngine();
|
||||
m_engine.Initialise(initConfigSource);
|
||||
|
|
|
@ -36,6 +36,7 @@ using OpenMetaverse;
|
|||
using OpenMetaverse.Assets;
|
||||
using OpenMetaverse.StructuredData;
|
||||
using OpenSim.Framework;
|
||||
using OpenSim.Region.CoreModules.Avatar.Attachments;
|
||||
using OpenSim.Region.CoreModules.Avatar.AvatarFactory;
|
||||
using OpenSim.Region.OptionalModules.World.NPC;
|
||||
using OpenSim.Region.Framework.Scenes;
|
||||
|
@ -71,7 +72,8 @@ namespace OpenSim.Region.ScriptEngine.Shared.Tests
|
|||
config.Set("Enabled", "true");
|
||||
|
||||
m_scene = new SceneHelpers().SetupScene();
|
||||
SceneHelpers.SetupSceneModules(m_scene, initConfigSource, new AvatarFactoryModule(), new NPCModule());
|
||||
SceneHelpers.SetupSceneModules(
|
||||
m_scene, initConfigSource, new AvatarFactoryModule(), new AttachmentsModule(), new NPCModule());
|
||||
|
||||
m_engine = new XEngine.XEngine();
|
||||
m_engine.Initialise(initConfigSource);
|
||||
|
@ -147,6 +149,44 @@ namespace OpenSim.Region.ScriptEngine.Shared.Tests
|
|||
Assert.That(npc.Appearance.AvatarHeight, Is.EqualTo(newHeight));
|
||||
}
|
||||
|
||||
[Test]
|
||||
public void TestOsNpcLoadAppearance()
|
||||
{
|
||||
TestHelpers.InMethod();
|
||||
|
||||
// Store an avatar with a different height from default in a notecard.
|
||||
UUID userId = TestHelpers.ParseTail(0x1);
|
||||
float firstHeight = 1.9f;
|
||||
float secondHeight = 2.1f;
|
||||
string firstAppearanceNcName = "appearanceNc1";
|
||||
string secondAppearanceNcName = "appearanceNc2";
|
||||
|
||||
ScenePresence sp = SceneHelpers.AddScenePresence(m_scene, userId);
|
||||
sp.Appearance.AvatarHeight = firstHeight;
|
||||
SceneObjectGroup so = SceneHelpers.CreateSceneObject(1, userId, 0x10);
|
||||
SceneObjectPart part = so.RootPart;
|
||||
m_scene.AddSceneObject(so);
|
||||
|
||||
OSSL_Api osslApi = new OSSL_Api();
|
||||
osslApi.Initialize(m_engine, part, null);
|
||||
|
||||
osslApi.osOwnerSaveAppearance(firstAppearanceNcName);
|
||||
|
||||
string npcRaw
|
||||
= osslApi.osNpcCreate("Jane", "Doe", new LSL_Types.Vector3(128, 128, 128), firstAppearanceNcName);
|
||||
|
||||
// Create a second appearance notecard with a different height
|
||||
sp.Appearance.AvatarHeight = secondHeight;
|
||||
osslApi.osOwnerSaveAppearance(secondAppearanceNcName);
|
||||
|
||||
osslApi.osNpcLoadAppearance(npcRaw, secondAppearanceNcName);
|
||||
|
||||
UUID npcId = new UUID(npcRaw);
|
||||
ScenePresence npc = m_scene.GetScenePresence(npcId);
|
||||
Assert.That(npc, Is.Not.Null);
|
||||
Assert.That(npc.Appearance.AvatarHeight, Is.EqualTo(secondHeight));
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Test removal of an owned NPC.
|
||||
/// </summary>
|
||||
|
@ -154,7 +194,6 @@ namespace OpenSim.Region.ScriptEngine.Shared.Tests
|
|||
public void TestOsNpcRemoveOwned()
|
||||
{
|
||||
TestHelpers.InMethod();
|
||||
// log4net.Config.XmlConfigurator.Configure();
|
||||
|
||||
// Store an avatar with a different height from default in a notecard.
|
||||
UUID userId = TestHelpers.ParseTail(0x1);
|
||||
|
|
Loading…
Reference in New Issue