public virtual void testExecuteCallBack() { q.setQueueStatus(EnumQueueStatus.Waiting); q.setExecuteCallback(new TestCanExecute("d1", null)); Assert.AreEqual(q.getQueueEntry("qe2"), q.getNextExecutableQueueEntry()); q.getQueueEntry("qe4").setQueueEntryStatus(EnumQueueEntryStatus.Waiting); q.setExecuteCallback(new TestCanExecute("d2", null)); Assert.AreEqual(q.getQueueEntry("qe2"), q.getNextExecutableQueueEntry()); q.getQueueEntry("qe2").setDeviceID("d1"); Assert.AreEqual(q.getQueueEntry("qe1"), q.getNextExecutableQueueEntry()); q.setExecuteCallback(new TestCanExecute("d1", "foo:foo2")); Assert.AreEqual(q.getQueueEntry("qe2"), q.getNextExecutableQueueEntry()); q.getQueueEntry("qe2").setAttribute("foo:foo2", "bar", "www.foo"); Assert.AreEqual(q.getQueueEntry("qe1"), q.getNextExecutableQueueEntry()); }