blob: 0c90767509f46dbf2c4538e43efcfa7ed594a77e [file] [log] [blame]
Austin Schuhe89fa2d2019-08-14 20:24:23 -07001#!/bin/sh
2
Austin Schuh272c6132020-11-14 16:37:52 -08003PROJ_FILE=FlatBuffers.Test.csproj
4CORE_PROJ_FILE=FlatBuffers.Core.Test.csproj
Austin Schuhe89fa2d2019-08-14 20:24:23 -07005
Austin Schuh272c6132020-11-14 16:37:52 -08006TEMP_DOTNET_DIR=.dotnet_tmp
7TEMP_BIN=.tmp
8
9[ -d $TEMP_DOTNET_DIR ] || mkdir $TEMP_DOTNET_DIR
10
11[ -f dotnet-install.sh ] || curl -OL https://dot.net/v1/dotnet-install.sh
12
13./dotnet-install.sh --version latest --install-dir $TEMP_DOTNET_DIR
14
15DOTNET=$TEMP_DOTNET_DIR/dotnet
16
17$DOTNET new sln
18$DOTNET sln add $PROJ_FILE
19$DOTNET restore -r linux-x64 $PROJ_FILE
20
21# Testing C# on Linux using Mono.
James Kuszmaul8e62b022022-03-22 09:33:25 -070022msbuild -property:Configuration=Release,OutputPath=$TEMP_BIN -verbosity:quiet $PROJ_FILE
Austin Schuh272c6132020-11-14 16:37:52 -080023mono $TEMP_BIN/FlatBuffers.Test.exe
24rm -fr $TEMP_BIN
Austin Schuhe89fa2d2019-08-14 20:24:23 -070025
26# Repeat with unsafe versions
James Kuszmaul8e62b022022-03-22 09:33:25 -070027msbuild -property:Configuration=Release,UnsafeByteBuffer=true,OutputPath=$TEMP_BIN -verbosity:quiet $PROJ_FILE
Austin Schuh272c6132020-11-14 16:37:52 -080028mono $TEMP_BIN/FlatBuffers.Test.exe
29rm -fr $TEMP_BIN
Austin Schuhe89fa2d2019-08-14 20:24:23 -070030
Austin Schuh272c6132020-11-14 16:37:52 -080031rm FlatBuffers.Test.sln
32rm -rf obj
Austin Schuhe89fa2d2019-08-14 20:24:23 -070033
Austin Schuh272c6132020-11-14 16:37:52 -080034$DOTNET new sln
35$DOTNET sln add $CORE_PROJ_FILE
36$DOTNET restore -r linux-x64 $CORE_PROJ_FILE
37
38# Testing C# on Linux using .Net Core.
James Kuszmaul8e62b022022-03-22 09:33:25 -070039msbuild -property:Configuration=Release,OutputPath=$TEMP_BIN -verbosity:quiet $CORE_PROJ_FILE
Austin Schuh272c6132020-11-14 16:37:52 -080040$TEMP_BIN/FlatBuffers.Core.Test.exe
41rm -fr $TEMP_BIN
42
43# Repeat with unsafe versions
James Kuszmaul8e62b022022-03-22 09:33:25 -070044msbuild -property:Configuration=Release,UnsafeByteBuffer=true,OutputPath=$TEMP_BIN -verbosity:quiet $CORE_PROJ_FILE
Austin Schuh272c6132020-11-14 16:37:52 -080045$TEMP_BIN/FlatBuffers.Core.Test.exe
46rm -fr $TEMP_BIN
47
48# Repeat with SpanT versions
James Kuszmaul8e62b022022-03-22 09:33:25 -070049msbuild -property:Configuration=Release,EnableSpanT=true,OutputPath=$TEMP_BIN -verbosity:quiet $CORE_PROJ_FILE
Austin Schuh272c6132020-11-14 16:37:52 -080050$TEMP_BIN/FlatBuffers.Core.Test.exe
51rm -fr $TEMP_BIN
52
53rm FlatBuffers.Core.Test.sln
54rm -rf obj