summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNat Goodspeed <nat@lindenlab.com>2019-09-19 16:36:41 -0400
committerNat Goodspeed <nat@lindenlab.com>2020-03-25 18:44:05 -0400
commit6f879178d6c8ec7c6a9d4fdb3f42664dea595a0a (patch)
tree1c065860fd5e159592b6e95232e5ad0f21b92f5f
parentd7c2e4a77bed665d7ab626d9955c35db8c318e95 (diff)
DRTVWR-476: Re-enable an llcoproceduremanager_test case.
Use new Sync class to make the driving logic wait for the coprocedure to run.
-rw-r--r--indra/llmessage/tests/llcoproceduremanager_test.cpp12
1 files changed, 6 insertions, 6 deletions
diff --git a/indra/llmessage/tests/llcoproceduremanager_test.cpp b/indra/llmessage/tests/llcoproceduremanager_test.cpp
index f2de547452..734b986f80 100644
--- a/indra/llmessage/tests/llcoproceduremanager_test.cpp
+++ b/indra/llmessage/tests/llcoproceduremanager_test.cpp
@@ -40,6 +40,7 @@
#include <boost/fiber/unbuffered_channel.hpp>
#include "../test/lltut.h"
+#include "../test/sync.h"
#if LL_WINDOWS
@@ -83,19 +84,18 @@ namespace tut
template<> template<>
void coproceduremanager_object_t::test<1>()
{
- // TODO: fix me. timing issues.the coproc gets executed after a frame, access violation in release
-
- /*
+ Sync sync;
int foo = 0;
LLUUID queueId = LLCoprocedureManager::instance().enqueueCoprocedure("PoolName", "ProcName",
- [&foo] (LLCoreHttpUtil::HttpCoroutineAdapter::ptr_t & ptr, const LLUUID & id) {
+ [&foo, &sync] (LLCoreHttpUtil::HttpCoroutineAdapter::ptr_t & ptr, const LLUUID & id) {
+ sync.bump();
foo = 1;
});
- ensure_equals("coprocedure failed to update foo", foo, 1);
+ sync.yield();
+ ensure_equals("coprocedure failed to update foo", foo, 1);
LLCoprocedureManager::instance().close("PoolName");
- */
}
template<> template<>