0

我正在编写依赖于测试开始时加载的数据的 Silverlight 测试,如下所示:

string[] testVectors = new string[20];
EnqueueCallback( Load some data );
EnqueueConditional( Wait for loading of data to finish );
EnqueueCallback( Populate testVectors using the loaded data );

接下来,我想使用测试向量将更多回调和条件排入队列。但是我怎么循环??????

我不能这样做:

for(int iTest=0; iTest<20; iTest++ )
{
   EnqueueConditional( Run test for testVector[iTest] );
   EnqueueConditional( Wait for test to finish );
}

...因为当 for 循环运行时测试向量字符串不存在。

有任何想法吗?

谢谢阅读!

4

1 回答 1

1

您要做的就是将另一个动作排队等待稍后执行,只是碰巧这个动作包括排队一些更依赖的动作。

您可以做的是将一个回调排入队列,该回调将嵌套您的测试的其余部分,直接或通过链接到另一个方法。

EnqueueCallback(...);
...
EnqueueCallback(() => 
{
    for(int iTest=0; iTest<20; iTest++ )
    {
        EnqueueConditional( ... );
    }
});

只是可能不想在嵌套回调下方放置任何未嵌套的内容 - 它可以在嵌套的事物之前执行/排队。

于 2012-05-17T15:48:01.180 回答