forked from qt-creator/qt-creator
WebAssembly: Fix WebAssemblyPlugin::testEmSdkEnvParsing for non-Windows
The ':' in "c:\" got confused with the paths list separator ':' on Linux/Mac. Let's add a non-Windows specific emsdk_env output to be parsed by the autotest. Change-Id: I900e13065237bc0d68eca5582b286177e90cc0af Reviewed-by: Christian Stenger <christian.stenger@qt.io>
This commit is contained in:
@@ -151,7 +151,8 @@ void WebAssemblyEmSdk::clearCaches()
|
|||||||
void WebAssemblyPlugin::testEmSdkEnvParsing()
|
void WebAssemblyPlugin::testEmSdkEnvParsing()
|
||||||
{
|
{
|
||||||
// Output of "emsdk_env"
|
// Output of "emsdk_env"
|
||||||
const QByteArray emSdkEnvOutput = R"(
|
const QByteArray emSdkEnvOutput = HostOsInfo::isWindowsHost() ?
|
||||||
|
R"(
|
||||||
Adding directories to PATH:
|
Adding directories to PATH:
|
||||||
PATH += C:\Users\user\dev\emsdk
|
PATH += C:\Users\user\dev\emsdk
|
||||||
PATH += C:\Users\user\dev\emsdk\upstream\emscripten
|
PATH += C:\Users\user\dev\emsdk\upstream\emscripten
|
||||||
@@ -167,13 +168,31 @@ EM_CACHE = C:/Users/user/dev/emsdk/upstream/emscripten\cache
|
|||||||
EMSDK_NODE = C:\Users\user\dev\emsdk\node\12.18.1_64bit\bin\node.exe
|
EMSDK_NODE = C:\Users\user\dev\emsdk\node\12.18.1_64bit\bin\node.exe
|
||||||
EMSDK_PYTHON = C:\Users\user\dev\emsdk\python\3.7.4-pywin32_64bit\python.exe
|
EMSDK_PYTHON = C:\Users\user\dev\emsdk\python\3.7.4-pywin32_64bit\python.exe
|
||||||
JAVA_HOME = C:\Users\user\dev\emsdk\java\8.152_64bit
|
JAVA_HOME = C:\Users\user\dev\emsdk\java\8.152_64bit
|
||||||
)";
|
)" : R"(
|
||||||
|
Adding directories to PATH:
|
||||||
|
PATH += /home/user/dev/emsdk
|
||||||
|
PATH += /home/user/dev/emsdk/upstream/emscripten
|
||||||
|
PATH += /home/user/dev/emsdk/node/12.18.1_64bit/bin
|
||||||
|
|
||||||
|
Setting environment variables:
|
||||||
|
PATH = /home/user/dev/emsdk:/home/user/dev/emsdk/upstream/emscripten:/home/user/dev/emsdk/node/12.18.1_64bit/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin
|
||||||
|
EMSDK = /home/user/dev/emsdk
|
||||||
|
EM_CONFIG = /home/user/dev/emsdk/.emscripten
|
||||||
|
EM_CACHE = /home/user/dev/emsdk/upstream/emscripten/cache
|
||||||
|
EMSDK_NODE = /home/user/dev/emsdk/node/12.18.1_64bit/bin/node
|
||||||
|
)";
|
||||||
Environment env;
|
Environment env;
|
||||||
parseEmSdkEnvOutputAndAddToEnv(emSdkEnvOutput, env);
|
parseEmSdkEnvOutputAndAddToEnv(emSdkEnvOutput, env);
|
||||||
|
|
||||||
QVERIFY(env.path().count() == 5);
|
if (HostOsInfo::isWindowsHost()) {
|
||||||
QCOMPARE(env.value("EMSDK"), "C:/Users/user/dev/emsdk");
|
QVERIFY(env.path().count() == 5);
|
||||||
QCOMPARE(env.value("EM_CONFIG"), "C:\\Users\\user\\dev\\emsdk\\.emscripten");
|
QCOMPARE(env.value("EMSDK"), "C:/Users/user/dev/emsdk");
|
||||||
|
QCOMPARE(env.value("EM_CONFIG"), "C:\\Users\\user\\dev\\emsdk\\.emscripten");
|
||||||
|
} else {
|
||||||
|
QVERIFY(env.path().count() == 3);
|
||||||
|
QCOMPARE(env.value("EMSDK"), "/home/user/dev/emsdk");
|
||||||
|
QCOMPARE(env.value("EM_CONFIG"), "/home/user/dev/emsdk/.emscripten");
|
||||||
|
}
|
||||||
}
|
}
|
||||||
#endif // WITH_TESTS
|
#endif // WITH_TESTS
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user