2016-01-06 10:27:16 +00:00
#!/usr/bin/env bash
#
# Copyright (c) .NET Foundation and contributors. All rights reserved.
# Licensed under the MIT license. See LICENSE file in the project root for full license information.
#
set -e
SOURCE = " ${ BASH_SOURCE [0] } "
while [ -h " $SOURCE " ] ; do # resolve $SOURCE until the file is no longer a symlink
DIR = " $( cd -P " $( dirname " $SOURCE " ) " && pwd ) "
SOURCE = " $( readlink " $SOURCE " ) "
[ [ $SOURCE != /* ] ] && SOURCE = " $DIR / $SOURCE " # if $SOURCE was a relative symlink, we need to resolve it relative to the path where the symlink file was located
done
DIR = " $( cd -P " $( dirname " $SOURCE " ) " && pwd ) "
source " $DIR /../common/_common.sh "
2016-01-11 05:44:30 +00:00
dotnet pack " $REPOROOT /test/PackagedCommands/Commands/dotnet-hello/v1/dotnet-hello "
cp " $REPOROOT /test/PackagedCommands/Commands/dotnet-hello/v1/dotnet-hello/bin/Debug/ " *.nupkg " $REPOROOT /artifacts/packages "
dotnet pack " $REPOROOT /test/PackagedCommands/Commands/dotnet-hello/v2/dotnet-hello "
cp " $REPOROOT /test/PackagedCommands/Commands/dotnet-hello/v2/dotnet-hello/bin/Debug/ " *.nupkg " $REPOROOT /artifacts/packages "
2016-01-06 10:27:16 +00:00
# enable restore for test projects
2016-01-10 20:53:16 +00:00
for test in $( ls -l " $REPOROOT /test/PackagedCommands/Consumers " | grep ^d | awk '{print $9}' | grep "AppWith" )
2016-01-06 10:27:16 +00:00
do
pushd " $REPOROOT /test/PackagedCommands/Consumers/ $test "
cp "project.json.template" "project.json"
popd
done
# restore test projects
pushd " $REPOROOT /test/PackagedCommands/Consumers "
dotnet restore -s " $REPOROOT /artifacts/packages " --no-cache --ignore-failed-sources --parallel
popd
#compile tests with direct dependencies
2016-01-10 20:53:16 +00:00
for test in $( ls -l " $REPOROOT /test/PackagedCommands/Consumers " | grep ^d | awk '{print $9}' | grep "Direct" )
2016-01-06 10:27:16 +00:00
do
pushd " $REPOROOT /test/PackagedCommands/Consumers/ $test "
dotnet compile
popd
done
#run test
2016-01-10 20:53:16 +00:00
for test in $( ls -l " $REPOROOT /test/PackagedCommands/Consumers " | grep ^d | awk '{print $9}' | grep "AppWith" )
2016-01-06 10:27:16 +00:00
do
testName = " test/PackagedCommands/Consumers/ $test "
pushd " $REPOROOT / $testName "
output = $( dotnet hello)
rm "project.json"
2016-01-10 20:53:16 +00:00
if [ " $output " = = "Hello" ] ;
2016-01-06 10:27:16 +00:00
then
2016-01-10 20:53:16 +00:00
echo " Test Passed: $testName "
else
2016-01-06 10:27:16 +00:00
error " Test Failed: $testName /dotnet hello "
2016-01-10 20:53:16 +00:00
error " printed $output "
2016-01-06 10:27:16 +00:00
exit 1
fi
popd
2016-01-11 05:44:30 +00:00
done