public void TestllBreakAllLinks()
{
TestHelpers.InMethod();
UUID ownerId = TestHelpers.ParseTail(0x1);
SceneObjectGroup grp1 = SceneHelpers.CreateSceneObject(3, ownerId, "grp1-", 0x10);
grp1.AbsolutePosition = new Vector3(10, 10, 10);
m_scene.AddSceneObject(grp1);
// FIXME: This should really be a script item (with accompanying script)
TaskInventoryItem grp1Item
= TaskInventoryHelpers.AddNotecard(
m_scene, grp1.RootPart, "ncItem", TestHelpers.ParseTail(0x800), TestHelpers.ParseTail(0x900), "Hello World!");
grp1Item.PermsMask |= ScriptBaseClass.PERMISSION_CHANGE_LINKS;
LSL_Api apiGrp1 = new LSL_Api();
apiGrp1.Initialize(m_engine, grp1.RootPart, grp1Item, null);
apiGrp1.llBreakAllLinks();
{
SceneObjectGroup nowGrp = m_scene.GetSceneObjectGroup("grp1-Part1");
Assert.That(nowGrp, Is.Not.Null);
Assert.That(nowGrp.Parts.Length, Is.EqualTo(1));
}
{
SceneObjectGroup nowGrp = m_scene.GetSceneObjectGroup("grp1-Part2");
Assert.That(nowGrp, Is.Not.Null);
Assert.That(nowGrp.Parts.Length, Is.EqualTo(1));
}
{
SceneObjectGroup nowGrp = m_scene.GetSceneObjectGroup("grp1-Part3");
Assert.That(nowGrp, Is.Not.Null);
Assert.That(nowGrp.Parts.Length, Is.EqualTo(1));
}
}