{
boolean passed = false;
try
{
UserActivity ua = UserActivityFactory.userActivity();
GlobalId ac1 = null;
GlobalId ac2 = null;
ua.start();
ac1 = ua.activityId();
System.out.println("Started: "+ac1);
ua.start();
ac2 = ua.activityId();
System.out.println("\nStarted: "+ac2);
ActivityHierarchy ctx = ua.suspend();
System.out.println("\nSuspended: "+ctx);
if (ua.currentActivity() == null)
{
ua.resume(ctx);
if (ac2.equals(ua.activityId()))
{
ua.end();
if (ac1.equals(ua.activityId()))
{
ua.end();
passed = true;
}
else
System.out.println("\nCurrent: "+ua.activityId()+" "+ac1);
}
else
System.out.println("\nCurrent: "+ua.activityId()+" "+ac2);
}
else
System.out.println("\nCurrent: "+ua.currentActivity());
}
catch (NoActivityException ex)
{
passed = true;
}