Skip to content

Commit

Permalink
Enable autobahn and carthage tests on Travis-CI for iOS.
Browse files Browse the repository at this point in the history
  • Loading branch information
nlutsenko committed Jun 10, 2016
1 parent d6ed65d commit c1dc864
Show file tree
Hide file tree
Showing 3 changed files with 43 additions and 29 deletions.
57 changes: 35 additions & 22 deletions .travis.yml
Expand Up @@ -2,29 +2,42 @@ branches:
only:
- master
language: objective-c
os: osx
osx_image: xcode7.3
sudo: false
xcode_project: SocketRocket.xcodeproj
env:
global:
- IOS_SDK=iphonesimulator9.3
- IOS_SCHEME="SocketRocket-iOS"
- MACOS_SDK=macosx10.11
- MACOS_SCHEME="SocketRocketOSX"
- TVOS_SDK=appletvsimulator9.2
- TVOS_SCHEME="SocketRocket-tvOS"
matrix:
- DESTINATION="OS=9.3,name=iPad 2" SDK="$IOS_SDK" SCHEME="$IOS_SCHEME"
- DESTINATION="OS=9.3,name=iPad Air" SDK="$IOS_SDK" SCHEME="$IOS_SCHEME"
- DESTINATION="OS=9.3,name=iPhone 5" SDK="$IOS_SDK" SCHEME="$IOS_SCHEME"
- DESTINATION="OS=9.3,name=iPhone 6s" SDK="$IOS_SDK" SCHEME="$IOS_SCHEME"
- DESTINATION="OS=8.4,name=iPhone 6" SDK="$IOS_SDK" SCHEME="$IOS_SCHEME"
- DESTINATION="OS=8.4,name=iPad Air" SDK="$IOS_SDK" SCHEME="$IOS_SCHEME"
- DESTINATION="OS=9.2,name=Apple TV 1080p" SDK="$TVOS_SDK" SCHEME="$TVOS_SCHEME"
- DESTINATION="platform=OS X" SDK="$MACOS_SDK" SCHEME="$MACOS_SCHEME"
before_script:
- bundle install
- TEST_TYPE=iOS
- TEST_TYPE=OSX
- TEST_TYPE=tvOS
- TEST_TYPE=CocoaPods
- TEST_TYPE=Carthage
before_install:
- |
if [ "$TEST_TYPE" = iOS ] || [ "$TEST_TYPE" = OSX ] || [ "$TEST_TYPE" = tvOS ]; then
bundle install
elif [ "$TEST_TYPE" = Carthage ]; then
brew update
brew install carthage || brew upgrade carthage
fi
install:
- |
if [ "$TEST_TYPE" = iOS ]; then
./TestSupport/setup_env.sh .env
fi
script:
- xcodebuild -version
- xcodebuild -scheme "$SCHEME" -sdk "$SDK" -destination "$DESTINATION" -configuration Debug -PBXBuildsContinueAfterErrors=0 ACTIVE_ARCH_ONLY=0 build test | xcpretty -tc
- pod lib lint --verbose --fail-fast
- |
if [ "$TEST_TYPE" = iOS ]; then
set -o pipefail
xcodebuild -project SocketRocket.xcodeproj -scheme "SocketRocket" -sdk iphonesimulator build test
elif [ "$TEST_TYPE" = OSX ]; then
set -o pipefail
xcodebuild -project SocketRocket.xcodeproj -scheme "SocketRocket-OSX" -sdk macosx build | xcpretty -c
elif [ "$TEST_TYPE" = tvOS ]; then
set -o pipefail
xcodebuild -project SocketRocket.xcodeproj -scheme "SocketRocket-tvOS" -sdk appletvsimulator build | xcpretty -c
elif [ "$TEST_TYPE" = CocoaPods ]; then
pod lib lint SocketRocket.podspec
pod lib lint --use-libraries SocketRocket.podspec
elif [ "$TEST_TYPE" = Carthage ]; then
carthage build --no-skip-current
fi
Expand Up @@ -46,7 +46,7 @@
ActionType = "Xcode.IDEStandardExecutionActionsCore.ExecutionActionType.ShellScriptAction">
<ActionContent
title = "Run Script"
scriptText = "PIDFILE=$TMPDIR/sr_test_server.pid&#10;&#10;if [ -r $PIDFILE ]; then&#10; EXISTING_PID=`cat $PIDFILE`&#10; echo &quot;Killing Dangling SRTextharneess PID:&quot; $EXISTING_PID&#10; kill $EXISTING_PID&#10; rm $PIDFILE&#10;fi&#10;&#10;pushd $PROJECT_DIR&#10;&#10;export MACOSX_DEPLOYMENT_TARGET=&#10;&#10;bash $PROJECT_DIR/TestSupport/setup_env.sh $PROJECT_DIR/.env&#10;&#10;nohup TestSupport/run_test_server.sh &amp;&#10;&#10;echo $! &gt; $PIDFILE&#10;&#10;popd"
scriptText = "PIDFILE=$TMPDIR/sr_test_server.pid&#10;&#10;if [ -r $PIDFILE ]; then&#10; EXISTING_PID=`cat $PIDFILE`&#10; echo &quot;Killing Dangling Autobahn Server PID:&quot; $EXISTING_PID&#10; kill $EXISTING_PID || true&#10; rm $PIDFILE&#10;fi&#10;&#10;pushd $PROJECT_DIR&#10;&#10;source .env/bin/activate&#10;nohup ./TestSupport/run_test_server.sh &amp;&#10;&#10;echo $! &gt; $PIDFILE&#10;&#10;popd&#10;"
shellToInvoke = "/bin/bash">
<EnvironmentBuildable>
<BuildableReference
Expand Down
13 changes: 7 additions & 6 deletions TestSupport/setup_env.sh
Expand Up @@ -11,6 +11,8 @@ VIRTUALENV_VERSION=15.0.1

if [ -d "$VIRTUALENV_PATH" ]; then
echo "Virtual Env already installed"
elif [ -z "$VIRTUALENV_PATH" ]; then
echo "Usage: ./setup_env.sh <folder path>"
else
mkdir $VIRTUALENV_PATH

Expand All @@ -20,16 +22,15 @@ else
tar xvfz virtualenv.tar.gz

pushd virtualenv-$VIRTUALENV_VERSION
python setup.py develop
python setup.py install --user
popd

popd

python $VIRTUALENV_PATH/virtualenv-$VIRTUALENV_VERSION/virtualenv.py $VIRTUALENV_PATH

source $VIRTUALENV_PATH/bin/activate
env LDFLAGS="-L$(brew --prefix openssl)/lib" CFLAGS="-I$(brew --prefix openssl)/include" pip install cryptography

pip install unittest2
pip install autobahntestsuite

echo "Environment succesfully set up in $VIRTUALENV_PATH."
fi

0 comments on commit c1dc864

Please sign in to comment.