Interest List test

Interest List Test Script

The interest list on the simulator is responsible for transmitting all objects and changes to objects from the simulator to the viewer. This test script has two major objectives:

Summaries of the what the test scripts are looking for are immediately below, detailed test scripts for each section are below the summaries.

Correctness Summary

Verify that the interest list correctly transmits all the objects and changes.

There are three different classes of objects that the interest list manages:

Non-interactive (user not manipulating objects) tests should be done for passive objects, active objects and agents:

In addition, object modification, creation and deletion are handled differently by the code, correctness for these operations need to be tested independently from the basic interest list algorithm.

Types of object modifications:

These need to be tested to be working if:

They should also be tested on the following different object types:

Test the interest list in situations with packet loss. There are different types of data transmission where packet loss could cause an issue:

Quality and Performance Summary

Verify that the interest behaves in a reasonable manner under various heavy load conditions - in particular lots of objects, lots of changes, and lots of agents.

Performance - The simulator is not spending an excessive amount of time running the interest list. Two primary factors should affect this:

The current design of the interest should scale at approximately agents * changes - so lots of agents on a rapidly changing simulator will be particularly bad.

Quality - The simulator is doing a good job of deciding what order new objects and changes should be transmitted to the viewer. Things that could adversely affect quality:

Passive object transmission quality

Changing (active/avatar) object transmission quality

Changing/passive object balance

Correctness Full Test

Requirements

Setting up

Non-interactive passive object test

This test only requires the use of a single viewer.

Unfinished requirements

Validate that the interest list is correctly transmitting passive objects to the viewer

Non-interactive active object test

This test only requires the use of a single viewer.

Unfinished requirements

Validate that the interest list is correctly transmitting active objects to the viewer

Non-interactive agent test

This test will require two viewers:

Object modification test

This test will require two viewers:

Quality and Performance Full Test

Requirements

Performance Test

Unfinished requirements


Comparative Baseline Test

Overview

This test has been designed to verify that any non-agni or preview version of the interest list meets at the very least the same functionality as seen on AGNI. If the non-agni or preview version does not match this comparision of minimum functionality, then the test fails.

Requirements

Setting up


Old (pre-1.7) script

people fly away behind you, do they ghost? people fly away from you, how far until they disappear? your draw distance? people fly out of your view, put on attachment, and fly back. do you see the changes?

Put on many attachment. Do they look correct to you and others after: teleport? relog? crossing a region boundary? replacing an attachment by wearing another on the same attach point? sitting on a vehicle? crossing a region boundary on a vehicle?

At what distance from your camera does a default box disappear? a scripted box? a default box with someone sitting on it?

UserA sit on the ground. UserB teleport into the area. Can you see UserA? UserB fly into the area. Can you see UserA?

UserA sit on a box. UserB teleport into the area. Can you see UserA? UserB fly into the area. Can you see UserA?

Look at the SW (0,0,0) corner of the sim. Do any objects there, but are not really there?

What distance do gestures still appear at? Chat with someone far away, can you still see them animate? At what distance?