mirror of
https://github.com/OPCFoundation/UA-.NETStandard.git
synced 2026-10-29 07:07:24 +08:00
- Unit test project for Core, so far only types and cert validator - CertValidator test moved to Core.Tests - ComplexTypes client tests for encode / decode - bug fixes for issues found in encoders/decoders and complex types tests ** breaking change for JSON encoding of NodeId ** encoding was not according to spec. see #874. #874, #892 fixed
90 lines
2.3 KiB
Bash
Executable File
90 lines
2.3 KiB
Bash
Executable File
#!/bin/bash
|
|
echo Test the .Net Core server and complex client
|
|
workdir=$(pwd)
|
|
testresult=0
|
|
testresulthttps=0
|
|
serverresult=0
|
|
|
|
cd SampleApplications/Samples/NetCoreConsoleServer
|
|
echo build server
|
|
rm -r obj
|
|
dotnet build NetCoreConsoleServer.csproj
|
|
cd ../NetCoreConsoleClient
|
|
echo build client
|
|
rm -r obj
|
|
dotnet build NetCoreConsoleClient.csproj
|
|
cd "$workdir"
|
|
cd ../NetCoreComplexClient
|
|
echo build client
|
|
rm -r obj
|
|
dotnet build NetCoreComplexClient.csproj
|
|
cd "$workdir"
|
|
|
|
cd SampleApplications/Samples/NetCoreConsoleServer
|
|
echo start server
|
|
touch ./server.log
|
|
dotnet run --no-restore --no-build --project NetCoreConsoleServer.csproj -- -t 60 -a >./server.log &
|
|
serverpid="$!"
|
|
echo wait for server started
|
|
grep -m 1 "start" <(tail -f ./server.log --pid=$serverpid)
|
|
tail -f ./server.log --pid=$serverpid &
|
|
cd "$workdir"
|
|
|
|
cd SampleApplications/Samples/NetCoreComplexClient
|
|
echo start client for tcp connection
|
|
dotnet run --no-restore --no-build --project NetCoreComplexClient.csproj -- -t 10 -a -v &
|
|
clientpid="$!"
|
|
cd "$workdir"
|
|
|
|
cd SampleApplications/Samples/NetCoreConsoleClient
|
|
echo start client for https connection
|
|
dotnet run --no-restore --no-build --project NetCoreConsoleClient.csproj -- -t 20 -a https://localhost:51212 &
|
|
httpsclientpid="$!"
|
|
cd "$workdir"
|
|
|
|
echo wait for opc.tcp client
|
|
wait $clientpid
|
|
if [ $? -eq 0 ]; then
|
|
echo "SUCCESS - Client test passed"
|
|
else
|
|
testresult=$?
|
|
echo "FAILED - Client test failed with a status of $testresult"
|
|
fi
|
|
|
|
cd SampleApplications/Samples/NetCoreConsoleClient
|
|
cd "$workdir"
|
|
|
|
echo wait for https client
|
|
wait $httpsclientpid
|
|
if [ $? -eq 0 ]; then
|
|
echo "SUCCESS - Client test passed"
|
|
else
|
|
testresulthttps=$?
|
|
echo "FAILED - Client test failed with a status of $testresulthttps"
|
|
echo "FAILED - Client may require to use trusted TLS server cert to pass this test"
|
|
if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then
|
|
testresulthttps=0
|
|
echo "IGNORED - test requires trusted TLS cert on OSX"
|
|
fi
|
|
fi
|
|
|
|
echo send Ctrl-C to server
|
|
kill -s SIGINT $serverpid
|
|
|
|
echo wait for server
|
|
wait $serverpid
|
|
serverresult=$?
|
|
|
|
if [ $? -eq 0 ]; then
|
|
echo "SUCCESS - Server test passed"
|
|
else
|
|
serverresult=$?
|
|
echo "FAILED - Server test failed with a status of $serverresult"
|
|
fi
|
|
|
|
echo "Test results: Client:$testresult Server:$serverresult ClientHttps:$testresulthttps"
|
|
exit $((testresult + serverresult + testresulthttps))
|
|
|
|
|
|
|