summaryrefslogtreecommitdiff
path: root/plugins/cordova-plugin-splashscreen/tests
diff options
context:
space:
mode:
authorPliablePixels <pliablepixels@gmail.com>2015-07-31 09:21:51 -0400
committerPliablePixels <pliablepixels@gmail.com>2015-07-31 09:21:51 -0400
commitf53cb76ed1f89607bb8f8c261fa771d733d04b3f (patch)
tree43d2fb4f5882ab78c7dff5f4616c2df0829077b1 /plugins/cordova-plugin-splashscreen/tests
parenta6b7582785a396f059be7e901b56845477140558 (diff)
modified image access to route through index.php and fixed cookie intercept and insert
Diffstat (limited to 'plugins/cordova-plugin-splashscreen/tests')
-rw-r--r--plugins/cordova-plugin-splashscreen/tests/ios/CDVSplashScreenTest.xcworkspace/contents.xcworkspacedata7
-rw-r--r--plugins/cordova-plugin-splashscreen/tests/ios/CDVSplashScreenTest.xcworkspace/xcshareddata/CDVSplashScreenTest.xccheckout41
-rw-r--r--plugins/cordova-plugin-splashscreen/tests/ios/CDVSplashScreenTest.xcworkspace/xcshareddata/xcschemes/CordovaLib.xcscheme77
-rw-r--r--plugins/cordova-plugin-splashscreen/tests/ios/CDVSplashScreenTest/.npmignore1
-rw-r--r--plugins/cordova-plugin-splashscreen/tests/ios/CDVSplashScreenTest/CDVSplashScreenLibTests/ImageNameTest.m702
-rw-r--r--plugins/cordova-plugin-splashscreen/tests/ios/CDVSplashScreenTest/CDVSplashScreenLibTests/ImageNameTestDelegates.h57
-rw-r--r--plugins/cordova-plugin-splashscreen/tests/ios/CDVSplashScreenTest/CDVSplashScreenLibTests/ImageNameTestDelegates.m200
-rw-r--r--plugins/cordova-plugin-splashscreen/tests/ios/CDVSplashScreenTest/CDVSplashScreenLibTests/Info.plist44
-rw-r--r--plugins/cordova-plugin-splashscreen/tests/ios/CDVSplashScreenTest/CDVSplashScreenTest.xcodeproj/project.pbxproj505
-rw-r--r--plugins/cordova-plugin-splashscreen/tests/ios/CDVSplashScreenTest/CDVSplashScreenTest.xcodeproj/project.xcworkspace/contents.xcworkspacedata7
-rw-r--r--plugins/cordova-plugin-splashscreen/tests/ios/CDVSplashScreenTest/CDVSplashScreenTest.xcodeproj/project.xcworkspace/xcshareddata/CDVSplashScreenTest.xccheckout41
-rw-r--r--plugins/cordova-plugin-splashscreen/tests/ios/CDVSplashScreenTest/CDVSplashScreenTest.xcodeproj/xcshareddata/xcschemes/CDVSplashScreenLib.xcscheme77
-rw-r--r--plugins/cordova-plugin-splashscreen/tests/ios/CDVSplashScreenTest/CDVSplashScreenTest.xcodeproj/xcshareddata/xcschemes/CDVSplashScreenLibTests.xcscheme96
-rw-r--r--plugins/cordova-plugin-splashscreen/tests/ios/README.md40
-rw-r--r--plugins/cordova-plugin-splashscreen/tests/ios/doc/de/README.md39
-rw-r--r--plugins/cordova-plugin-splashscreen/tests/ios/doc/es/README.md39
-rw-r--r--plugins/cordova-plugin-splashscreen/tests/ios/doc/fr/README.md39
-rw-r--r--plugins/cordova-plugin-splashscreen/tests/ios/doc/it/README.md39
-rw-r--r--plugins/cordova-plugin-splashscreen/tests/ios/doc/ja/README.md39
-rw-r--r--plugins/cordova-plugin-splashscreen/tests/ios/doc/ko/README.md39
-rw-r--r--plugins/cordova-plugin-splashscreen/tests/ios/doc/pl/README.md39
-rw-r--r--plugins/cordova-plugin-splashscreen/tests/ios/doc/zh/README.md39
-rw-r--r--plugins/cordova-plugin-splashscreen/tests/ios/package.json13
-rw-r--r--plugins/cordova-plugin-splashscreen/tests/plugin.xml29
-rw-r--r--plugins/cordova-plugin-splashscreen/tests/tests.js62
25 files changed, 2311 insertions, 0 deletions
diff --git a/plugins/cordova-plugin-splashscreen/tests/ios/CDVSplashScreenTest.xcworkspace/contents.xcworkspacedata b/plugins/cordova-plugin-splashscreen/tests/ios/CDVSplashScreenTest.xcworkspace/contents.xcworkspacedata
new file mode 100644
index 00000000..2dd325a0
--- /dev/null
+++ b/plugins/cordova-plugin-splashscreen/tests/ios/CDVSplashScreenTest.xcworkspace/contents.xcworkspacedata
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<Workspace
+ version = "1.0">
+ <FileRef
+ location = "container:CDVSplashScreenTest/CDVSplashScreenTest.xcodeproj">
+ </FileRef>
+</Workspace>
diff --git a/plugins/cordova-plugin-splashscreen/tests/ios/CDVSplashScreenTest.xcworkspace/xcshareddata/CDVSplashScreenTest.xccheckout b/plugins/cordova-plugin-splashscreen/tests/ios/CDVSplashScreenTest.xcworkspace/xcshareddata/CDVSplashScreenTest.xccheckout
new file mode 100644
index 00000000..7e4cdb93
--- /dev/null
+++ b/plugins/cordova-plugin-splashscreen/tests/ios/CDVSplashScreenTest.xcworkspace/xcshareddata/CDVSplashScreenTest.xccheckout
@@ -0,0 +1,41 @@
+<?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>IDESourceControlProjectFavoriteDictionaryKey</key>
+ <false/>
+ <key>IDESourceControlProjectIdentifier</key>
+ <string>6BE9AD73-1B9F-4362-98D7-DC631BEC6185</string>
+ <key>IDESourceControlProjectName</key>
+ <string>CDVSplashScreenTest</string>
+ <key>IDESourceControlProjectOriginsDictionary</key>
+ <dict>
+ <key>BEF5A5D0FF64801E558286389440357A9233D7DB</key>
+ <string>https://git-wip-us.apache.org/repos/asf/cordova-plugin-splashscreen.git</string>
+ </dict>
+ <key>IDESourceControlProjectPath</key>
+ <string>tests/ios/CDVSplashScreenTest/CDVSplashScreenTest.xcodeproj</string>
+ <key>IDESourceControlProjectRelativeInstallPathDictionary</key>
+ <dict>
+ <key>BEF5A5D0FF64801E558286389440357A9233D7DB</key>
+ <string>../../../../..</string>
+ </dict>
+ <key>IDESourceControlProjectURL</key>
+ <string>https://git-wip-us.apache.org/repos/asf/cordova-plugin-splashscreen.git</string>
+ <key>IDESourceControlProjectVersion</key>
+ <integer>111</integer>
+ <key>IDESourceControlProjectWCCIdentifier</key>
+ <string>BEF5A5D0FF64801E558286389440357A9233D7DB</string>
+ <key>IDESourceControlProjectWCConfigurations</key>
+ <array>
+ <dict>
+ <key>IDESourceControlRepositoryExtensionIdentifierKey</key>
+ <string>public.vcs.git</string>
+ <key>IDESourceControlWCCIdentifierKey</key>
+ <string>BEF5A5D0FF64801E558286389440357A9233D7DB</string>
+ <key>IDESourceControlWCCName</key>
+ <string>cordova-plugin-splashscreen</string>
+ </dict>
+ </array>
+</dict>
+</plist>
diff --git a/plugins/cordova-plugin-splashscreen/tests/ios/CDVSplashScreenTest.xcworkspace/xcshareddata/xcschemes/CordovaLib.xcscheme b/plugins/cordova-plugin-splashscreen/tests/ios/CDVSplashScreenTest.xcworkspace/xcshareddata/xcschemes/CordovaLib.xcscheme
new file mode 100644
index 00000000..13f9a157
--- /dev/null
+++ b/plugins/cordova-plugin-splashscreen/tests/ios/CDVSplashScreenTest.xcworkspace/xcshareddata/xcschemes/CordovaLib.xcscheme
@@ -0,0 +1,77 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<Scheme
+ LastUpgradeVersion = "0600"
+ version = "1.3">
+ <BuildAction
+ parallelizeBuildables = "YES"
+ buildImplicitDependencies = "YES">
+ <BuildActionEntries>
+ <BuildActionEntry
+ buildForTesting = "YES"
+ buildForRunning = "YES"
+ buildForProfiling = "YES"
+ buildForArchiving = "YES"
+ buildForAnalyzing = "YES">
+ <BuildableReference
+ BuildableIdentifier = "primary"
+ BlueprintIdentifier = "D2AAC07D0554694100DB518D"
+ BuildableName = "libCordova.a"
+ BlueprintName = "CordovaLib"
+ ReferencedContainer = "container:node_modules/cordova-ios/CordovaLib/CordovaLib.xcodeproj">
+ </BuildableReference>
+ </BuildActionEntry>
+ </BuildActionEntries>
+ </BuildAction>
+ <TestAction
+ selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
+ selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
+ shouldUseLaunchSchemeArgsEnv = "YES"
+ buildConfiguration = "Debug">
+ <Testables>
+ </Testables>
+ </TestAction>
+ <LaunchAction
+ selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
+ selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
+ launchStyle = "0"
+ useCustomWorkingDirectory = "NO"
+ buildConfiguration = "Debug"
+ ignoresPersistentStateOnLaunch = "NO"
+ debugDocumentVersioning = "YES"
+ allowLocationSimulation = "YES">
+ <MacroExpansion>
+ <BuildableReference
+ BuildableIdentifier = "primary"
+ BlueprintIdentifier = "D2AAC07D0554694100DB518D"
+ BuildableName = "libCordova.a"
+ BlueprintName = "CordovaLib"
+ ReferencedContainer = "container:node_modules/cordova-ios/CordovaLib/CordovaLib.xcodeproj">
+ </BuildableReference>
+ </MacroExpansion>
+ <AdditionalOptions>
+ </AdditionalOptions>
+ </LaunchAction>
+ <ProfileAction
+ shouldUseLaunchSchemeArgsEnv = "YES"
+ savedToolIdentifier = ""
+ useCustomWorkingDirectory = "NO"
+ buildConfiguration = "Release"
+ debugDocumentVersioning = "YES">
+ <MacroExpansion>
+ <BuildableReference
+ BuildableIdentifier = "primary"
+ BlueprintIdentifier = "D2AAC07D0554694100DB518D"
+ BuildableName = "libCordova.a"
+ BlueprintName = "CordovaLib"
+ ReferencedContainer = "container:node_modules/cordova-ios/CordovaLib/CordovaLib.xcodeproj">
+ </BuildableReference>
+ </MacroExpansion>
+ </ProfileAction>
+ <AnalyzeAction
+ buildConfiguration = "Debug">
+ </AnalyzeAction>
+ <ArchiveAction
+ buildConfiguration = "Release"
+ revealArchiveInOrganizer = "YES">
+ </ArchiveAction>
+</Scheme>
diff --git a/plugins/cordova-plugin-splashscreen/tests/ios/CDVSplashScreenTest/.npmignore b/plugins/cordova-plugin-splashscreen/tests/ios/CDVSplashScreenTest/.npmignore
new file mode 100644
index 00000000..c795b054
--- /dev/null
+++ b/plugins/cordova-plugin-splashscreen/tests/ios/CDVSplashScreenTest/.npmignore
@@ -0,0 +1 @@
+build \ No newline at end of file
diff --git a/plugins/cordova-plugin-splashscreen/tests/ios/CDVSplashScreenTest/CDVSplashScreenLibTests/ImageNameTest.m b/plugins/cordova-plugin-splashscreen/tests/ios/CDVSplashScreenTest/CDVSplashScreenLibTests/ImageNameTest.m
new file mode 100644
index 00000000..1637d247
--- /dev/null
+++ b/plugins/cordova-plugin-splashscreen/tests/ios/CDVSplashScreenTest/CDVSplashScreenLibTests/ImageNameTest.m
@@ -0,0 +1,702 @@
+/*
+ Licensed to the Apache Software Foundation (ASF) under one
+ or more contributor license agreements. See the NOTICE file
+ distributed with this work for additional information
+ regarding copyright ownership. The ASF licenses this file
+ to you under the Apache License, Version 2.0 (the
+ "License"); you may not use this file except in compliance
+ with the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing,
+ software distributed under the License is distributed on an
+ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ KIND, either express or implied. See the License for the
+ specific language governing permissions and limitations
+ under the License.
+ */
+
+#import <UIKit/UIKit.h>
+#import <XCTest/XCTest.h>
+#import <Cordova/CDVScreenOrientationDelegate.h>
+#import "CDVSplashScreen.h"
+#import "ImageNameTestDelegates.h"
+
+const CDV_iOSDevice CDV_iOSDeviceZero = { 0, 0, 0, 0, 0, 0 };
+
+@interface ImageNameTest : XCTestCase
+
+@property (nonatomic, strong) CDVSplashScreen* plugin;
+
+@end
+
+@interface CDVSplashScreen ()
+
+// expose private interface
+- (NSString*)getImageName:(UIInterfaceOrientation)currentOrientation delegate:(id<CDVScreenOrientationDelegate>)orientationDelegate device:(CDV_iOSDevice)device;
+
+@end
+
+@implementation ImageNameTest
+
+- (void)setUp {
+ [super setUp];
+ // Put setup code here. This method is called before the invocation of each test method in the class.
+
+ self.plugin = [[CDVSplashScreen alloc] init];
+}
+
+- (void)tearDown {
+ // Put teardown code here. This method is called after the invocation of each test method in the class.
+ [super tearDown];
+}
+
+- (void) orientationHelper:(id<CDVScreenOrientationDelegate>)delegate expectedImageNameDictionary:(NSDictionary*)expectedImageNameDictionary device:(CDV_iOSDevice)device{
+
+ NSString* name = nil;
+ NSString* expectedImageName = nil;
+ UIInterfaceOrientation currentOrientation;
+ NSString* deviceName = device.iPad? @"iPad" : device.iPhone6Plus? @"iPhone6Plus": device.iPhone6? @"iPhone6": device.iPhone5? @"iPhone5" : @"iPhone";
+
+ // LandscapeLeft, should always return expectedImageName
+ currentOrientation = UIInterfaceOrientationLandscapeLeft;
+ name = [self.plugin getImageName:currentOrientation delegate:delegate device:device];
+ expectedImageName = [expectedImageNameDictionary objectForKey:@"landscapeLeft"];
+ XCTAssertTrue([expectedImageName isEqualToString:name], @"%@ - %@ failed (%@)", @"Landscape", deviceName, name);
+
+ // LandscapeRight - should always return expectedImageName
+ currentOrientation = UIInterfaceOrientationLandscapeRight;
+ name = [self.plugin getImageName:currentOrientation delegate:delegate device:device];
+ expectedImageName = [expectedImageNameDictionary objectForKey:@"landscapeRight"];
+ XCTAssertTrue([expectedImageName isEqualToString:name], @"%@ - %@ failed (%@)", @"Landscape", deviceName, name);
+
+ // Portrait - should always return expectedImageName
+ currentOrientation = UIInterfaceOrientationPortrait;
+ name = [self.plugin getImageName:currentOrientation delegate:delegate device:device];
+ expectedImageName = [expectedImageNameDictionary objectForKey:@"portrait"];
+ XCTAssertTrue([expectedImageName isEqualToString:name], @"%@ - %@ failed (%@)", @"Portrait", deviceName, name);
+
+ // PortraitUpsideDown - should always return expectedImageName
+ currentOrientation = UIInterfaceOrientationPortraitUpsideDown;
+ name = [self.plugin getImageName:currentOrientation delegate:delegate device:device];
+ expectedImageName = [expectedImageNameDictionary objectForKey:@"portraitUpsideDown"];
+ XCTAssertTrue([expectedImageName isEqualToString:name], @"%@ - %@ failed (%@)", @"Portrait", deviceName, name);
+}
+
+- (void)testiPadOrientation {
+
+ CDV_iOSDevice device = CDV_iOSDeviceZero;
+ device.iPad = YES;
+
+ // One orientation
+
+ PortraitOnly* delegate = [[PortraitOnly alloc] init];
+ [self orientationHelper:delegate expectedImageNameDictionary:@{
+ @"landscapeLeft" : @"Default-Portrait",
+ @"landscapeRight" : @"Default-Portrait",
+ @"portrait" : @"Default-Portrait",
+ @"portraitUpsideDown" : @"Default-Portrait"
+ }
+ device:device];
+
+ PortraitUpsideDownOnly* delegate2 = [[PortraitUpsideDownOnly alloc] init];
+ [self orientationHelper:delegate2 expectedImageNameDictionary:@{
+ @"landscapeLeft" : @"Default-Portrait",
+ @"landscapeRight" : @"Default-Portrait",
+ @"portrait" : @"Default-Portrait",
+ @"portraitUpsideDown" : @"Default-Portrait"
+ }
+ device:device];
+
+ LandscapeLeftOnly* delegate3 = [[LandscapeLeftOnly alloc] init];
+ [self orientationHelper:delegate3 expectedImageNameDictionary:@{
+ @"landscapeLeft" : @"Default-Landscape",
+ @"landscapeRight" : @"Default-Landscape",
+ @"portrait" : @"Default-Landscape",
+ @"portraitUpsideDown" : @"Default-Landscape"
+ }
+ device:device];
+
+ LandscapeRightOnly* delegate4 = [[LandscapeRightOnly alloc] init];
+ [self orientationHelper:delegate4 expectedImageNameDictionary:@{
+ @"landscapeLeft" : @"Default-Landscape",
+ @"landscapeRight" : @"Default-Landscape",
+ @"portrait" : @"Default-Landscape",
+ @"portraitUpsideDown" : @"Default-Landscape"
+ }
+ device:device];
+
+ // All Portrait
+
+ AllPortraitOnly* delegate5 = [[AllPortraitOnly alloc] init];
+ [self orientationHelper:delegate5 expectedImageNameDictionary:@{
+ @"landscapeLeft" : @"Default-Portrait",
+ @"landscapeRight" : @"Default-Portrait",
+ @"portrait" : @"Default-Portrait",
+ @"portraitUpsideDown" : @"Default-Portrait"
+ }
+ device:device];
+
+ // All Landscape
+
+ AllLandscapeOnly* delegate6 = [[AllLandscapeOnly alloc] init];
+ [self orientationHelper:delegate6 expectedImageNameDictionary:@{
+ @"landscapeLeft" : @"Default-Landscape",
+ @"landscapeRight" : @"Default-Landscape",
+ @"portrait" : @"Default-Landscape",
+ @"portraitUpsideDown" : @"Default-Landscape"
+ }
+ device:device];
+
+
+ // All orientations
+
+ AllOrientations* delegate7 = [[AllOrientations alloc] init];
+ [self orientationHelper:delegate7 expectedImageNameDictionary:@{
+ @"landscapeLeft" : @"Default-Landscape",
+ @"landscapeRight" : @"Default-Landscape",
+ @"portrait" : @"Default-Portrait",
+ @"portraitUpsideDown" : @"Default-Portrait"
+ }
+ device:device];
+
+ // Portrait and Landscape Left
+
+ PortraitAndLandscapeLeftOnly* delegate8 = [[PortraitAndLandscapeLeftOnly alloc] init];
+ [self orientationHelper:delegate8 expectedImageNameDictionary:@{
+ @"landscapeLeft" : @"Default-Landscape",
+ @"landscapeRight" : @"Default-Landscape",
+ @"portrait" : @"Default-Portrait",
+ @"portraitUpsideDown" : @"Default-Portrait"
+ }
+ device:device];
+
+ // Portrait and Landscape Right
+
+ PortraitAndLandscapeRightOnly* delegate9 = [[PortraitAndLandscapeRightOnly alloc] init];
+ [self orientationHelper:delegate9 expectedImageNameDictionary:@{
+ @"landscapeLeft" : @"Default-Landscape",
+ @"landscapeRight" : @"Default-Landscape",
+ @"portrait" : @"Default-Portrait",
+ @"portraitUpsideDown" : @"Default-Portrait"
+ }
+ device:device];
+
+ // PortraitUpsideDown and Landscape Left
+
+ PortraitUpsideDownAndLandscapeLeftOnly* delegate10 = [[PortraitUpsideDownAndLandscapeLeftOnly alloc] init];
+ [self orientationHelper:delegate10 expectedImageNameDictionary:@{
+ @"landscapeLeft" : @"Default-Landscape",
+ @"landscapeRight" : @"Default-Landscape",
+ @"portrait" : @"Default-Portrait",
+ @"portraitUpsideDown" : @"Default-Portrait"
+ }
+ device:device];
+
+ // PortraitUpsideDown and Landscape Right
+
+ PortraitUpsideDownAndLandscapeRightOnly* delegate11 = [[PortraitUpsideDownAndLandscapeRightOnly alloc] init];
+ [self orientationHelper:delegate11 expectedImageNameDictionary:@{
+ @"landscapeLeft" : @"Default-Landscape",
+ @"landscapeRight" : @"Default-Landscape",
+ @"portrait" : @"Default-Portrait",
+ @"portraitUpsideDown" : @"Default-Portrait"
+ }
+ device:device];
+}
+
+- (void)testiPhoneOrientation {
+
+ CDV_iOSDevice device = CDV_iOSDeviceZero;
+ device.iPhone = YES;
+
+ // One orientation
+
+ PortraitOnly* delegate = [[PortraitOnly alloc] init];
+ [self orientationHelper:delegate expectedImageNameDictionary:@{
+ @"landscapeLeft" : @"Default",
+ @"landscapeRight" : @"Default",
+ @"portrait" : @"Default",
+ @"portraitUpsideDown" : @"Default"
+ }
+ device:device];
+
+ PortraitUpsideDownOnly* delegate2 = [[PortraitUpsideDownOnly alloc] init];
+ [self orientationHelper:delegate2 expectedImageNameDictionary:@{
+ @"landscapeLeft" : @"Default",
+ @"landscapeRight" : @"Default",
+ @"portrait" : @"Default",
+ @"portraitUpsideDown" : @"Default"
+ }
+ device:device];
+
+ LandscapeLeftOnly* delegate3 = [[LandscapeLeftOnly alloc] init];
+ [self orientationHelper:delegate3 expectedImageNameDictionary:@{
+ @"landscapeLeft" : @"Default",
+ @"landscapeRight" : @"Default",
+ @"portrait" : @"Default",
+ @"portraitUpsideDown" : @"Default"
+ }
+ device:device];
+
+ LandscapeRightOnly* delegate4 = [[LandscapeRightOnly alloc] init];
+ [self orientationHelper:delegate4 expectedImageNameDictionary:@{
+ @"landscapeLeft" : @"Default",
+ @"landscapeRight" : @"Default",
+ @"portrait" : @"Default",
+ @"portraitUpsideDown" : @"Default"
+ }
+ device:device];
+
+ // All Portrait
+
+ AllPortraitOnly* delegate5 = [[AllPortraitOnly alloc] init];
+ [self orientationHelper:delegate5 expectedImageNameDictionary:@{
+ @"landscapeLeft" : @"Default",
+ @"landscapeRight" : @"Default",
+ @"portrait" : @"Default",
+ @"portraitUpsideDown" : @"Default"
+ }
+ device:device];
+
+ // All Landscape
+
+ AllLandscapeOnly* delegate6 = [[AllLandscapeOnly alloc] init];
+ [self orientationHelper:delegate6 expectedImageNameDictionary:@{
+ @"landscapeLeft" : @"Default",
+ @"landscapeRight" : @"Default",
+ @"portrait" : @"Default",
+ @"portraitUpsideDown" : @"Default"
+ }
+ device:device];
+
+
+ // All orientations
+
+ AllOrientations* delegate7 = [[AllOrientations alloc] init];
+ [self orientationHelper:delegate7 expectedImageNameDictionary:@{
+ @"landscapeLeft" : @"Default",
+ @"landscapeRight" : @"Default",
+ @"portrait" : @"Default",
+ @"portraitUpsideDown" : @"Default"
+ }
+ device:device];
+
+ // Portrait and Landscape Left
+
+ PortraitAndLandscapeLeftOnly* delegate8 = [[PortraitAndLandscapeLeftOnly alloc] init];
+ [self orientationHelper:delegate8 expectedImageNameDictionary:@{
+ @"landscapeLeft" : @"Default",
+ @"landscapeRight" : @"Default",
+ @"portrait" : @"Default",
+ @"portraitUpsideDown" : @"Default"
+ }
+ device:device];
+
+ // Portrait and Landscape Right
+
+ PortraitAndLandscapeRightOnly* delegate9 = [[PortraitAndLandscapeRightOnly alloc] init];
+ [self orientationHelper:delegate9 expectedImageNameDictionary:@{
+ @"landscapeLeft" : @"Default",
+ @"landscapeRight" : @"Default",
+ @"portrait" : @"Default",
+ @"portraitUpsideDown" : @"Default"
+ }
+ device:device];
+
+ // PortraitUpsideDown and Landscape Left
+
+ PortraitUpsideDownAndLandscapeLeftOnly* delegate10 = [[PortraitUpsideDownAndLandscapeLeftOnly alloc] init];
+ [self orientationHelper:delegate10 expectedImageNameDictionary:@{
+ @"landscapeLeft" : @"Default",
+ @"landscapeRight" : @"Default",
+ @"portrait" : @"Default",
+ @"portraitUpsideDown" : @"Default"
+ }
+ device:device];
+
+ // PortraitUpsideDown and Landscape Right
+
+ PortraitUpsideDownAndLandscapeRightOnly* delegate11 = [[PortraitUpsideDownAndLandscapeRightOnly alloc] init];
+ [self orientationHelper:delegate11 expectedImageNameDictionary:@{
+ @"landscapeLeft" : @"Default",
+ @"landscapeRight" : @"Default",
+ @"portrait" : @"Default",
+ @"portraitUpsideDown" : @"Default"
+ }
+ device:device];
+}
+
+- (void)testiPhone5Orientation {
+
+ CDV_iOSDevice device = CDV_iOSDeviceZero;
+ device.iPhone = YES;
+ device.iPhone5 = YES;
+
+ // One orientation
+
+ PortraitOnly* delegate = [[PortraitOnly alloc] init];
+ [self orientationHelper:delegate expectedImageNameDictionary:@{
+ @"landscapeLeft" : @"Default-568h",
+ @"landscapeRight" : @"Default-568h",
+ @"portrait" : @"Default-568h",
+ @"portraitUpsideDown" : @"Default-568h"
+ }
+ device:device];
+
+ PortraitUpsideDownOnly* delegate2 = [[PortraitUpsideDownOnly alloc] init];
+ [self orientationHelper:delegate2 expectedImageNameDictionary:@{
+ @"landscapeLeft" : @"Default-568h",
+ @"landscapeRight" : @"Default-568h",
+ @"portrait" : @"Default-568h",
+ @"portraitUpsideDown" : @"Default-568h"
+ }
+ device:device];
+
+ LandscapeLeftOnly* delegate3 = [[LandscapeLeftOnly alloc] init];
+ [self orientationHelper:delegate3 expectedImageNameDictionary:@{
+ @"landscapeLeft" : @"Default-568h",
+ @"landscapeRight" : @"Default-568h",
+ @"portrait" : @"Default-568h",
+ @"portraitUpsideDown" : @"Default-568h"
+ }
+ device:device];
+
+ LandscapeRightOnly* delegate4 = [[LandscapeRightOnly alloc] init];
+ [self orientationHelper:delegate4 expectedImageNameDictionary:@{
+ @"landscapeLeft" : @"Default-568h",
+ @"landscapeRight" : @"Default-568h",
+ @"portrait" : @"Default-568h",
+ @"portraitUpsideDown" : @"Default-568h"
+ }
+ device:device];
+
+ // All Portrait
+
+ AllPortraitOnly* delegate5 = [[AllPortraitOnly alloc] init];
+ [self orientationHelper:delegate5 expectedImageNameDictionary:@{
+ @"landscapeLeft" : @"Default-568h",
+ @"landscapeRight" : @"Default-568h",
+ @"portrait" : @"Default-568h",
+ @"portraitUpsideDown" : @"Default-568h"
+ }
+ device:device];
+
+ // All Landscape
+
+ AllLandscapeOnly* delegate6 = [[AllLandscapeOnly alloc] init];
+ [self orientationHelper:delegate6 expectedImageNameDictionary:@{
+ @"landscapeLeft" : @"Default-568h",
+ @"landscapeRight" : @"Default-568h",
+ @"portrait" : @"Default-568h",
+ @"portraitUpsideDown" : @"Default-568h"
+ }
+ device:device];
+
+
+ // All orientations
+
+ AllOrientations* delegate7 = [[AllOrientations alloc] init];
+ [self orientationHelper:delegate7 expectedImageNameDictionary:@{
+ @"landscapeLeft" : @"Default-568h",
+ @"landscapeRight" : @"Default-568h",
+ @"portrait" : @"Default-568h",
+ @"portraitUpsideDown" : @"Default-568h"
+ }
+ device:device];
+
+ // Portrait and Landscape Left
+
+ PortraitAndLandscapeLeftOnly* delegate8 = [[PortraitAndLandscapeLeftOnly alloc] init];
+ [self orientationHelper:delegate8 expectedImageNameDictionary:@{
+ @"landscapeLeft" : @"Default-568h",
+ @"landscapeRight" : @"Default-568h",
+ @"portrait" : @"Default-568h",
+ @"portraitUpsideDown" : @"Default-568h"
+ }
+ device:device];
+
+ // Portrait and Landscape Right
+
+ PortraitAndLandscapeRightOnly* delegate9 = [[PortraitAndLandscapeRightOnly alloc] init];
+ [self orientationHelper:delegate9 expectedImageNameDictionary:@{
+ @"landscapeLeft" : @"Default-568h",
+ @"landscapeRight" : @"Default-568h",
+ @"portrait" : @"Default-568h",
+ @"portraitUpsideDown" : @"Default-568h"
+ }
+ device:device];
+
+ // PortraitUpsideDown and Landscape Left
+
+ PortraitUpsideDownAndLandscapeLeftOnly* delegate10 = [[PortraitUpsideDownAndLandscapeLeftOnly alloc] init];
+ [self orientationHelper:delegate10 expectedImageNameDictionary:@{
+ @"landscapeLeft" : @"Default-568h",
+ @"landscapeRight" : @"Default-568h",
+ @"portrait" : @"Default-568h",
+ @"portraitUpsideDown" : @"Default-568h"
+ }
+ device:device];
+
+ // PortraitUpsideDown and Landscape Right
+
+ PortraitUpsideDownAndLandscapeRightOnly* delegate11 = [[PortraitUpsideDownAndLandscapeRightOnly alloc] init];
+ [self orientationHelper:delegate11 expectedImageNameDictionary:@{
+ @"landscapeLeft" : @"Default-568h",
+ @"landscapeRight" : @"Default-568h",
+ @"portrait" : @"Default-568h",
+ @"portraitUpsideDown" : @"Default-568h"
+ }
+ device:device];
+}
+
+- (void)testiPhone6Orientation {
+
+ CDV_iOSDevice device = CDV_iOSDeviceZero;
+ device.iPhone = YES;
+ device.iPhone6 = YES;
+
+ // One orientation
+
+ PortraitOnly* delegate = [[PortraitOnly alloc] init];
+ [self orientationHelper:delegate expectedImageNameDictionary:@{
+ @"landscapeLeft" : @"Default-667h",
+ @"landscapeRight" : @"Default-667h",
+ @"portrait" : @"Default-667h",
+ @"portraitUpsideDown" : @"Default-667h"
+ }
+ device:device];
+
+ PortraitUpsideDownOnly* delegate2 = [[PortraitUpsideDownOnly alloc] init];
+ [self orientationHelper:delegate2 expectedImageNameDictionary:@{
+ @"landscapeLeft" : @"Default-667h",
+ @"landscapeRight" : @"Default-667h",
+ @"portrait" : @"Default-667h",
+ @"portraitUpsideDown" : @"Default-667h"
+ }
+ device:device];
+
+ LandscapeLeftOnly* delegate3 = [[LandscapeLeftOnly alloc] init];
+ [self orientationHelper:delegate3 expectedImageNameDictionary:@{
+ @"landscapeLeft" : @"Default-667h",
+ @"landscapeRight" : @"Default-667h",
+ @"portrait" : @"Default-667h",
+ @"portraitUpsideDown" : @"Default-667h"
+ }
+ device:device];
+
+ LandscapeRightOnly* delegate4 = [[LandscapeRightOnly alloc] init];
+ [self orientationHelper:delegate4 expectedImageNameDictionary:@{
+ @"landscapeLeft" : @"Default-667h",
+ @"landscapeRight" : @"Default-667h",
+ @"portrait" : @"Default-667h",
+ @"portraitUpsideDown" : @"Default-667h"
+ }
+ device:device];
+
+ // All Portrait
+
+ AllPortraitOnly* delegate5 = [[AllPortraitOnly alloc] init];
+ [self orientationHelper:delegate5 expectedImageNameDictionary:@{
+ @"landscapeLeft" : @"Default-667h",
+ @"landscapeRight" : @"Default-667h",
+ @"portrait" : @"Default-667h",
+ @"portraitUpsideDown" : @"Default-667h"
+ }
+ device:device];
+
+ // All Landscape
+
+ AllLandscapeOnly* delegate6 = [[AllLandscapeOnly alloc] init];
+ [self orientationHelper:delegate6 expectedImageNameDictionary:@{
+ @"landscapeLeft" : @"Default-667h",
+ @"landscapeRight" : @"Default-667h",
+ @"portrait" : @"Default-667h",
+ @"portraitUpsideDown" : @"Default-667h"
+ }
+ device:device];
+
+
+ // All orientations
+
+ AllOrientations* delegate7 = [[AllOrientations alloc] init];
+ [self orientationHelper:delegate7 expectedImageNameDictionary:@{
+ @"landscapeLeft" : @"Default-667h",
+ @"landscapeRight" : @"Default-667h",
+ @"portrait" : @"Default-667h",
+ @"portraitUpsideDown" : @"Default-667h"
+ }
+ device:device];
+
+ // Portrait and Landscape Left
+
+ PortraitAndLandscapeLeftOnly* delegate8 = [[PortraitAndLandscapeLeftOnly alloc] init];
+ [self orientationHelper:delegate8 expectedImageNameDictionary:@{
+ @"landscapeLeft" : @"Default-667h",
+ @"landscapeRight" : @"Default-667h",
+ @"portrait" : @"Default-667h",
+ @"portraitUpsideDown" : @"Default-667h"
+ }
+ device:device];
+
+ // Portrait and Landscape Right
+
+ PortraitAndLandscapeRightOnly* delegate9 = [[PortraitAndLandscapeRightOnly alloc] init];
+ [self orientationHelper:delegate9 expectedImageNameDictionary:@{
+ @"landscapeLeft" : @"Default-667h",
+ @"landscapeRight" : @"Default-667h",
+ @"portrait" : @"Default-667h",
+ @"portraitUpsideDown" : @"Default-667h"
+ }
+ device:device];
+
+ // PortraitUpsideDown and Landscape Left
+
+ PortraitUpsideDownAndLandscapeLeftOnly* delegate10 = [[PortraitUpsideDownAndLandscapeLeftOnly alloc] init];
+ [self orientationHelper:delegate10 expectedImageNameDictionary:@{
+ @"landscapeLeft" : @"Default-667h",
+ @"landscapeRight" : @"Default-667h",
+ @"portrait" : @"Default-667h",
+ @"portraitUpsideDown" : @"Default-667h"
+ }
+ device:device];
+
+ // PortraitUpsideDown and Landscape Right
+
+ PortraitUpsideDownAndLandscapeRightOnly* delegate11 = [[PortraitUpsideDownAndLandscapeRightOnly alloc] init];
+ [self orientationHelper:delegate11 expectedImageNameDictionary:@{
+ @"landscapeLeft" : @"Default-667h",
+ @"landscapeRight" : @"Default-667h",
+ @"portrait" : @"Default-667h",
+ @"portraitUpsideDown" : @"Default-667h"
+ }
+ device:device];
+}
+
+- (void)testiPhone6PlusOrientation {
+
+ CDV_iOSDevice device = CDV_iOSDeviceZero;
+ device.iPhone = YES;
+ device.iPhone6Plus = YES;
+
+ // One orientation
+
+ PortraitOnly* delegate = [[PortraitOnly alloc] init];
+ [self orientationHelper:delegate expectedImageNameDictionary:@{
+ @"landscapeLeft" : @"Default-736h",
+ @"landscapeRight" : @"Default-736h",
+ @"portrait" : @"Default-736h",
+ @"portraitUpsideDown" : @"Default-736h"
+ }
+ device:device];
+
+ PortraitUpsideDownOnly* delegate2 = [[PortraitUpsideDownOnly alloc] init];
+ [self orientationHelper:delegate2 expectedImageNameDictionary:@{
+ @"landscapeLeft" : @"Default-736h",
+ @"landscapeRight" : @"Default-736h",
+ @"portrait" : @"Default-736h",
+ @"portraitUpsideDown" : @"Default-736h"
+ }
+ device:device];
+
+ LandscapeLeftOnly* delegate3 = [[LandscapeLeftOnly alloc] init];
+ [self orientationHelper:delegate3 expectedImageNameDictionary:@{
+ @"landscapeLeft" : @"Default-Landscape-736h",
+ @"landscapeRight" : @"Default-Landscape-736h",
+ @"portrait" : @"Default-Landscape-736h",
+ @"portraitUpsideDown" : @"Default-Landscape-736h"
+ }
+ device:device];
+
+ LandscapeRightOnly* delegate4 = [[LandscapeRightOnly alloc] init];
+ [self orientationHelper:delegate4 expectedImageNameDictionary:@{
+ @"landscapeLeft" : @"Default-Landscape-736h",
+ @"landscapeRight" : @"Default-Landscape-736h",
+ @"portrait" : @"Default-Landscape-736h",
+ @"portraitUpsideDown" : @"Default-Landscape-736h"
+ }
+ device:device];
+
+ // All Portrait
+
+ AllPortraitOnly* delegate5 = [[AllPortraitOnly alloc] init];
+ [self orientationHelper:delegate5 expectedImageNameDictionary:@{
+ @"landscapeLeft" : @"Default-736h",
+ @"landscapeRight" : @"Default-736h",
+ @"portrait" : @"Default-736h",
+ @"portraitUpsideDown" : @"Default-736h"
+ }
+ device:device];
+
+ // All Landscape
+
+ AllLandscapeOnly* delegate6 = [[AllLandscapeOnly alloc] init];
+ [self orientationHelper:delegate6 expectedImageNameDictionary:@{
+ @"landscapeLeft" : @"Default-Landscape-736h",
+ @"landscapeRight" : @"Default-Landscape-736h",
+ @"portrait" : @"Default-Landscape-736h",
+ @"portraitUpsideDown" : @"Default-Landscape-736h"
+ }
+ device:device];
+
+
+ // All orientations
+
+ AllOrientations* delegate7 = [[AllOrientations alloc] init];
+ [self orientationHelper:delegate7 expectedImageNameDictionary:@{
+ @"landscapeLeft" : @"Default-Landscape-736h",
+ @"landscapeRight" : @"Default-Landscape-736h",
+ @"portrait" : @"Default-736h",
+ @"portraitUpsideDown" : @"Default-736h"
+ }
+ device:device];
+
+ // Portrait and Landscape Left
+
+ PortraitAndLandscapeLeftOnly* delegate8 = [[PortraitAndLandscapeLeftOnly alloc] init];
+ [self orientationHelper:delegate8 expectedImageNameDictionary:@{
+ @"landscapeLeft" : @"Default-Landscape-736h",
+ @"landscapeRight" : @"Default-Landscape-736h",
+ @"portrait" : @"Default-736h",
+ @"portraitUpsideDown" : @"Default-736h"
+ }
+ device:device];
+
+ // Portrait and Landscape Right
+
+ PortraitAndLandscapeRightOnly* delegate9 = [[PortraitAndLandscapeRightOnly alloc] init];
+ [self orientationHelper:delegate9 expectedImageNameDictionary:@{
+ @"landscapeLeft" : @"Default-Landscape-736h",
+ @"landscapeRight" : @"Default-Landscape-736h",
+ @"portrait" : @"Default-736h",
+ @"portraitUpsideDown" : @"Default-736h"
+ }
+ device:device];
+
+ // PortraitUpsideDown and Landscape Left
+
+ PortraitUpsideDownAndLandscapeLeftOnly* delegate10 = [[PortraitUpsideDownAndLandscapeLeftOnly alloc] init];
+ [self orientationHelper:delegate10 expectedImageNameDictionary:@{
+ @"landscapeLeft" : @"Default-Landscape-736h",
+ @"landscapeRight" : @"Default-Landscape-736h",
+ @"portrait" : @"Default-736h",
+ @"portraitUpsideDown" : @"Default-736h"
+ }
+ device:device];
+
+ // PortraitUpsideDown and Landscape Right
+
+ PortraitUpsideDownAndLandscapeRightOnly* delegate11 = [[PortraitUpsideDownAndLandscapeRightOnly alloc] init];
+ [self orientationHelper:delegate11 expectedImageNameDictionary:@{
+ @"landscapeLeft" : @"Default-Landscape-736h",
+ @"landscapeRight" : @"Default-Landscape-736h",
+ @"portrait" : @"Default-736h",
+ @"portraitUpsideDown" : @"Default-736h"
+ }
+ device:device];
+}
+
+
+
+@end
diff --git a/plugins/cordova-plugin-splashscreen/tests/ios/CDVSplashScreenTest/CDVSplashScreenLibTests/ImageNameTestDelegates.h b/plugins/cordova-plugin-splashscreen/tests/ios/CDVSplashScreenTest/CDVSplashScreenLibTests/ImageNameTestDelegates.h
new file mode 100644
index 00000000..4756c79e
--- /dev/null
+++ b/plugins/cordova-plugin-splashscreen/tests/ios/CDVSplashScreenTest/CDVSplashScreenLibTests/ImageNameTestDelegates.h
@@ -0,0 +1,57 @@
+/*
+ Licensed to the Apache Software Foundation (ASF) under one
+ or more contributor license agreements. See the NOTICE file
+ distributed with this work for additional information
+ regarding copyright ownership. The ASF licenses this file
+ to you under the Apache License, Version 2.0 (the
+ "License"); you may not use this file except in compliance
+ with the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing,
+ software distributed under the License is distributed on an
+ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ KIND, either express or implied. See the License for the
+ specific language governing permissions and limitations
+ under the License.
+ */
+
+#import <Foundation/Foundation.h>
+#import <Cordova/CDVScreenOrientationDelegate.h>
+
+@interface PortraitOnly : NSObject <CDVScreenOrientationDelegate>
+@end
+
+@interface PortraitUpsideDownOnly : NSObject <CDVScreenOrientationDelegate>
+@end
+
+@interface AllPortraitOnly : NSObject <CDVScreenOrientationDelegate>
+@end
+
+
+@interface LandscapeLeftOnly : NSObject <CDVScreenOrientationDelegate>
+@end
+
+@interface LandscapeRightOnly : NSObject <CDVScreenOrientationDelegate>
+@end
+
+@interface AllLandscapeOnly : NSObject <CDVScreenOrientationDelegate>
+@end
+
+
+@interface AllOrientations : NSObject <CDVScreenOrientationDelegate>
+@end
+
+@interface PortraitAndLandscapeLeftOnly : NSObject <CDVScreenOrientationDelegate>
+@end
+
+@interface PortraitAndLandscapeRightOnly : NSObject <CDVScreenOrientationDelegate>
+@end
+
+@interface PortraitUpsideDownAndLandscapeLeftOnly : NSObject <CDVScreenOrientationDelegate>
+@end
+
+@interface PortraitUpsideDownAndLandscapeRightOnly : NSObject <CDVScreenOrientationDelegate>
+@end
+
diff --git a/plugins/cordova-plugin-splashscreen/tests/ios/CDVSplashScreenTest/CDVSplashScreenLibTests/ImageNameTestDelegates.m b/plugins/cordova-plugin-splashscreen/tests/ios/CDVSplashScreenTest/CDVSplashScreenLibTests/ImageNameTestDelegates.m
new file mode 100644
index 00000000..b5a1b23e
--- /dev/null
+++ b/plugins/cordova-plugin-splashscreen/tests/ios/CDVSplashScreenTest/CDVSplashScreenLibTests/ImageNameTestDelegates.m
@@ -0,0 +1,200 @@
+/*
+ Licensed to the Apache Software Foundation (ASF) under one
+ or more contributor license agreements. See the NOTICE file
+ distributed with this work for additional information
+ regarding copyright ownership. The ASF licenses this file
+ to you under the Apache License, Version 2.0 (the
+ "License"); you may not use this file except in compliance
+ with the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing,
+ software distributed under the License is distributed on an
+ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ KIND, either express or implied. See the License for the
+ specific language governing permissions and limitations
+ under the License.
+ */
+
+#import <UIKit/UIKit.h>
+#import "ImageNameTestDelegates.h"
+
+@implementation PortraitOnly
+
+- (NSUInteger)supportedInterfaceOrientations {
+ return UIInterfaceOrientationMaskPortrait;
+}
+
+- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation {
+ return [self supportedInterfaceOrientations] & (1 << interfaceOrientation) ;
+}
+
+- (BOOL)shouldAutorotate {
+ return YES;
+}
+
+@end
+
+@implementation PortraitUpsideDownOnly
+
+- (NSUInteger)supportedInterfaceOrientations {
+ return UIInterfaceOrientationMaskPortraitUpsideDown;
+}
+
+- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation {
+ return [self supportedInterfaceOrientations] & (1 << interfaceOrientation) ;
+}
+
+- (BOOL)shouldAutorotate {
+ return YES;
+}
+
+@end
+
+@implementation AllPortraitOnly
+
+- (NSUInteger)supportedInterfaceOrientations {
+ return UIInterfaceOrientationMaskPortrait | UIInterfaceOrientationMaskPortraitUpsideDown;
+}
+
+- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation {
+ return [self supportedInterfaceOrientations] & (1 << interfaceOrientation) ;
+}
+
+- (BOOL)shouldAutorotate {
+ return YES;
+}
+
+@end
+
+
+@implementation LandscapeLeftOnly
+
+- (NSUInteger)supportedInterfaceOrientations {
+ return UIInterfaceOrientationMaskLandscapeLeft;
+}
+
+- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation {
+ return [self supportedInterfaceOrientations] & (1 << interfaceOrientation) ;
+}
+
+- (BOOL)shouldAutorotate {
+ return YES;
+}
+
+@end
+
+@implementation LandscapeRightOnly
+
+- (NSUInteger)supportedInterfaceOrientations {
+ return UIInterfaceOrientationMaskLandscapeRight;
+}
+
+- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation {
+ return [self supportedInterfaceOrientations] & (1 << interfaceOrientation) ;
+}
+
+- (BOOL)shouldAutorotate {
+ return YES;
+}
+
+@end
+
+@implementation AllLandscapeOnly
+
+- (NSUInteger)supportedInterfaceOrientations {
+ return UIInterfaceOrientationMaskLandscapeLeft | UIInterfaceOrientationMaskLandscapeRight;
+}
+
+- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation {
+ return [self supportedInterfaceOrientations] & (1 << interfaceOrientation) ;
+}
+
+- (BOOL)shouldAutorotate {
+ return YES;
+}
+
+@end
+
+
+@implementation AllOrientations
+
+- (NSUInteger)supportedInterfaceOrientations {
+ return UIInterfaceOrientationMaskAll;
+}
+
+- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation {
+ return [self supportedInterfaceOrientations] & (1 << interfaceOrientation) ;
+}
+
+- (BOOL)shouldAutorotate {
+ return YES;
+}
+
+@end
+
+@implementation PortraitAndLandscapeLeftOnly
+
+- (NSUInteger)supportedInterfaceOrientations {
+ return UIInterfaceOrientationMaskPortrait | UIInterfaceOrientationMaskLandscapeLeft;
+}
+
+- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation {
+ return [self supportedInterfaceOrientations] & (1 << interfaceOrientation) ;
+}
+
+- (BOOL)shouldAutorotate {
+ return YES;
+}
+
+@end
+
+@implementation PortraitAndLandscapeRightOnly
+
+- (NSUInteger)supportedInterfaceOrientations {
+ return UIInterfaceOrientationMaskPortrait | UIInterfaceOrientationMaskLandscapeRight;
+}
+
+- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation {
+ return [self supportedInterfaceOrientations] & (1 << interfaceOrientation) ;
+}
+
+- (BOOL)shouldAutorotate {
+ return YES;
+}
+
+@end
+
+@implementation PortraitUpsideDownAndLandscapeLeftOnly
+
+- (NSUInteger)supportedInterfaceOrientations {
+ return UIInterfaceOrientationMaskPortraitUpsideDown | UIInterfaceOrientationMaskLandscapeLeft;
+}
+
+- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation {
+ return [self supportedInterfaceOrientations] & (1 << interfaceOrientation) ;
+}
+
+- (BOOL)shouldAutorotate {
+ return YES;
+}
+
+@end
+
+@implementation PortraitUpsideDownAndLandscapeRightOnly
+
+- (NSUInteger)supportedInterfaceOrientations {
+ return UIInterfaceOrientationMaskPortraitUpsideDown | UIInterfaceOrientationMaskLandscapeRight;
+}
+
+- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation {
+ return [self supportedInterfaceOrientations] & (1 << interfaceOrientation) ;
+}
+
+- (BOOL)shouldAutorotate {
+ return YES;
+}
+
+@end
+
diff --git a/plugins/cordova-plugin-splashscreen/tests/ios/CDVSplashScreenTest/CDVSplashScreenLibTests/Info.plist b/plugins/cordova-plugin-splashscreen/tests/ios/CDVSplashScreenTest/CDVSplashScreenLibTests/Info.plist
new file mode 100644
index 00000000..95c8addb
--- /dev/null
+++ b/plugins/cordova-plugin-splashscreen/tests/ios/CDVSplashScreenTest/CDVSplashScreenLibTests/Info.plist
@@ -0,0 +1,44 @@
+<?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">
+<!--
+#
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements. See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership. The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License. You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied. See the License for the
+# specific language governing permissions and limitations
+# under the License.
+#
+-->
+<plist version="1.0">
+<dict>
+ <key>CFBundleDevelopmentRegion</key>
+ <string>en</string>
+ <key>CFBundleExecutable</key>
+ <string>$(EXECUTABLE_NAME)</string>
+ <key>CFBundleIdentifier</key>
+ <string>org.apache.cordova.$(PRODUCT_NAME:rfc1034identifier)</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>CFBundleSignature</key>
+ <string>????</string>
+ <key>CFBundleVersion</key>
+ <string>1</string>
+</dict>
+</plist>
diff --git a/plugins/cordova-plugin-splashscreen/tests/ios/CDVSplashScreenTest/CDVSplashScreenTest.xcodeproj/project.pbxproj b/plugins/cordova-plugin-splashscreen/tests/ios/CDVSplashScreenTest/CDVSplashScreenTest.xcodeproj/project.pbxproj
new file mode 100644
index 00000000..ce820d81
--- /dev/null
+++ b/plugins/cordova-plugin-splashscreen/tests/ios/CDVSplashScreenTest/CDVSplashScreenTest.xcodeproj/project.pbxproj
@@ -0,0 +1,505 @@
+// !$*UTF8*$!
+{
+ archiveVersion = 1;
+ classes = {
+ };
+ objectVersion = 46;
+ objects = {
+
+/* Begin PBXBuildFile section */
+ 7E9F51AB19DA10AE00DA31AC /* CDVSplashScreen.m in Sources */ = {isa = PBXBuildFile; fileRef = 7E9F51A919DA10AE00DA31AC /* CDVSplashScreen.m */; };
+ 7E9F51B119DA114400DA31AC /* ImageNameTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 7E9F51B019DA114400DA31AC /* ImageNameTest.m */; };
+ 7E9F51B319DA116500DA31AC /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 7E9F51B219DA116500DA31AC /* Foundation.framework */; };
+ 7E9F51B519DA127E00DA31AC /* UIKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 7E9F51B419DA127E00DA31AC /* UIKit.framework */; };
+ 7E9F51B819DA14FD00DA31AC /* ImageNameTestDelegates.m in Sources */ = {isa = PBXBuildFile; fileRef = 7E9F51B719DA14FD00DA31AC /* ImageNameTestDelegates.m */; };
+ 7E9F51B919DA1B1600DA31AC /* libCDVSplashScreenLib.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 7E9F519519DA102000DA31AC /* libCDVSplashScreenLib.a */; };
+ 7E9F51BA19DA1B2000DA31AC /* libCordova.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 7E9F519019DA0F8300DA31AC /* libCordova.a */; };
+/* End PBXBuildFile section */
+
+/* Begin PBXContainerItemProxy section */
+ 7E9F518F19DA0F8300DA31AC /* PBXContainerItemProxy */ = {
+ isa = PBXContainerItemProxy;
+ containerPortal = 7E9F518B19DA0F8300DA31AC /* CordovaLib.xcodeproj */;
+ proxyType = 2;
+ remoteGlobalIDString = 68A32D7114102E1C006B237C;
+ remoteInfo = CordovaLib;
+ };
+ 7E9F51AC19DA10DE00DA31AC /* PBXContainerItemProxy */ = {
+ isa = PBXContainerItemProxy;
+ containerPortal = 7E9F517219DA09CE00DA31AC /* Project object */;
+ proxyType = 1;
+ remoteGlobalIDString = 7E9F519419DA102000DA31AC;
+ remoteInfo = CDVSplashScreenLib;
+ };
+ 7E9F51AE19DA10E100DA31AC /* PBXContainerItemProxy */ = {
+ isa = PBXContainerItemProxy;
+ containerPortal = 7E9F518B19DA0F8300DA31AC /* CordovaLib.xcodeproj */;
+ proxyType = 1;
+ remoteGlobalIDString = D2AAC07D0554694100DB518D;
+ remoteInfo = CordovaLib;
+ };
+/* End PBXContainerItemProxy section */
+
+/* Begin PBXCopyFilesBuildPhase section */
+ 7E9F519319DA102000DA31AC /* CopyFiles */ = {
+ isa = PBXCopyFilesBuildPhase;
+ buildActionMask = 2147483647;
+ dstPath = "include/$(PRODUCT_NAME)";
+ dstSubfolderSpec = 16;
+ files = (
+ );
+ runOnlyForDeploymentPostprocessing = 0;
+ };
+/* End PBXCopyFilesBuildPhase section */
+
+/* Begin PBXFileReference section */
+ 7E9F518B19DA0F8300DA31AC /* CordovaLib.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = CordovaLib.xcodeproj; path = "../node_modules/cordova-ios/CordovaLib/CordovaLib.xcodeproj"; sourceTree = "<group>"; };
+ 7E9F519519DA102000DA31AC /* libCDVSplashScreenLib.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = libCDVSplashScreenLib.a; sourceTree = BUILT_PRODUCTS_DIR; };
+ 7E9F519F19DA102000DA31AC /* CDVSplashScreenLibTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = CDVSplashScreenLibTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; };
+ 7E9F51A219DA102000DA31AC /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; };
+ 7E9F51A919DA10AE00DA31AC /* CDVSplashScreen.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = CDVSplashScreen.m; path = ../../../src/ios/CDVSplashScreen.m; sourceTree = SOURCE_ROOT; };
+ 7E9F51AA19DA10AE00DA31AC /* CDVSplashScreen.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = CDVSplashScreen.h; path = ../../../src/ios/CDVSplashScreen.h; sourceTree = SOURCE_ROOT; };
+ 7E9F51B019DA114400DA31AC /* ImageNameTest.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ImageNameTest.m; sourceTree = "<group>"; };
+ 7E9F51B219DA116500DA31AC /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS8.0.sdk/System/Library/Frameworks/Foundation.framework; sourceTree = DEVELOPER_DIR; };
+ 7E9F51B419DA127E00DA31AC /* UIKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = UIKit.framework; path = Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS8.0.sdk/System/Library/Frameworks/UIKit.framework; sourceTree = DEVELOPER_DIR; };
+ 7E9F51B619DA12C600DA31AC /* ImageNameTestDelegates.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ImageNameTestDelegates.h; sourceTree = "<group>"; };
+ 7E9F51B719DA14FD00DA31AC /* ImageNameTestDelegates.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ImageNameTestDelegates.m; sourceTree = "<group>"; };
+/* End PBXFileReference section */
+
+/* Begin PBXFrameworksBuildPhase section */
+ 7E9F519219DA102000DA31AC /* Frameworks */ = {
+ isa = PBXFrameworksBuildPhase;
+ buildActionMask = 2147483647;
+ files = (
+ );
+ runOnlyForDeploymentPostprocessing = 0;
+ };
+ 7E9F519C19DA102000DA31AC /* Frameworks */ = {
+ isa = PBXFrameworksBuildPhase;
+ buildActionMask = 2147483647;
+ files = (
+ 7E9F51BA19DA1B2000DA31AC /* libCordova.a in Frameworks */,
+ 7E9F51B919DA1B1600DA31AC /* libCDVSplashScreenLib.a in Frameworks */,
+ 7E9F51B519DA127E00DA31AC /* UIKit.framework in Frameworks */,
+ 7E9F51B319DA116500DA31AC /* Foundation.framework in Frameworks */,
+ );
+ runOnlyForDeploymentPostprocessing = 0;
+ };
+/* End PBXFrameworksBuildPhase section */
+
+/* Begin PBXGroup section */
+ 7E9F517119DA09CE00DA31AC = {
+ isa = PBXGroup;
+ children = (
+ 7E9F51B419DA127E00DA31AC /* UIKit.framework */,
+ 7E9F51B219DA116500DA31AC /* Foundation.framework */,
+ 7E9F518B19DA0F8300DA31AC /* CordovaLib.xcodeproj */,
+ 7E9F519619DA102000DA31AC /* CDVSplashScreenLib */,
+ 7E9F51A019DA102000DA31AC /* CDVSplashScreenLibTests */,
+ 7E9F517D19DA0A0A00DA31AC /* Products */,
+ );
+ sourceTree = "<group>";
+ };
+ 7E9F517D19DA0A0A00DA31AC /* Products */ = {
+ isa = PBXGroup;
+ children = (
+ 7E9F519519DA102000DA31AC /* libCDVSplashScreenLib.a */,
+ 7E9F519F19DA102000DA31AC /* CDVSplashScreenLibTests.xctest */,
+ );
+ name = Products;
+ sourceTree = "<group>";
+ };
+ 7E9F518C19DA0F8300DA31AC /* Products */ = {
+ isa = PBXGroup;
+ children = (
+ 7E9F519019DA0F8300DA31AC /* libCordova.a */,
+ );
+ name = Products;
+ sourceTree = "<group>";
+ };
+ 7E9F519619DA102000DA31AC /* CDVSplashScreenLib */ = {
+ isa = PBXGroup;
+ children = (
+ 7E9F51A919DA10AE00DA31AC /* CDVSplashScreen.m */,
+ 7E9F51AA19DA10AE00DA31AC /* CDVSplashScreen.h */,
+ );
+ path = CDVSplashScreenLib;
+ sourceTree = SOURCE_ROOT;
+ };
+ 7E9F51A019DA102000DA31AC /* CDVSplashScreenLibTests */ = {
+ isa = PBXGroup;
+ children = (
+ 7E9F51A119DA102000DA31AC /* Supporting Files */,
+ 7E9F51B019DA114400DA31AC /* ImageNameTest.m */,
+ 7E9F51B619DA12C600DA31AC /* ImageNameTestDelegates.h */,
+ 7E9F51B719DA14FD00DA31AC /* ImageNameTestDelegates.m */,
+ );
+ path = CDVSplashScreenLibTests;
+ sourceTree = "<group>";
+ };
+ 7E9F51A119DA102000DA31AC /* Supporting Files */ = {
+ isa = PBXGroup;
+ children = (
+ 7E9F51A219DA102000DA31AC /* Info.plist */,
+ );
+ name = "Supporting Files";
+ sourceTree = "<group>";
+ };
+/* End PBXGroup section */
+
+/* Begin PBXNativeTarget section */
+ 7E9F519419DA102000DA31AC /* CDVSplashScreenLib */ = {
+ isa = PBXNativeTarget;
+ buildConfigurationList = 7E9F51A319DA102000DA31AC /* Build configuration list for PBXNativeTarget "CDVSplashScreenLib" */;
+ buildPhases = (
+ 7E9F519119DA102000DA31AC /* Sources */,
+ 7E9F519219DA102000DA31AC /* Frameworks */,
+ 7E9F519319DA102000DA31AC /* CopyFiles */,
+ );
+ buildRules = (
+ );
+ dependencies = (
+ );
+ name = CDVSplashScreenLib;
+ productName = CDVSplashScreenLib;
+ productReference = 7E9F519519DA102000DA31AC /* libCDVSplashScreenLib.a */;
+ productType = "com.apple.product-type.library.static";
+ };
+ 7E9F519E19DA102000DA31AC /* CDVSplashScreenLibTests */ = {
+ isa = PBXNativeTarget;
+ buildConfigurationList = 7E9F51A619DA102000DA31AC /* Build configuration list for PBXNativeTarget "CDVSplashScreenLibTests" */;
+ buildPhases = (
+ 7E9F519B19DA102000DA31AC /* Sources */,
+ 7E9F519C19DA102000DA31AC /* Frameworks */,
+ 7E9F519D19DA102000DA31AC /* Resources */,
+ );
+ buildRules = (
+ );
+ dependencies = (
+ 7E9F51AF19DA10E100DA31AC /* PBXTargetDependency */,
+ 7E9F51AD19DA10DE00DA31AC /* PBXTargetDependency */,
+ );
+ name = CDVSplashScreenLibTests;
+ productName = CDVSplashScreenLibTests;
+ productReference = 7E9F519F19DA102000DA31AC /* CDVSplashScreenLibTests.xctest */;
+ productType = "com.apple.product-type.bundle.unit-test";
+ };
+/* End PBXNativeTarget section */
+
+/* Begin PBXProject section */
+ 7E9F517219DA09CE00DA31AC /* Project object */ = {
+ isa = PBXProject;
+ attributes = {
+ LastUpgradeCheck = 0600;
+ TargetAttributes = {
+ 7E9F519419DA102000DA31AC = {
+ CreatedOnToolsVersion = 6.0;
+ };
+ 7E9F519E19DA102000DA31AC = {
+ CreatedOnToolsVersion = 6.0;
+ };
+ };
+ };
+ buildConfigurationList = 7E9F517519DA09CE00DA31AC /* Build configuration list for PBXProject "CDVSplashScreenTest" */;
+ compatibilityVersion = "Xcode 3.2";
+ developmentRegion = English;
+ hasScannedForEncodings = 0;
+ knownRegions = (
+ en,
+ );
+ mainGroup = 7E9F517119DA09CE00DA31AC;
+ productRefGroup = 7E9F517D19DA0A0A00DA31AC /* Products */;
+ projectDirPath = "";
+ projectReferences = (
+ {
+ ProductGroup = 7E9F518C19DA0F8300DA31AC /* Products */;
+ ProjectRef = 7E9F518B19DA0F8300DA31AC /* CordovaLib.xcodeproj */;
+ },
+ );
+ projectRoot = "";
+ targets = (
+ 7E9F519419DA102000DA31AC /* CDVSplashScreenLib */,
+ 7E9F519E19DA102000DA31AC /* CDVSplashScreenLibTests */,
+ );
+ };
+/* End PBXProject section */
+
+/* Begin PBXReferenceProxy section */
+ 7E9F519019DA0F8300DA31AC /* libCordova.a */ = {
+ isa = PBXReferenceProxy;
+ fileType = archive.ar;
+ path = libCordova.a;
+ remoteRef = 7E9F518F19DA0F8300DA31AC /* PBXContainerItemProxy */;
+ sourceTree = BUILT_PRODUCTS_DIR;
+ };
+/* End PBXReferenceProxy section */
+
+/* Begin PBXResourcesBuildPhase section */
+ 7E9F519D19DA102000DA31AC /* Resources */ = {
+ isa = PBXResourcesBuildPhase;
+ buildActionMask = 2147483647;
+ files = (
+ );
+ runOnlyForDeploymentPostprocessing = 0;
+ };
+/* End PBXResourcesBuildPhase section */
+
+/* Begin PBXSourcesBuildPhase section */
+ 7E9F519119DA102000DA31AC /* Sources */ = {
+ isa = PBXSourcesBuildPhase;
+ buildActionMask = 2147483647;
+ files = (
+ 7E9F51AB19DA10AE00DA31AC /* CDVSplashScreen.m in Sources */,
+ );
+ runOnlyForDeploymentPostprocessing = 0;
+ };
+ 7E9F519B19DA102000DA31AC /* Sources */ = {
+ isa = PBXSourcesBuildPhase;
+ buildActionMask = 2147483647;
+ files = (
+ 7E9F51B119DA114400DA31AC /* ImageNameTest.m in Sources */,
+ 7E9F51B819DA14FD00DA31AC /* ImageNameTestDelegates.m in Sources */,
+ );
+ runOnlyForDeploymentPostprocessing = 0;
+ };
+/* End PBXSourcesBuildPhase section */
+
+/* Begin PBXTargetDependency section */
+ 7E9F51AD19DA10DE00DA31AC /* PBXTargetDependency */ = {
+ isa = PBXTargetDependency;
+ target = 7E9F519419DA102000DA31AC /* CDVSplashScreenLib */;
+ targetProxy = 7E9F51AC19DA10DE00DA31AC /* PBXContainerItemProxy */;
+ };
+ 7E9F51AF19DA10E100DA31AC /* PBXTargetDependency */ = {
+ isa = PBXTargetDependency;
+ name = CordovaLib;
+ targetProxy = 7E9F51AE19DA10E100DA31AC /* PBXContainerItemProxy */;
+ };
+/* End PBXTargetDependency section */
+
+/* Begin XCBuildConfiguration section */
+ 7E9F517619DA09CE00DA31AC /* Debug */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ };
+ name = Debug;
+ };
+ 7E9F517719DA09CE00DA31AC /* Release */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ };
+ name = Release;
+ };
+ 7E9F51A419DA102000DA31AC /* Debug */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ ALWAYS_SEARCH_USER_PATHS = NO;
+ CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x";
+ CLANG_CXX_LIBRARY = "libc++";
+ CLANG_ENABLE_MODULES = YES;
+ CLANG_ENABLE_OBJC_ARC = YES;
+ CLANG_WARN_BOOL_CONVERSION = YES;
+ CLANG_WARN_CONSTANT_CONVERSION = YES;
+ CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
+ CLANG_WARN_EMPTY_BODY = YES;
+ CLANG_WARN_ENUM_CONVERSION = YES;
+ CLANG_WARN_INT_CONVERSION = YES;
+ CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
+ CLANG_WARN_UNREACHABLE_CODE = YES;
+ CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
+ COPY_PHASE_STRIP = NO;
+ ENABLE_STRICT_OBJC_MSGSEND = YES;
+ GCC_C_LANGUAGE_STANDARD = gnu99;
+ GCC_DYNAMIC_NO_PIC = NO;
+ GCC_OPTIMIZATION_LEVEL = 0;
+ GCC_PREPROCESSOR_DEFINITIONS = (
+ "DEBUG=1",
+ "$(inherited)",
+ );
+ GCC_SYMBOLS_PRIVATE_EXTERN = NO;
+ GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
+ GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
+ GCC_WARN_UNDECLARED_SELECTOR = YES;
+ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
+ GCC_WARN_UNUSED_FUNCTION = YES;
+ GCC_WARN_UNUSED_VARIABLE = YES;
+ HEADER_SEARCH_PATHS = (
+ "$(inherited)",
+ "\"$(TARGET_BUILD_DIR)/usr/local/lib/include\"",
+ "\"$(OBJROOT)/UninstalledProducts/include\"",
+ "\"$(BUILT_PRODUCTS_DIR)\"",
+ );
+ IPHONEOS_DEPLOYMENT_TARGET = 8.0;
+ MTL_ENABLE_DEBUG_INFO = YES;
+ ONLY_ACTIVE_ARCH = YES;
+ OTHER_LDFLAGS = "-ObjC";
+ PRODUCT_NAME = "$(TARGET_NAME)";
+ SDKROOT = iphoneos;
+ SKIP_INSTALL = YES;
+ };
+ name = Debug;
+ };
+ 7E9F51A519DA102000DA31AC /* Release */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ ALWAYS_SEARCH_USER_PATHS = NO;
+ CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x";
+ CLANG_CXX_LIBRARY = "libc++";
+ CLANG_ENABLE_MODULES = YES;
+ CLANG_ENABLE_OBJC_ARC = YES;
+ CLANG_WARN_BOOL_CONVERSION = YES;
+ CLANG_WARN_CONSTANT_CONVERSION = YES;
+ CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
+ CLANG_WARN_EMPTY_BODY = YES;
+ CLANG_WARN_ENUM_CONVERSION = YES;
+ CLANG_WARN_INT_CONVERSION = YES;
+ CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
+ CLANG_WARN_UNREACHABLE_CODE = YES;
+ CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
+ COPY_PHASE_STRIP = YES;
+ ENABLE_NS_ASSERTIONS = NO;
+ ENABLE_STRICT_OBJC_MSGSEND = YES;
+ GCC_C_LANGUAGE_STANDARD = gnu99;
+ GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
+ GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
+ GCC_WARN_UNDECLARED_SELECTOR = YES;
+ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
+ GCC_WARN_UNUSED_FUNCTION = YES;
+ GCC_WARN_UNUSED_VARIABLE = YES;
+ HEADER_SEARCH_PATHS = (
+ "$(inherited)",
+ "\"$(TARGET_BUILD_DIR)/usr/local/lib/include\"",
+ "\n\"$(OBJROOT)/UninstalledProducts/include\"\n\"$(BUILT_PRODUCTS_DIR)\"",
+ );
+ IPHONEOS_DEPLOYMENT_TARGET = 8.0;
+ MTL_ENABLE_DEBUG_INFO = NO;
+ OTHER_LDFLAGS = "-ObjC";
+ PRODUCT_NAME = "$(TARGET_NAME)";
+ SDKROOT = iphoneos;
+ SKIP_INSTALL = YES;
+ VALIDATE_PRODUCT = YES;
+ };
+ name = Release;
+ };
+ 7E9F51A719DA102000DA31AC /* Debug */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ ALWAYS_SEARCH_USER_PATHS = NO;
+ CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x";
+ CLANG_CXX_LIBRARY = "libc++";
+ CLANG_ENABLE_MODULES = YES;
+ CLANG_ENABLE_OBJC_ARC = YES;
+ CLANG_WARN_BOOL_CONVERSION = YES;
+ CLANG_WARN_CONSTANT_CONVERSION = YES;
+ CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
+ CLANG_WARN_EMPTY_BODY = YES;
+ CLANG_WARN_ENUM_CONVERSION = YES;
+ CLANG_WARN_INT_CONVERSION = YES;
+ CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
+ CLANG_WARN_UNREACHABLE_CODE = YES;
+ CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
+ COPY_PHASE_STRIP = NO;
+ ENABLE_STRICT_OBJC_MSGSEND = YES;
+ FRAMEWORK_SEARCH_PATHS = (
+ "$(SDKROOT)/Developer/Library/Frameworks",
+ "$(inherited)",
+ );
+ GCC_C_LANGUAGE_STANDARD = gnu99;
+ GCC_DYNAMIC_NO_PIC = NO;
+ GCC_OPTIMIZATION_LEVEL = 0;
+ GCC_PREPROCESSOR_DEFINITIONS = (
+ "DEBUG=1",
+ "$(inherited)",
+ );
+ GCC_SYMBOLS_PRIVATE_EXTERN = NO;
+ GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
+ GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
+ GCC_WARN_UNDECLARED_SELECTOR = YES;
+ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
+ GCC_WARN_UNUSED_FUNCTION = YES;
+ GCC_WARN_UNUSED_VARIABLE = YES;
+ INFOPLIST_FILE = CDVSplashScreenLibTests/Info.plist;
+ IPHONEOS_DEPLOYMENT_TARGET = 8.0;
+ LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks";
+ MTL_ENABLE_DEBUG_INFO = YES;
+ ONLY_ACTIVE_ARCH = YES;
+ PRODUCT_NAME = "$(TARGET_NAME)";
+ SDKROOT = iphoneos;
+ };
+ name = Debug;
+ };
+ 7E9F51A819DA102000DA31AC /* Release */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ ALWAYS_SEARCH_USER_PATHS = NO;
+ CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x";
+ CLANG_CXX_LIBRARY = "libc++";
+ CLANG_ENABLE_MODULES = YES;
+ CLANG_ENABLE_OBJC_ARC = YES;
+ CLANG_WARN_BOOL_CONVERSION = YES;
+ CLANG_WARN_CONSTANT_CONVERSION = YES;
+ CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
+ CLANG_WARN_EMPTY_BODY = YES;
+ CLANG_WARN_ENUM_CONVERSION = YES;
+ CLANG_WARN_INT_CONVERSION = YES;
+ CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
+ CLANG_WARN_UNREACHABLE_CODE = YES;
+ CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
+ COPY_PHASE_STRIP = YES;
+ ENABLE_NS_ASSERTIONS = NO;
+ ENABLE_STRICT_OBJC_MSGSEND = YES;
+ FRAMEWORK_SEARCH_PATHS = (
+ "$(SDKROOT)/Developer/Library/Frameworks",
+ "$(inherited)",
+ );
+ GCC_C_LANGUAGE_STANDARD = gnu99;
+ GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
+ GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
+ GCC_WARN_UNDECLARED_SELECTOR = YES;
+ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
+ GCC_WARN_UNUSED_FUNCTION = YES;
+ GCC_WARN_UNUSED_VARIABLE = YES;
+ INFOPLIST_FILE = CDVSplashScreenLibTests/Info.plist;
+ IPHONEOS_DEPLOYMENT_TARGET = 8.0;
+ LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks";
+ MTL_ENABLE_DEBUG_INFO = NO;
+ PRODUCT_NAME = "$(TARGET_NAME)";
+ SDKROOT = iphoneos;
+ VALIDATE_PRODUCT = YES;
+ };
+ name = Release;
+ };
+/* End XCBuildConfiguration section */
+
+/* Begin XCConfigurationList section */
+ 7E9F517519DA09CE00DA31AC /* Build configuration list for PBXProject "CDVSplashScreenTest" */ = {
+ isa = XCConfigurationList;
+ buildConfigurations = (
+ 7E9F517619DA09CE00DA31AC /* Debug */,
+ 7E9F517719DA09CE00DA31AC /* Release */,
+ );
+ defaultConfigurationIsVisible = 0;
+ defaultConfigurationName = Release;
+ };
+ 7E9F51A319DA102000DA31AC /* Build configuration list for PBXNativeTarget "CDVSplashScreenLib" */ = {
+ isa = XCConfigurationList;
+ buildConfigurations = (
+ 7E9F51A419DA102000DA31AC /* Debug */,
+ 7E9F51A519DA102000DA31AC /* Release */,
+ );
+ defaultConfigurationIsVisible = 0;
+ defaultConfigurationName = Release;
+ };
+ 7E9F51A619DA102000DA31AC /* Build configuration list for PBXNativeTarget "CDVSplashScreenLibTests" */ = {
+ isa = XCConfigurationList;
+ buildConfigurations = (
+ 7E9F51A719DA102000DA31AC /* Debug */,
+ 7E9F51A819DA102000DA31AC /* Release */,
+ );
+ defaultConfigurationIsVisible = 0;
+ defaultConfigurationName = Release;
+ };
+/* End XCConfigurationList section */
+ };
+ rootObject = 7E9F517219DA09CE00DA31AC /* Project object */;
+}
diff --git a/plugins/cordova-plugin-splashscreen/tests/ios/CDVSplashScreenTest/CDVSplashScreenTest.xcodeproj/project.xcworkspace/contents.xcworkspacedata b/plugins/cordova-plugin-splashscreen/tests/ios/CDVSplashScreenTest/CDVSplashScreenTest.xcodeproj/project.xcworkspace/contents.xcworkspacedata
new file mode 100644
index 00000000..8f912784
--- /dev/null
+++ b/plugins/cordova-plugin-splashscreen/tests/ios/CDVSplashScreenTest/CDVSplashScreenTest.xcodeproj/project.xcworkspace/contents.xcworkspacedata
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<Workspace
+ version = "1.0">
+ <FileRef
+ location = "self:CDVSplashScreenTest.xcodeproj">
+ </FileRef>
+</Workspace>
diff --git a/plugins/cordova-plugin-splashscreen/tests/ios/CDVSplashScreenTest/CDVSplashScreenTest.xcodeproj/project.xcworkspace/xcshareddata/CDVSplashScreenTest.xccheckout b/plugins/cordova-plugin-splashscreen/tests/ios/CDVSplashScreenTest/CDVSplashScreenTest.xcodeproj/project.xcworkspace/xcshareddata/CDVSplashScreenTest.xccheckout
new file mode 100644
index 00000000..7e4cdb93
--- /dev/null
+++ b/plugins/cordova-plugin-splashscreen/tests/ios/CDVSplashScreenTest/CDVSplashScreenTest.xcodeproj/project.xcworkspace/xcshareddata/CDVSplashScreenTest.xccheckout
@@ -0,0 +1,41 @@
+<?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>IDESourceControlProjectFavoriteDictionaryKey</key>
+ <false/>
+ <key>IDESourceControlProjectIdentifier</key>
+ <string>6BE9AD73-1B9F-4362-98D7-DC631BEC6185</string>
+ <key>IDESourceControlProjectName</key>
+ <string>CDVSplashScreenTest</string>
+ <key>IDESourceControlProjectOriginsDictionary</key>
+ <dict>
+ <key>BEF5A5D0FF64801E558286389440357A9233D7DB</key>
+ <string>https://git-wip-us.apache.org/repos/asf/cordova-plugin-splashscreen.git</string>
+ </dict>
+ <key>IDESourceControlProjectPath</key>
+ <string>tests/ios/CDVSplashScreenTest/CDVSplashScreenTest.xcodeproj</string>
+ <key>IDESourceControlProjectRelativeInstallPathDictionary</key>
+ <dict>
+ <key>BEF5A5D0FF64801E558286389440357A9233D7DB</key>
+ <string>../../../../..</string>
+ </dict>
+ <key>IDESourceControlProjectURL</key>
+ <string>https://git-wip-us.apache.org/repos/asf/cordova-plugin-splashscreen.git</string>
+ <key>IDESourceControlProjectVersion</key>
+ <integer>111</integer>
+ <key>IDESourceControlProjectWCCIdentifier</key>
+ <string>BEF5A5D0FF64801E558286389440357A9233D7DB</string>
+ <key>IDESourceControlProjectWCConfigurations</key>
+ <array>
+ <dict>
+ <key>IDESourceControlRepositoryExtensionIdentifierKey</key>
+ <string>public.vcs.git</string>
+ <key>IDESourceControlWCCIdentifierKey</key>
+ <string>BEF5A5D0FF64801E558286389440357A9233D7DB</string>
+ <key>IDESourceControlWCCName</key>
+ <string>cordova-plugin-splashscreen</string>
+ </dict>
+ </array>
+</dict>
+</plist>
diff --git a/plugins/cordova-plugin-splashscreen/tests/ios/CDVSplashScreenTest/CDVSplashScreenTest.xcodeproj/xcshareddata/xcschemes/CDVSplashScreenLib.xcscheme b/plugins/cordova-plugin-splashscreen/tests/ios/CDVSplashScreenTest/CDVSplashScreenTest.xcodeproj/xcshareddata/xcschemes/CDVSplashScreenLib.xcscheme
new file mode 100644
index 00000000..b97b8633
--- /dev/null
+++ b/plugins/cordova-plugin-splashscreen/tests/ios/CDVSplashScreenTest/CDVSplashScreenTest.xcodeproj/xcshareddata/xcschemes/CDVSplashScreenLib.xcscheme
@@ -0,0 +1,77 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<Scheme
+ LastUpgradeVersion = "0600"
+ version = "1.3">
+ <BuildAction
+ parallelizeBuildables = "YES"
+ buildImplicitDependencies = "YES">
+ <BuildActionEntries>
+ <BuildActionEntry
+ buildForTesting = "YES"
+ buildForRunning = "YES"
+ buildForProfiling = "YES"
+ buildForArchiving = "YES"
+ buildForAnalyzing = "YES">
+ <BuildableReference
+ BuildableIdentifier = "primary"
+ BlueprintIdentifier = "7E9F519419DA102000DA31AC"
+ BuildableName = "libCDVSplashScreenLib.a"
+ BlueprintName = "CDVSplashScreenLib"
+ ReferencedContainer = "container:CDVSplashScreenTest.xcodeproj">
+ </BuildableReference>
+ </BuildActionEntry>
+ </BuildActionEntries>
+ </BuildAction>
+ <TestAction
+ selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
+ selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
+ shouldUseLaunchSchemeArgsEnv = "YES"
+ buildConfiguration = "Debug">
+ <Testables>
+ </Testables>
+ </TestAction>
+ <LaunchAction
+ selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
+ selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
+ launchStyle = "0"
+ useCustomWorkingDirectory = "NO"
+ buildConfiguration = "Debug"
+ ignoresPersistentStateOnLaunch = "NO"
+ debugDocumentVersioning = "YES"
+ allowLocationSimulation = "YES">
+ <MacroExpansion>
+ <BuildableReference
+ BuildableIdentifier = "primary"
+ BlueprintIdentifier = "7E9F519419DA102000DA31AC"
+ BuildableName = "libCDVSplashScreenLib.a"
+ BlueprintName = "CDVSplashScreenLib"
+ ReferencedContainer = "container:CDVSplashScreenTest.xcodeproj">
+ </BuildableReference>
+ </MacroExpansion>
+ <AdditionalOptions>
+ </AdditionalOptions>
+ </LaunchAction>
+ <ProfileAction
+ shouldUseLaunchSchemeArgsEnv = "YES"
+ savedToolIdentifier = ""
+ useCustomWorkingDirectory = "NO"
+ buildConfiguration = "Release"
+ debugDocumentVersioning = "YES">
+ <MacroExpansion>
+ <BuildableReference
+ BuildableIdentifier = "primary"
+ BlueprintIdentifier = "7E9F519419DA102000DA31AC"
+ BuildableName = "libCDVSplashScreenLib.a"
+ BlueprintName = "CDVSplashScreenLib"
+ ReferencedContainer = "container:CDVSplashScreenTest.xcodeproj">
+ </BuildableReference>
+ </MacroExpansion>
+ </ProfileAction>
+ <AnalyzeAction
+ buildConfiguration = "Debug">
+ </AnalyzeAction>
+ <ArchiveAction
+ buildConfiguration = "Release"
+ revealArchiveInOrganizer = "YES">
+ </ArchiveAction>
+</Scheme>
diff --git a/plugins/cordova-plugin-splashscreen/tests/ios/CDVSplashScreenTest/CDVSplashScreenTest.xcodeproj/xcshareddata/xcschemes/CDVSplashScreenLibTests.xcscheme b/plugins/cordova-plugin-splashscreen/tests/ios/CDVSplashScreenTest/CDVSplashScreenTest.xcodeproj/xcshareddata/xcschemes/CDVSplashScreenLibTests.xcscheme
new file mode 100644
index 00000000..6a2a5261
--- /dev/null
+++ b/plugins/cordova-plugin-splashscreen/tests/ios/CDVSplashScreenTest/CDVSplashScreenTest.xcodeproj/xcshareddata/xcschemes/CDVSplashScreenLibTests.xcscheme
@@ -0,0 +1,96 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<Scheme
+ LastUpgradeVersion = "0600"
+ version = "1.3">
+ <BuildAction
+ parallelizeBuildables = "YES"
+ buildImplicitDependencies = "YES">
+ <BuildActionEntries>
+ <BuildActionEntry
+ buildForTesting = "YES"
+ buildForRunning = "YES"
+ buildForProfiling = "NO"
+ buildForArchiving = "NO"
+ buildForAnalyzing = "YES">
+ <BuildableReference
+ BuildableIdentifier = "primary"
+ BlueprintIdentifier = "7E9F519E19DA102000DA31AC"
+ BuildableName = "CDVSplashScreenLibTests.xctest"
+ BlueprintName = "CDVSplashScreenLibTests"
+ ReferencedContainer = "container:CDVSplashScreenTest.xcodeproj">
+ </BuildableReference>
+ </BuildActionEntry>
+ </BuildActionEntries>
+ </BuildAction>
+ <TestAction
+ selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
+ selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
+ shouldUseLaunchSchemeArgsEnv = "YES"
+ buildConfiguration = "Debug">
+ <Testables>
+ <TestableReference
+ skipped = "NO">
+ <BuildableReference
+ BuildableIdentifier = "primary"
+ BlueprintIdentifier = "7E9F519E19DA102000DA31AC"
+ BuildableName = "CDVSplashScreenLibTests.xctest"
+ BlueprintName = "CDVSplashScreenLibTests"
+ ReferencedContainer = "container:CDVSplashScreenTest.xcodeproj">
+ </BuildableReference>
+ </TestableReference>
+ </Testables>
+ <MacroExpansion>
+ <BuildableReference
+ BuildableIdentifier = "primary"
+ BlueprintIdentifier = "7E9F519E19DA102000DA31AC"
+ BuildableName = "CDVSplashScreenLibTests.xctest"
+ BlueprintName = "CDVSplashScreenLibTests"
+ ReferencedContainer = "container:CDVSplashScreenTest.xcodeproj">
+ </BuildableReference>
+ </MacroExpansion>
+ </TestAction>
+ <LaunchAction
+ selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
+ selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
+ launchStyle = "0"
+ useCustomWorkingDirectory = "NO"
+ buildConfiguration = "Debug"
+ ignoresPersistentStateOnLaunch = "NO"
+ debugDocumentVersioning = "YES"
+ allowLocationSimulation = "YES">
+ <MacroExpansion>
+ <BuildableReference
+ BuildableIdentifier = "primary"
+ BlueprintIdentifier = "7E9F519E19DA102000DA31AC"
+ BuildableName = "CDVSplashScreenLibTests.xctest"
+ BlueprintName = "CDVSplashScreenLibTests"
+ ReferencedContainer = "container:CDVSplashScreenTest.xcodeproj">
+ </BuildableReference>
+ </MacroExpansion>
+ <AdditionalOptions>
+ </AdditionalOptions>
+ </LaunchAction>
+ <ProfileAction
+ shouldUseLaunchSchemeArgsEnv = "YES"
+ savedToolIdentifier = ""
+ useCustomWorkingDirectory = "NO"
+ buildConfiguration = "Release"
+ debugDocumentVersioning = "YES">
+ <MacroExpansion>
+ <BuildableReference
+ BuildableIdentifier = "primary"
+ BlueprintIdentifier = "7E9F519E19DA102000DA31AC"
+ BuildableName = "CDVSplashScreenLibTests.xctest"
+ BlueprintName = "CDVSplashScreenLibTests"
+ ReferencedContainer = "container:CDVSplashScreenTest.xcodeproj">
+ </BuildableReference>
+ </MacroExpansion>
+ </ProfileAction>
+ <AnalyzeAction
+ buildConfiguration = "Debug">
+ </AnalyzeAction>
+ <ArchiveAction
+ buildConfiguration = "Release"
+ revealArchiveInOrganizer = "YES">
+ </ArchiveAction>
+</Scheme>
diff --git a/plugins/cordova-plugin-splashscreen/tests/ios/README.md b/plugins/cordova-plugin-splashscreen/tests/ios/README.md
new file mode 100644
index 00000000..97ee9dff
--- /dev/null
+++ b/plugins/cordova-plugin-splashscreen/tests/ios/README.md
@@ -0,0 +1,40 @@
+<!--
+# license: Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements. See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership. The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License. You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied. See the License for the
+# specific language governing permissions and limitations
+# under the License.
+-->
+
+# iOS Tests for CDVSplashScreen
+
+You need to install `node.js` to pull in `cordova-ios`.
+
+First install cordova-ios:
+
+ npm install
+
+... in the current folder.
+
+
+# Testing from Xcode
+
+1. Launch the `CDVSplashScreenTest.xcworkspace` file.
+2. Choose "CDVSplashScreenLibTests" from the scheme drop-down menu
+3. Click and hold on the `Play` button, and choose the `Wrench` icon to run the tests
+
+
+# Testing from the command line
+
+ npm test
diff --git a/plugins/cordova-plugin-splashscreen/tests/ios/doc/de/README.md b/plugins/cordova-plugin-splashscreen/tests/ios/doc/de/README.md
new file mode 100644
index 00000000..9c7f0a4f
--- /dev/null
+++ b/plugins/cordova-plugin-splashscreen/tests/ios/doc/de/README.md
@@ -0,0 +1,39 @@
+<!--
+# license: Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements. See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership. The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License. You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied. See the License for the
+# specific language governing permissions and limitations
+# under the License.
+-->
+
+# iOS-Tests für CDVSplashScreen
+
+Sie müssen installieren `node.js` in `Cordova-Ios` zu ziehen.
+
+Installieren Sie Cordova-Ios zum ersten Mal:
+
+ npm install
+
+
+... im aktuellen Ordner.
+
+# Testen von Xcode
+
+ 1. Starten Sie die Datei `CDVSplashScreenTest.xcworkspace` .
+ 2. Wählen Sie im Dropdown-Schema "CDVSplashScreenLibTests"
+ 3. Klicken Sie und halten Sie auf den `Play` -Button und wählen Sie das `Schraubenschlüssel` -Symbol zum Ausführen der tests
+
+# Tests von der Befehlszeile aus
+
+ npm test
diff --git a/plugins/cordova-plugin-splashscreen/tests/ios/doc/es/README.md b/plugins/cordova-plugin-splashscreen/tests/ios/doc/es/README.md
new file mode 100644
index 00000000..2176c921
--- /dev/null
+++ b/plugins/cordova-plugin-splashscreen/tests/ios/doc/es/README.md
@@ -0,0 +1,39 @@
+<!--
+# license: Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements. See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership. The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License. You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied. See the License for the
+# specific language governing permissions and limitations
+# under the License.
+-->
+
+# Pruebas de iOS para CDVSplashScreen
+
+Necesita instalar `node.js` en `Córdoba-ios`.
+
+Primero instalar cordova-ios:
+
+ npm install
+
+
+... en la carpeta actual.
+
+# Prueba de Xcode
+
+ 1. Iniciar el archivo `CDVSplashScreenTest.xcworkspace` .
+ 2. Elija "CDVSplashScreenLibTests" en el menú de lista desplegable esquema
+ 3. Haga clic y mantenga el botón de `Play` y elegir el icono de `llave inglesa` para ejecutar las pruebas
+
+# Pruebas desde la línea de comandos
+
+ npm test
diff --git a/plugins/cordova-plugin-splashscreen/tests/ios/doc/fr/README.md b/plugins/cordova-plugin-splashscreen/tests/ios/doc/fr/README.md
new file mode 100644
index 00000000..0dbbd0d2
--- /dev/null
+++ b/plugins/cordova-plugin-splashscreen/tests/ios/doc/fr/README.md
@@ -0,0 +1,39 @@
+<!--
+# license: Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements. See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership. The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License. You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied. See the License for the
+# specific language governing permissions and limitations
+# under the License.
+-->
+
+# Tests d'iOS pour CDVSplashScreen
+
+Vous devez installer `node.js` à `cordova-ios`.
+
+Commencez par installer cordova-ios :
+
+ npm install
+
+
+... dans le dossier actuel.
+
+# Tests de Xcode
+
+ 1. Lancez le fichier `CDVSplashScreenTest.xcworkspace` .
+ 2. Choisissez « CDVSplashScreenLibTests » dans le menu déroulant de régime
+ 3. Cliquez et maintenez sur la touche `Play` et cliquez sur l'icône de `clé` pour exécuter les tests
+
+# Test de la ligne de commande
+
+ npm test
diff --git a/plugins/cordova-plugin-splashscreen/tests/ios/doc/it/README.md b/plugins/cordova-plugin-splashscreen/tests/ios/doc/it/README.md
new file mode 100644
index 00000000..2a42df67
--- /dev/null
+++ b/plugins/cordova-plugin-splashscreen/tests/ios/doc/it/README.md
@@ -0,0 +1,39 @@
+<!--
+# license: Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements. See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership. The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License. You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied. See the License for the
+# specific language governing permissions and limitations
+# under the License.
+-->
+
+# Test di iOS per CDVSplashScreen
+
+È necessario installare `node. js` per tirare in `cordova-ios`.
+
+In primo luogo installare cordova-ios:
+
+ npm install
+
+
+... nella cartella corrente.
+
+# Test da Xcode
+
+ 1. Lanciare il file `CDVSplashScreenTest.xcworkspace` .
+ 2. Scegli "CDVSplashScreenLibTests" dal menu a discesa Schema
+ 3. Fare clic e tenere premuto il pulsante `Play` e scegliere l'icona della `chiave inglese` per eseguire i test
+
+# Test dalla riga di comando
+
+ npm test
diff --git a/plugins/cordova-plugin-splashscreen/tests/ios/doc/ja/README.md b/plugins/cordova-plugin-splashscreen/tests/ios/doc/ja/README.md
new file mode 100644
index 00000000..011b8242
--- /dev/null
+++ b/plugins/cordova-plugin-splashscreen/tests/ios/doc/ja/README.md
@@ -0,0 +1,39 @@
+<!--
+# license: Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements. See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership. The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License. You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied. See the License for the
+# specific language governing permissions and limitations
+# under the License.
+-->
+
+# CDVSplashScreen の iOS のテスト
+
+`Node.js` `コルドバ`ios をプルするをインストールする必要があります。.
+
+コルドバ ios をインストールします。
+
+ npm install
+
+
+現在のフォルダーに.
+
+# Xcode からテスト
+
+ 1. `CDVSplashScreenTest.xcworkspace`ファイルを起動します。
+ 2. スキーム] ドロップダウン メニューから"CDVSplashScreenLibTests"を選択します。
+ 3. クリックし、`再生`ボタンを押し、テストを実行する`レンチ`のアイコンを選択
+
+# コマンドラインからテスト
+
+ npm test
diff --git a/plugins/cordova-plugin-splashscreen/tests/ios/doc/ko/README.md b/plugins/cordova-plugin-splashscreen/tests/ios/doc/ko/README.md
new file mode 100644
index 00000000..6981207a
--- /dev/null
+++ b/plugins/cordova-plugin-splashscreen/tests/ios/doc/ko/README.md
@@ -0,0 +1,39 @@
+<!--
+# license: Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements. See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership. The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License. You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied. See the License for the
+# specific language governing permissions and limitations
+# under the License.
+-->
+
+# CDVSplashScreen에 대 한 iOS 테스트
+
+`Node.js` `코르도바` ios에서를 설치 해야.
+
+코르도바-ios를 설치 하는 첫번째는:
+
+ npm install
+
+
+현재 폴더에....
+
+# Xcode에서 테스트
+
+ 1. `CDVSplashScreenTest.xcworkspace` 파일을 시작 합니다.
+ 2. 구성표 드롭 다운 메뉴에서 "CDVSplashScreenLibTests"를 선택
+ 3. 클릭 하 고 `재생` 버튼에는 테스트를 실행 하려면 `공구 모양` 아이콘을 선택
+
+# 명령줄에서 테스트
+
+ npm test
diff --git a/plugins/cordova-plugin-splashscreen/tests/ios/doc/pl/README.md b/plugins/cordova-plugin-splashscreen/tests/ios/doc/pl/README.md
new file mode 100644
index 00000000..f13828fe
--- /dev/null
+++ b/plugins/cordova-plugin-splashscreen/tests/ios/doc/pl/README.md
@@ -0,0 +1,39 @@
+<!--
+# license: Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements. See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership. The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License. You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied. See the License for the
+# specific language governing permissions and limitations
+# under the License.
+-->
+
+# iOS testy dla CDVSplashScreen
+
+Musisz zainstalować `node.js` ciągnąć w `cordova-ios`.
+
+Najpierw zainstalować cordova-ios:
+
+ npm install
+
+
+... w folderze bieżącym.
+
+# Badania z Xcode
+
+ 1. Uruchom plik `CDVSplashScreenTest.xcworkspace` .
+ 2. Wybierz z menu rozwijanego systemu "CDVSplashScreenLibTests"
+ 3. Kliknij i przytrzymaj przycisk `Play` i wybrać ikonę `klucz` do testów
+
+# Badania z wiersza polecenia
+
+ npm test
diff --git a/plugins/cordova-plugin-splashscreen/tests/ios/doc/zh/README.md b/plugins/cordova-plugin-splashscreen/tests/ios/doc/zh/README.md
new file mode 100644
index 00000000..3a04bcd1
--- /dev/null
+++ b/plugins/cordova-plugin-splashscreen/tests/ios/doc/zh/README.md
@@ -0,0 +1,39 @@
+<!--
+# license: Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements. See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership. The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License. You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied. See the License for the
+# specific language governing permissions and limitations
+# under the License.
+-->
+
+# CDVSplashScreen 的 iOS 測試
+
+您需要安裝`node.js`拉`科爾多瓦 ios`中.
+
+第一次安裝科爾多瓦 ios:
+
+ npm install
+
+
+在當前資料夾中。
+
+# 從 Xcode 測試
+
+ 1. 啟動`CDVSplashScreenTest.xcworkspace`檔。
+ 2. 從方案下拉式功能表中選擇"CDVSplashScreenLibTests"
+ 3. 按一下並堅持`播放`按鈕,然後選擇要運行的測試的`扳手`圖示
+
+# 從命令列測試
+
+ npm test
diff --git a/plugins/cordova-plugin-splashscreen/tests/ios/package.json b/plugins/cordova-plugin-splashscreen/tests/ios/package.json
new file mode 100644
index 00000000..761436c5
--- /dev/null
+++ b/plugins/cordova-plugin-splashscreen/tests/ios/package.json
@@ -0,0 +1,13 @@
+{
+ "name": "cordova-plugin-splashscreen-test-ios",
+ "version": "1.0.0",
+ "description": "iOS Unit Tests for Splashscreen Plugin",
+ "author": "Apache Software Foundation",
+ "license": "Apache Version 2.0",
+ "dependencies": {
+ "cordova-ios": "^3.6.0"
+ },
+ "scripts": {
+ "test": "xcodebuild test -workspace CDVSplashScreenTest.xcworkspace -scheme CDVSplashScreenLibTests -destination 'platform=iOS Simulator,name=iPhone 5' CONFIGURATION_BUILD_DIR='/tmp'"
+ }
+}
diff --git a/plugins/cordova-plugin-splashscreen/tests/plugin.xml b/plugins/cordova-plugin-splashscreen/tests/plugin.xml
new file mode 100644
index 00000000..bf9cb0ac
--- /dev/null
+++ b/plugins/cordova-plugin-splashscreen/tests/plugin.xml
@@ -0,0 +1,29 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ Licensed to the Apache Software Foundation (ASF) under one
+ or more contributor license agreements. See the NOTICE file
+ distributed with this work for additional information
+ regarding copyright ownership. The ASF licenses this file
+ to you under the Apache License, Version 2.0 (the
+ "License"); you may not use this file except in compliance
+ with the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing,
+ software distributed under the License is distributed on an
+ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ KIND, either express or implied. See the License for the
+ specific language governing permissions and limitations
+ under the License.
+-->
+
+<plugin xmlns="http://apache.org/cordova/ns/plugins/1.0"
+ id="cordova-plugin-splashscreen-tests"
+ version="2.1.0">
+ <name>Cordova Splashscreen Plugin Tests</name>
+ <license>Apache 2.0</license>
+
+ <js-module src="tests.js" name="tests">
+ </js-module>
+</plugin>
diff --git a/plugins/cordova-plugin-splashscreen/tests/tests.js b/plugins/cordova-plugin-splashscreen/tests/tests.js
new file mode 100644
index 00000000..8c4d22b4
--- /dev/null
+++ b/plugins/cordova-plugin-splashscreen/tests/tests.js
@@ -0,0 +1,62 @@
+/*
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ *
+*/
+
+exports.defineAutoTest = function () {
+ describe('Splashscreen (cordova)', function () {
+ it("splashscreen.spec.1 should exist", function () {
+ expect(navigator.splashscreen).toBeDefined();
+ });
+
+ it("splashscreen.spec.2 exec method should exist", function () {
+ expect(navigator.splashscreen.show).toBeDefined();
+ expect(typeof navigator.splashscreen.show).toBe('function');
+ });
+
+ it("splashscreen.spec.3 exec method should exist", function () {
+ expect(navigator.splashscreen.hide).toBeDefined();
+ expect(typeof navigator.splashscreen.hide).toBe('function');
+ });
+ });
+};
+
+exports.defineManualTests = function (contentEl, createActionButton) {
+ function showFor(duration) {
+ navigator.splashscreen.show();
+ window.setTimeout(function () {
+ navigator.splashscreen.hide();
+ }, 1000 * duration);
+ }
+
+ contentEl.innerHTML = '<h1>Splashscreen Tests</h1>' +
+ '<h3>Note for WP: AutoHideSplashScreen must be set to false in config.xml</h3>' +
+ '<div id="show1"></div>' +
+ 'Expected result: Will show the Cordova splashscreen for 1 second' +
+ '</p> <div id="show5"></div>' +
+ 'Expected result: Will show the Cordova splashscreen for 5 seconds';
+
+ createActionButton('Show for 1 second', function () {
+ showFor(1);
+ }, 'show1');
+
+ createActionButton('Show for 5 seconds', function () {
+ showFor(5);
+ }, 'show5');
+};