Skip to content

Commit c1dc864

Browse files
committed
Enable autobahn and carthage tests on Travis-CI for iOS.
1 parent d6ed65d commit c1dc864

File tree

3 files changed

+43
-29
lines changed

3 files changed

+43
-29
lines changed

.travis.yml

Lines changed: 35 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -2,29 +2,42 @@ branches:
22
only:
33
- master
44
language: objective-c
5+
os: osx
56
osx_image: xcode7.3
6-
sudo: false
7-
xcode_project: SocketRocket.xcodeproj
87
env:
9-
global:
10-
- IOS_SDK=iphonesimulator9.3
11-
- IOS_SCHEME="SocketRocket-iOS"
12-
- MACOS_SDK=macosx10.11
13-
- MACOS_SCHEME="SocketRocketOSX"
14-
- TVOS_SDK=appletvsimulator9.2
15-
- TVOS_SCHEME="SocketRocket-tvOS"
168
matrix:
17-
- DESTINATION="OS=9.3,name=iPad 2" SDK="$IOS_SDK" SCHEME="$IOS_SCHEME"
18-
- DESTINATION="OS=9.3,name=iPad Air" SDK="$IOS_SDK" SCHEME="$IOS_SCHEME"
19-
- DESTINATION="OS=9.3,name=iPhone 5" SDK="$IOS_SDK" SCHEME="$IOS_SCHEME"
20-
- DESTINATION="OS=9.3,name=iPhone 6s" SDK="$IOS_SDK" SCHEME="$IOS_SCHEME"
21-
- DESTINATION="OS=8.4,name=iPhone 6" SDK="$IOS_SDK" SCHEME="$IOS_SCHEME"
22-
- DESTINATION="OS=8.4,name=iPad Air" SDK="$IOS_SDK" SCHEME="$IOS_SCHEME"
23-
- DESTINATION="OS=9.2,name=Apple TV 1080p" SDK="$TVOS_SDK" SCHEME="$TVOS_SCHEME"
24-
- DESTINATION="platform=OS X" SDK="$MACOS_SDK" SCHEME="$MACOS_SCHEME"
25-
before_script:
26-
- bundle install
9+
- TEST_TYPE=iOS
10+
- TEST_TYPE=OSX
11+
- TEST_TYPE=tvOS
12+
- TEST_TYPE=CocoaPods
13+
- TEST_TYPE=Carthage
14+
before_install:
15+
- |
16+
if [ "$TEST_TYPE" = iOS ] || [ "$TEST_TYPE" = OSX ] || [ "$TEST_TYPE" = tvOS ]; then
17+
bundle install
18+
elif [ "$TEST_TYPE" = Carthage ]; then
19+
brew update
20+
brew install carthage || brew upgrade carthage
21+
fi
22+
install:
23+
- |
24+
if [ "$TEST_TYPE" = iOS ]; then
25+
./TestSupport/setup_env.sh .env
26+
fi
2727
script:
28-
- xcodebuild -version
29-
- xcodebuild -scheme "$SCHEME" -sdk "$SDK" -destination "$DESTINATION" -configuration Debug -PBXBuildsContinueAfterErrors=0 ACTIVE_ARCH_ONLY=0 build test | xcpretty -tc
30-
- pod lib lint --verbose --fail-fast
28+
- |
29+
if [ "$TEST_TYPE" = iOS ]; then
30+
set -o pipefail
31+
xcodebuild -project SocketRocket.xcodeproj -scheme "SocketRocket" -sdk iphonesimulator build test
32+
elif [ "$TEST_TYPE" = OSX ]; then
33+
set -o pipefail
34+
xcodebuild -project SocketRocket.xcodeproj -scheme "SocketRocket-OSX" -sdk macosx build | xcpretty -c
35+
elif [ "$TEST_TYPE" = tvOS ]; then
36+
set -o pipefail
37+
xcodebuild -project SocketRocket.xcodeproj -scheme "SocketRocket-tvOS" -sdk appletvsimulator build | xcpretty -c
38+
elif [ "$TEST_TYPE" = CocoaPods ]; then
39+
pod lib lint SocketRocket.podspec
40+
pod lib lint --use-libraries SocketRocket.podspec
41+
elif [ "$TEST_TYPE" = Carthage ]; then
42+
carthage build --no-skip-current
43+
fi

SocketRocket.xcodeproj/xcshareddata/xcschemes/SocketRocket.xcscheme

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -46,7 +46,7 @@
4646
ActionType = "Xcode.IDEStandardExecutionActionsCore.ExecutionActionType.ShellScriptAction">
4747
<ActionContent
4848
title = "Run Script"
49-
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"
49+
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;"
5050
shellToInvoke = "/bin/bash">
5151
<EnvironmentBuildable>
5252
<BuildableReference

TestSupport/setup_env.sh

Lines changed: 7 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,8 @@ VIRTUALENV_VERSION=15.0.1
1111

1212
if [ -d "$VIRTUALENV_PATH" ]; then
1313
echo "Virtual Env already installed"
14+
elif [ -z "$VIRTUALENV_PATH" ]; then
15+
echo "Usage: ./setup_env.sh <folder path>"
1416
else
1517
mkdir $VIRTUALENV_PATH
1618

@@ -20,16 +22,15 @@ else
2022
tar xvfz virtualenv.tar.gz
2123

2224
pushd virtualenv-$VIRTUALENV_VERSION
23-
python setup.py develop
25+
python setup.py install --user
2426
popd
2527

2628
popd
27-
29+
2830
python $VIRTUALENV_PATH/virtualenv-$VIRTUALENV_VERSION/virtualenv.py $VIRTUALENV_PATH
29-
31+
3032
source $VIRTUALENV_PATH/bin/activate
31-
env LDFLAGS="-L$(brew --prefix openssl)/lib" CFLAGS="-I$(brew --prefix openssl)/include" pip install cryptography
32-
33-
pip install unittest2
3433
pip install autobahntestsuite
34+
35+
echo "Environment succesfully set up in $VIRTUALENV_PATH."
3536
fi

0 commit comments

Comments
 (0)