Permalink
Browse files

added first unit test

1 parent ad50032 commit 5b0f0bd1e27302f991357fdded0b3e8caeed9e3f @JohnCoates committed Sep 23, 2016
View
@@ -0,0 +1,22 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
+<plist version="1.0">
+<dict>
+ <key>CFBundleDevelopmentRegion</key>
+ <string>en</string>
+ <key>CFBundleExecutable</key>
+ <string>$(EXECUTABLE_NAME)</string>
+ <key>CFBundleIdentifier</key>
+ <string>$(PRODUCT_BUNDLE_IDENTIFIER)</string>
+ <key>CFBundleInfoDictionaryVersion</key>
+ <string>6.0</string>
+ <key>CFBundleName</key>
+ <string>$(PRODUCT_NAME)</string>
+ <key>CFBundlePackageType</key>
+ <string>BNDL</string>
+ <key>CFBundleShortVersionString</key>
+ <string>1.0</string>
+ <key>CFBundleVersion</key>
+ <string>1</string>
+</dict>
+</plist>
@@ -0,0 +1,29 @@
+//
+// PreferencesTests
+// Aerial Tests
+//
+// Created by John Coates on 9/22/16.
+// Copyright © 2016 John Coates. All rights reserved.
+//
+
+import XCTest
+@testable import Aerial_App
+
+class PreferencesTests: XCTestCase {
+
+ override func setUp() {
+ super.setUp()
+ }
+
+ override func tearDown() {
+ super.tearDown()
+ }
+
+ func testPreferenceSaving() {
+ let preferences = Preferences.sharedInstance
+ preferences.cacheAerials = false
+
+ let newPreferences = Preferences()
+ XCTAssertFalse(newPreferences.cacheAerials, "Property write verified")
+ }
+}
@@ -12,6 +12,7 @@
FA36BD401BE57F8E00D5E03B /* VideoDownload.swift in Sources */ = {isa = PBXBuildFile; fileRef = FA36BD3E1BE57F8E00D5E03B /* VideoDownload.swift */; };
FA6F81DC1D939455007975FE /* Preferences.swift in Sources */ = {isa = PBXBuildFile; fileRef = FA6F81DB1D939455007975FE /* Preferences.swift */; };
FA6F81DD1D939455007975FE /* Preferences.swift in Sources */ = {isa = PBXBuildFile; fileRef = FA6F81DB1D939455007975FE /* Preferences.swift */; };
+ FA7199711D94EC5A00FBC99B /* PreferencesTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = FA7199701D94EC5A00FBC99B /* PreferencesTests.swift */; };
FAB22A7E1BE17D7D0065C0F5 /* AssetLoaderDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = FAB22A7D1BE17D7D0065C0F5 /* AssetLoaderDelegate.swift */; };
FAB22A7F1BE17D7D0065C0F5 /* AssetLoaderDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = FAB22A7D1BE17D7D0065C0F5 /* AssetLoaderDelegate.swift */; };
FAC36F481BE1756D007F2A20 /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = FAC36F321BE1756D007F2A20 /* Assets.xcassets */; };
@@ -45,11 +46,24 @@
FAF450251BE2D2FD00C1F98A /* VideoCache.swift in Sources */ = {isa = PBXBuildFile; fileRef = FAF450231BE2D2FD00C1F98A /* VideoCache.swift */; };
/* End PBXBuildFile section */
+/* Begin PBXContainerItemProxy section */
+ FA7199731D94EC5A00FBC99B /* PBXContainerItemProxy */ = {
+ isa = PBXContainerItemProxy;
+ containerPortal = FACAF19C1BD9FC6000E539DC /* Project object */;
+ proxyType = 1;
+ remoteGlobalIDString = FA143CD51BDA3E880041A82B;
+ remoteInfo = "Aerial App";
+ };
+/* End PBXContainerItemProxy section */
+
/* Begin PBXFileReference section */
- FA143CD61BDA3E880041A82B /* Aerial Test.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = "Aerial Test.app"; sourceTree = BUILT_PRODUCTS_DIR; };
+ FA143CD61BDA3E880041A82B /* Aerial App.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = "Aerial App.app"; sourceTree = BUILT_PRODUCTS_DIR; };
FA143CE51BDA3EEF0041A82B /* AVKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AVKit.framework; path = System/Library/Frameworks/AVKit.framework; sourceTree = SDKROOT; };
FA36BD3E1BE57F8E00D5E03B /* VideoDownload.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; lineEnding = 0; path = VideoDownload.swift; sourceTree = "<group>"; xcLanguageSpecificationIdentifier = xcode.lang.swift; };
FA6F81DB1D939455007975FE /* Preferences.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Preferences.swift; sourceTree = "<group>"; };
+ FA71996E1D94EC5A00FBC99B /* Aerial Tests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = "Aerial Tests.xctest"; sourceTree = BUILT_PRODUCTS_DIR; };
+ FA7199701D94EC5A00FBC99B /* PreferencesTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PreferencesTests.swift; sourceTree = "<group>"; };
+ FA7199721D94EC5A00FBC99B /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; };
FAB22A7D1BE17D7D0065C0F5 /* AssetLoaderDelegate.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; lineEnding = 0; path = AssetLoaderDelegate.swift; sourceTree = "<group>"; xcLanguageSpecificationIdentifier = xcode.lang.swift; };
FAC36F301BE1756D007F2A20 /* AppDelegate.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; lineEnding = 0; path = AppDelegate.swift; sourceTree = "<group>"; xcLanguageSpecificationIdentifier = xcode.lang.swift; };
FAC36F321BE1756D007F2A20 /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = "<group>"; };
@@ -81,6 +95,13 @@
);
runOnlyForDeploymentPostprocessing = 0;
};
+ FA71996B1D94EC5A00FBC99B /* Frameworks */ = {
+ isa = PBXFrameworksBuildPhase;
+ buildActionMask = 2147483647;
+ files = (
+ );
+ runOnlyForDeploymentPostprocessing = 0;
+ };
FACAF1A11BD9FC6000E539DC /* Frameworks */ = {
isa = PBXFrameworksBuildPhase;
buildActionMask = 2147483647;
@@ -106,6 +127,15 @@
path = Constants;
sourceTree = "<group>";
};
+ FA71996F1D94EC5A00FBC99B /* Aerial Tests */ = {
+ isa = PBXGroup;
+ children = (
+ FA7199701D94EC5A00FBC99B /* PreferencesTests.swift */,
+ FA7199721D94EC5A00FBC99B /* Info.plist */,
+ );
+ path = "Aerial Tests";
+ sourceTree = "<group>";
+ };
FAC36F2F1BE1756D007F2A20 /* App */ = {
isa = PBXGroup;
children = (
@@ -206,6 +236,7 @@
FAC36F2F1BE1756D007F2A20 /* App */,
FAC36F361BE1756D007F2A20 /* Resources */,
FAC36F3C1BE1756D007F2A20 /* Source */,
+ FA71996F1D94EC5A00FBC99B /* Aerial Tests */,
FA2D7AA01BDD849E009EA54C /* Frameworks */,
FACAF1A61BD9FC6000E539DC /* Products */,
);
@@ -215,7 +246,8 @@
isa = PBXGroup;
children = (
FACAF1A51BD9FC6000E539DC /* Aerial.saver */,
- FA143CD61BDA3E880041A82B /* Aerial Test.app */,
+ FA143CD61BDA3E880041A82B /* Aerial App.app */,
+ FA71996E1D94EC5A00FBC99B /* Aerial Tests.xctest */,
);
name = Products;
sourceTree = "<group>";
@@ -233,9 +265,9 @@
/* End PBXHeadersBuildPhase section */
/* Begin PBXNativeTarget section */
- FA143CD51BDA3E880041A82B /* Aerial Test */ = {
+ FA143CD51BDA3E880041A82B /* Aerial App */ = {
isa = PBXNativeTarget;
- buildConfigurationList = FA143CE01BDA3E880041A82B /* Build configuration list for PBXNativeTarget "Aerial Test" */;
+ buildConfigurationList = FA143CE01BDA3E880041A82B /* Build configuration list for PBXNativeTarget "Aerial App" */;
buildPhases = (
FA74B8481D94DCE0004FE056 /* ShellScript */,
FA143CD21BDA3E880041A82B /* Sources */,
@@ -246,11 +278,29 @@
);
dependencies = (
);
- name = "Aerial Test";
+ name = "Aerial App";
productName = "Aerial Test";
- productReference = FA143CD61BDA3E880041A82B /* Aerial Test.app */;
+ productReference = FA143CD61BDA3E880041A82B /* Aerial App.app */;
productType = "com.apple.product-type.application";
};
+ FA71996D1D94EC5A00FBC99B /* Aerial Tests */ = {
+ isa = PBXNativeTarget;
+ buildConfigurationList = FA7199751D94EC5A00FBC99B /* Build configuration list for PBXNativeTarget "Aerial Tests" */;
+ buildPhases = (
+ FA71996A1D94EC5A00FBC99B /* Sources */,
+ FA71996B1D94EC5A00FBC99B /* Frameworks */,
+ FA71996C1D94EC5A00FBC99B /* Resources */,
+ );
+ buildRules = (
+ );
+ dependencies = (
+ FA7199741D94EC5A00FBC99B /* PBXTargetDependency */,
+ );
+ name = "Aerial Tests";
+ productName = "Aerial Tests";
+ productReference = FA71996E1D94EC5A00FBC99B /* Aerial Tests.xctest */;
+ productType = "com.apple.product-type.bundle.unit-test";
+ };
FACAF1A41BD9FC6000E539DC /* Aerial */ = {
isa = PBXNativeTarget;
buildConfigurationList = FACAF1AF1BD9FC6000E539DC /* Build configuration list for PBXNativeTarget "Aerial" */;
@@ -275,14 +325,19 @@
FACAF19C1BD9FC6000E539DC /* Project object */ = {
isa = PBXProject;
attributes = {
- LastSwiftUpdateCheck = 0700;
+ LastSwiftUpdateCheck = 0800;
LastUpgradeCheck = 0800;
ORGANIZATIONNAME = "John Coates";
TargetAttributes = {
FA143CD51BDA3E880041A82B = {
CreatedOnToolsVersion = 7.0;
LastSwiftMigration = 0800;
};
+ FA71996D1D94EC5A00FBC99B = {
+ CreatedOnToolsVersion = 8.0;
+ ProvisioningStyle = Automatic;
+ TestTargetID = FA143CD51BDA3E880041A82B;
+ };
FACAF1A41BD9FC6000E539DC = {
CreatedOnToolsVersion = 7.0;
LastSwiftMigration = 0800;
@@ -303,7 +358,8 @@
projectRoot = "";
targets = (
FACAF1A41BD9FC6000E539DC /* Aerial */,
- FA143CD51BDA3E880041A82B /* Aerial Test */,
+ FA143CD51BDA3E880041A82B /* Aerial App */,
+ FA71996D1D94EC5A00FBC99B /* Aerial Tests */,
);
};
/* End PBXProject section */
@@ -322,6 +378,13 @@
);
runOnlyForDeploymentPostprocessing = 0;
};
+ FA71996C1D94EC5A00FBC99B /* Resources */ = {
+ isa = PBXResourcesBuildPhase;
+ buildActionMask = 2147483647;
+ files = (
+ );
+ runOnlyForDeploymentPostprocessing = 0;
+ };
FACAF1A31BD9FC6000E539DC /* Resources */ = {
isa = PBXResourcesBuildPhase;
buildActionMask = 2147483647;
@@ -372,6 +435,14 @@
);
runOnlyForDeploymentPostprocessing = 0;
};
+ FA71996A1D94EC5A00FBC99B /* Sources */ = {
+ isa = PBXSourcesBuildPhase;
+ buildActionMask = 2147483647;
+ files = (
+ FA7199711D94EC5A00FBC99B /* PreferencesTests.swift in Sources */,
+ );
+ runOnlyForDeploymentPostprocessing = 0;
+ };
FACAF1A01BD9FC6000E539DC /* Sources */ = {
isa = PBXSourcesBuildPhase;
buildActionMask = 2147483647;
@@ -393,6 +464,14 @@
};
/* End PBXSourcesBuildPhase section */
+/* Begin PBXTargetDependency section */
+ FA7199741D94EC5A00FBC99B /* PBXTargetDependency */ = {
+ isa = PBXTargetDependency;
+ target = FA143CD51BDA3E880041A82B /* Aerial App */;
+ targetProxy = FA7199731D94EC5A00FBC99B /* PBXContainerItemProxy */;
+ };
+/* End PBXTargetDependency section */
+
/* Begin PBXVariantGroup section */
FAC36F331BE1756D007F2A20 /* MainMenu.xib */ = {
isa = PBXVariantGroup;
@@ -436,6 +515,46 @@
};
name = Release;
};
+ FA7199761D94EC5A00FBC99B /* Debug */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ BUNDLE_LOADER = "$(TEST_HOST)";
+ CLANG_ANALYZER_NONNULL = YES;
+ CLANG_WARN_DOCUMENTATION_COMMENTS = YES;
+ CLANG_WARN_SUSPICIOUS_MOVES = YES;
+ CODE_SIGN_IDENTITY = "-";
+ COMBINE_HIDPI_IMAGES = YES;
+ INFOPLIST_FILE = "Aerial Tests/Info.plist";
+ LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks @loader_path/../Frameworks";
+ MACOSX_DEPLOYMENT_TARGET = 10.12;
+ PRODUCT_BUNDLE_IDENTIFIER = "com.johncoates.Aerial-Tests";
+ PRODUCT_NAME = "$(TARGET_NAME)";
+ SWIFT_ACTIVE_COMPILATION_CONDITIONS = DEBUG;
+ SWIFT_OPTIMIZATION_LEVEL = "-Onone";
+ SWIFT_VERSION = 3.0;
+ TEST_HOST = "$(BUILT_PRODUCTS_DIR)/Aerial App.app/Contents/MacOS/Aerial App";
+ };
+ name = Debug;
+ };
+ FA7199771D94EC5A00FBC99B /* Release */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ BUNDLE_LOADER = "$(TEST_HOST)";
+ CLANG_ANALYZER_NONNULL = YES;
+ CLANG_WARN_DOCUMENTATION_COMMENTS = YES;
+ CLANG_WARN_SUSPICIOUS_MOVES = YES;
+ CODE_SIGN_IDENTITY = "-";
+ COMBINE_HIDPI_IMAGES = YES;
+ INFOPLIST_FILE = "Aerial Tests/Info.plist";
+ LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks @loader_path/../Frameworks";
+ MACOSX_DEPLOYMENT_TARGET = 10.12;
+ PRODUCT_BUNDLE_IDENTIFIER = "com.johncoates.Aerial-Tests";
+ PRODUCT_NAME = "$(TARGET_NAME)";
+ SWIFT_VERSION = 3.0;
+ TEST_HOST = "$(BUILT_PRODUCTS_DIR)/Aerial App.app/Contents/MacOS/Aerial App";
+ };
+ name = Release;
+ };
FACAF1AD1BD9FC6000E539DC /* Debug */ = {
isa = XCBuildConfiguration;
buildSettings = {
@@ -557,7 +676,7 @@
/* End XCBuildConfiguration section */
/* Begin XCConfigurationList section */
- FA143CE01BDA3E880041A82B /* Build configuration list for PBXNativeTarget "Aerial Test" */ = {
+ FA143CE01BDA3E880041A82B /* Build configuration list for PBXNativeTarget "Aerial App" */ = {
isa = XCConfigurationList;
buildConfigurations = (
FA143CE11BDA3E880041A82B /* Debug */,
@@ -566,6 +685,14 @@
defaultConfigurationIsVisible = 0;
defaultConfigurationName = Release;
};
+ FA7199751D94EC5A00FBC99B /* Build configuration list for PBXNativeTarget "Aerial Tests" */ = {
+ isa = XCConfigurationList;
+ buildConfigurations = (
+ FA7199761D94EC5A00FBC99B /* Debug */,
+ FA7199771D94EC5A00FBC99B /* Release */,
+ );
+ defaultConfigurationIsVisible = 0;
+ };
FACAF19F1BD9FC6000E539DC /* Build configuration list for PBXProject "Aerial" */ = {
isa = XCConfigurationList;
buildConfigurations = (
@@ -15,8 +15,8 @@
<BuildableReference
BuildableIdentifier = "primary"
BlueprintIdentifier = "FA143CD51BDA3E880041A82B"
- BuildableName = "Aerial Test.app"
- BlueprintName = "Aerial Test"
+ BuildableName = "Aerial App.app"
+ BlueprintName = "Aerial App"
ReferencedContainer = "container:Aerial.xcodeproj">
</BuildableReference>
</BuildActionEntry>
@@ -28,13 +28,23 @@
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
shouldUseLaunchSchemeArgsEnv = "YES">
<Testables>
+ <TestableReference
+ skipped = "NO">
+ <BuildableReference
+ BuildableIdentifier = "primary"
+ BlueprintIdentifier = "FA71996D1D94EC5A00FBC99B"
+ BuildableName = "Aerial Tests.xctest"
+ BlueprintName = "Aerial Tests"
+ ReferencedContainer = "container:Aerial.xcodeproj">
+ </BuildableReference>
+ </TestableReference>
</Testables>
<MacroExpansion>
<BuildableReference
BuildableIdentifier = "primary"
BlueprintIdentifier = "FA143CD51BDA3E880041A82B"
- BuildableName = "Aerial Test.app"
- BlueprintName = "Aerial Test"
+ BuildableName = "Aerial App.app"
+ BlueprintName = "Aerial App"
ReferencedContainer = "container:Aerial.xcodeproj">
</BuildableReference>
</MacroExpansion>
@@ -56,8 +66,8 @@
<BuildableReference
BuildableIdentifier = "primary"
BlueprintIdentifier = "FA143CD51BDA3E880041A82B"
- BuildableName = "Aerial Test.app"
- BlueprintName = "Aerial Test"
+ BuildableName = "Aerial App.app"
+ BlueprintName = "Aerial App"
ReferencedContainer = "container:Aerial.xcodeproj">
</BuildableReference>
</BuildableProductRunnable>
@@ -97,8 +107,8 @@
<BuildableReference
BuildableIdentifier = "primary"
BlueprintIdentifier = "FA143CD51BDA3E880041A82B"
- BuildableName = "Aerial Test.app"
- BlueprintName = "Aerial Test"
+ BuildableName = "Aerial App.app"
+ BlueprintName = "Aerial App"
ReferencedContainer = "container:Aerial.xcodeproj">
</BuildableReference>
</BuildableProductRunnable>
@@ -22,6 +22,11 @@
<key>primary</key>
<true/>
</dict>
+ <key>FA71996D1D94EC5A00FBC99B</key>
+ <dict>
+ <key>primary</key>
+ <true/>
+ </dict>
<key>FACAF1A41BD9FC6000E539DC</key>
<dict>
<key>primary</key>
Oops, something went wrong.

0 comments on commit 5b0f0bd

Please sign in to comment.