public void AgentGroupDataUpdateMessage() { AgentGroupDataUpdateMessage s = new AgentGroupDataUpdateMessage(); s.AgentID = UUID.Random(); AgentGroupDataUpdateMessage.GroupData[] blocks = new AgentGroupDataUpdateMessage.GroupData[2]; AgentGroupDataUpdateMessage.GroupData g1 = new AgentGroupDataUpdateMessage.GroupData(); g1.AcceptNotices = false; g1.Contribution = 1024; g1.GroupID = UUID.Random(); g1.GroupInsigniaID = UUID.Random(); g1.GroupName = "Group Name Test 1"; g1.GroupPowers = GroupPowers.Accountable | GroupPowers.AllowLandmark | GroupPowers.AllowSetHome; blocks[0] = g1; AgentGroupDataUpdateMessage.GroupData g2 = new AgentGroupDataUpdateMessage.GroupData(); g2.AcceptNotices = false; g2.Contribution = 16; g2.GroupID = UUID.Random(); g2.GroupInsigniaID = UUID.Random(); g2.GroupName = "Group Name Test 2"; g2.GroupPowers = GroupPowers.ChangeActions | GroupPowers.DeedObject; blocks[1] = g2; s.GroupDataBlock = blocks; AgentGroupDataUpdateMessage.NewGroupData[] nblocks = new AgentGroupDataUpdateMessage.NewGroupData[2]; AgentGroupDataUpdateMessage.NewGroupData ng1 = new AgentGroupDataUpdateMessage.NewGroupData(); ng1.ListInProfile = false; nblocks[0] = ng1; AgentGroupDataUpdateMessage.NewGroupData ng2 = new AgentGroupDataUpdateMessage.NewGroupData(); ng2.ListInProfile = true; nblocks[1] = ng2; s.NewGroupDataBlock = nblocks; OSDMap map = s.Serialize(); AgentGroupDataUpdateMessage t = new AgentGroupDataUpdateMessage(); t.Deserialize(map); Assert.AreEqual(s.AgentID, t.AgentID); for (int i = 0; i < t.GroupDataBlock.Length; i++) { Assert.AreEqual(s.GroupDataBlock[i].AcceptNotices, t.GroupDataBlock[i].AcceptNotices); Assert.AreEqual(s.GroupDataBlock[i].Contribution, t.GroupDataBlock[i].Contribution); Assert.AreEqual(s.GroupDataBlock[i].GroupID, t.GroupDataBlock[i].GroupID); Assert.AreEqual(s.GroupDataBlock[i].GroupInsigniaID, t.GroupDataBlock[i].GroupInsigniaID); Assert.AreEqual(s.GroupDataBlock[i].GroupName, t.GroupDataBlock[i].GroupName); Assert.AreEqual(s.GroupDataBlock[i].GroupPowers, t.GroupDataBlock[i].GroupPowers); } for (int i = 0; i < t.NewGroupDataBlock.Length; i++) { Assert.AreEqual(s.NewGroupDataBlock[i].ListInProfile, t.NewGroupDataBlock[i].ListInProfile); } }