summaryrefslogtreecommitdiff
path: root/indra/llcommon
diff options
context:
space:
mode:
authorNat Goodspeed <nat@lindenlab.com>2023-07-07 16:57:20 -0400
committerNat Goodspeed <nat@lindenlab.com>2023-07-07 16:57:20 -0400
commitc4b5d089dad5680a0dd12b2d386b692318eb5c58 (patch)
tree433aaed515411c9ce071de87c969e64aebf292f5 /indra/llcommon
parente933ace53b24b732d4111169e3c5964a8591a29e (diff)
SL-18837: Partially revert e933ace, keeping useful tweaks.
Introducing indirection via test_python_script.py did NOT address the "Access is denied" errors on GitHub Windows runners.
Diffstat (limited to 'indra/llcommon')
-rw-r--r--indra/llcommon/tests/llleap_test.cpp25
-rw-r--r--indra/llcommon/tests/llprocess_test.cpp13
-rw-r--r--indra/llcommon/tests/test_python_script.py20
3 files changed, 9 insertions, 49 deletions
diff --git a/indra/llcommon/tests/llleap_test.cpp b/indra/llcommon/tests/llleap_test.cpp
index 0fc741d9e1..e9edd165df 100644
--- a/indra/llcommon/tests/llleap_test.cpp
+++ b/indra/llcommon/tests/llleap_test.cpp
@@ -17,7 +17,6 @@
// std headers
#include <functional>
// external library headers
-#include <boost/assign/list_of.hpp>
// other Linden headers
#include "../test/lltut.h"
#include "../test/namedtempfile.h"
@@ -29,10 +28,6 @@
#include "stringize.h"
#include "StringVec.h"
-using boost::assign::list_of;
-
-StringVec sv(const StringVec& listof) { return listof; }
-
#if defined(LL_WINDOWS)
#define sleep(secs) _sleep((secs) * 1000)
@@ -217,9 +212,9 @@ namespace tut
"time.sleep(1)\n");
LLLeapVector instances;
instances.push_back(LLLeap::create(get_test_name(),
- sv(list_of(PYTHON)(script.getName())))->getWeak());
+ StringVec{PYTHON, script.getName()})->getWeak());
instances.push_back(LLLeap::create(get_test_name(),
- sv(list_of(PYTHON)(script.getName())))->getWeak());
+ StringVec{PYTHON, script.getName()})->getWeak());
// In this case we're simply establishing that two LLLeap instances
// can coexist without throwing exceptions or bombing in any other
// way. Wait for them to terminate.
@@ -249,7 +244,7 @@ namespace tut
"print('Hello from Python!')\n");
CaptureLog log(LLError::LEVEL_WARN);
waitfor(LLLeap::create(get_test_name(),
- sv(list_of(PYTHON)(script.getName()))));
+ StringVec{PYTHON, script.getName()}));
ensure_contains("error log line",
log.messageWith("invalid protocol"), "Hello from Python!");
}
@@ -264,7 +259,7 @@ namespace tut
"sys.stdout.write('Hello from Python!')\n");
CaptureLog log(LLError::LEVEL_WARN);
waitfor(LLLeap::create(get_test_name(),
- sv(list_of(PYTHON)(script.getName()))));
+ StringVec{PYTHON, script.getName()}));
ensure_contains("error log line",
log.messageWith("Discarding"), "Hello from Python!");
}
@@ -278,7 +273,7 @@ namespace tut
"sys.stdout.write('5a2:something')\n");
CaptureLog log(LLError::LEVEL_WARN);
waitfor(LLLeap::create(get_test_name(),
- sv(list_of(PYTHON)(script.getName()))));
+ StringVec{PYTHON, script.getName()}));
ensure_contains("error log line",
log.messageWith("invalid protocol"), "5a2:");
}
@@ -390,7 +385,8 @@ namespace tut
"result = '' if resp == dict(pump=replypump(), data='ack')\\\n"
" else 'bad: ' + str(resp)\n"
"send(pump='" << result.getName() << "', data=result)\n";});
- waitfor(LLLeap::create(get_test_name(), sv(list_of(PYTHON)(script.getName()))));
+ waitfor(LLLeap::create(get_test_name(),
+ StringVec{PYTHON, script.getName()}));
result.ensure();
}
@@ -449,7 +445,7 @@ namespace tut
" result = 'expected reqid=%s in %s' % (i, resp)\n"
" break\n"
"send(pump='" << result.getName() << "', data=result)\n";});
- waitfor(LLLeap::create(get_test_name(), sv(list_of(PYTHON)(script.getName()))),
+ waitfor(LLLeap::create(get_test_name(), StringVec{PYTHON, script.getName()}),
300); // needs more realtime than most tests
result.ensure();
}
@@ -516,10 +512,7 @@ namespace tut
" (start, large[start:end], echoed[start:end]))\n"
"sys.exit(1)\n";});
waitfor(LLLeap::create(test_name,
- sv(list_of
- (PYTHON)
- (script.getName())
- (stringize(size)))),
+ StringVec{PYTHON, script.getName(), stringize(size)}),
180); // try a longer timeout
result.ensure();
}
diff --git a/indra/llcommon/tests/llprocess_test.cpp b/indra/llcommon/tests/llprocess_test.cpp
index af99e97d66..c7d1a2c86a 100644
--- a/indra/llcommon/tests/llprocess_test.cpp
+++ b/indra/llcommon/tests/llprocess_test.cpp
@@ -124,17 +124,6 @@ void waitfor(LLProcess::handle h, const std::string& desc, int timeout=60)
i < timeout);
}
-namespace {
-
-// find test helper, a sibling of this file
-// nat 2023-07-07: we're currently using Boost 1.81, but
-// path::replace_filename() (which is exactly what we need here) doesn't
-// arrive until Boost 1.82.
-auto test_python_script{
- (boost::filesystem::path(__FILE__).remove_filename() / "test_python_script.py").string() };
-
-}
-
/**
* Construct an LLProcess to run a Python script.
*/
@@ -156,7 +145,6 @@ struct PythonProcessLauncher
mParams.desc = desc + " script";
mParams.executable = PYTHON;
- mParams.args.add(test_python_script);
mParams.args.add(mScript.getName());
}
@@ -398,7 +386,6 @@ namespace tut
// Have to have a named copy of this std::string so its c_str() value
// will persist.
std::string scriptname(script.getName());
- argv.push_back(test_python_script.c_str());
argv.push_back(scriptname.c_str());
argv.push_back(NULL);
diff --git a/indra/llcommon/tests/test_python_script.py b/indra/llcommon/tests/test_python_script.py
deleted file mode 100644
index c0c8661aa9..0000000000
--- a/indra/llcommon/tests/test_python_script.py
+++ /dev/null
@@ -1,20 +0,0 @@
-#!/usr/bin/env python3
-"""\
-@file test_python_script.py
-@author Nat Goodspeed
-@date 2023-07-07
-@brief Work around a problem running Python within integration tests on GitHub
- Windows runners.
-
-$LicenseInfo:firstyear=2023&license=viewerlgpl$
-Copyright (c) 2023, Linden Research, Inc.
-$/LicenseInfo$
-"""
-
-import os
-import sys
-
-# use pop() so that if the referenced script in turn looks at sys.argv, it
-# will see its arguments rather than its own filename
-_script = sys.argv.pop(1)
-exec(open(_script).read())