2016-04-26 16:49:35 +00:00
|
|
|
language: objective-c
|
2016-08-23 09:36:11 +00:00
|
|
|
matrix:
|
|
|
|
include:
|
2017-02-15 11:53:02 +00:00
|
|
|
- os: osx
|
|
|
|
osx_image: xcode8.2
|
|
|
|
xcode_sdk: macosx10.12
|
|
|
|
sudo: required
|
2016-08-23 09:36:11 +00:00
|
|
|
- os: osx
|
|
|
|
osx_image: xcode8
|
|
|
|
xcode_sdk: macosx10.11
|
|
|
|
sudo: required
|
|
|
|
- os: osx
|
|
|
|
osx_image: xcode7.3
|
|
|
|
xcode_sdk: macosx10.11
|
|
|
|
sudo: required
|
2016-04-26 16:49:35 +00:00
|
|
|
branches:
|
|
|
|
only:
|
|
|
|
- master
|
2016-05-10 23:58:26 +00:00
|
|
|
install:
|
2016-08-23 09:36:11 +00:00
|
|
|
# Install Apple's NullAudio device. Travis' VMs don't have any audio devices installed.
|
2016-05-10 23:58:26 +00:00
|
|
|
- sudo xcodebuild -project BGMApp/BGMAppTests/NullAudio/AudioDriverExamples.xcodeproj -target NullAudio DSTROOT="/" install
|
|
|
|
- sudo launchctl kickstart -kp system/com.apple.audio.coreaudiod || sudo killall coreaudiod
|
2016-04-26 16:49:35 +00:00
|
|
|
script:
|
2016-10-06 08:20:17 +00:00
|
|
|
# Build in a case-sensitive disk image to catch failures that only happen on case-sensitive filesystems.
|
|
|
|
- hdiutil create -type SPARSEBUNDLE -fs 'Case-sensitive Journaled HFS+' -volname bgmbuild -nospotlight -verbose -attach -size 50m bgmbuild.dmg
|
2016-10-06 20:41:08 +00:00
|
|
|
- sudo cp -r . /Volumes/bgmbuild
|
2016-10-06 08:20:17 +00:00
|
|
|
- cd /Volumes/bgmbuild
|
2017-02-15 12:49:10 +00:00
|
|
|
# Install Background Music.
|
2016-04-26 16:49:35 +00:00
|
|
|
- yes | ./build_and_install.sh
|
|
|
|
- cat build_and_install.log
|
|
|
|
- find */build/Release/*/ -type f -exec md5 {} \;
|
2016-08-23 09:36:11 +00:00
|
|
|
# Log the installed audio devices...
|
2016-05-10 16:11:47 +00:00
|
|
|
- system_profiler SPAudioDataType
|
2016-08-23 09:36:11 +00:00
|
|
|
# ...and their IDs.
|
2016-05-10 16:11:47 +00:00
|
|
|
- say -a '?'
|
2017-02-15 12:49:10 +00:00
|
|
|
# Check the BGM dirs and files were installed. (These fail if the dir/file isn't found.)
|
|
|
|
- ls -la "/Applications/Background Music.app"
|
|
|
|
- ls -la "/Library/Audio/Plug-Ins/HAL/Background Music Device.driver"
|
|
|
|
- ls -la "/usr/local/libexec/BGMXPCHelper.xpc" || ls -la "/Library/Application Support/Background Music/BGMXPCHelper.xpc"
|
|
|
|
- ls -la "/Library/LaunchDaemons/com.bearisdriving.BGM.XPCHelper.plist"
|
2016-08-23 09:36:11 +00:00
|
|
|
# Close BGMApp (which the install script opened).
|
2016-05-10 16:11:47 +00:00
|
|
|
- osascript -e 'tell application "Background Music" to quit'
|
2017-02-15 12:49:10 +00:00
|
|
|
# Run the tests.
|
2016-04-26 16:49:35 +00:00
|
|
|
- xcodebuild -workspace BGM.xcworkspace -scheme 'Background Music Device' test
|
|
|
|
- xcodebuild -workspace BGM.xcworkspace -scheme 'Background Music' test
|
|
|
|
- xcodebuild -workspace BGM.xcworkspace -scheme 'BGMXPCHelper' test
|
2017-02-15 12:49:10 +00:00
|
|
|
# Uninstall Background Music.
|
2016-04-26 16:49:35 +00:00
|
|
|
- yes | ./uninstall.sh
|
2017-02-15 12:49:10 +00:00
|
|
|
# Check the BGM dirs and files were removed.
|
2017-02-15 13:26:04 +00:00
|
|
|
- if ls -la "/Applications/Background Music.app"; then false; fi
|
|
|
|
- if ls -la "/Library/Audio/Plug-Ins/HAL/Background Music Device.driver"; then false; fi
|
|
|
|
- if ls -la "/usr/local/libexec/BGMXPCHelper.xpc"; then false; fi
|
|
|
|
- if ls -la "/Library/Application Support/Background Music/BGMXPCHelper.xpc"; then false; fi
|
|
|
|
- if ls -la "/Library/LaunchDaemons/com.bearisdriving.BGM.XPCHelper.plist"; then false; fi
|
|
|
|
notifications:
|
|
|
|
irc: "irc.freenode.org#backgroundmusic"
|