http://git-wip-us.apache.org/repos/asf/cordova-osx/blob/2d3d604f/package.json ---------------------------------------------------------------------- diff --git a/package.json b/package.json index 2d7b7db..f373db2 100644 --- a/package.json +++ b/package.json @@ -13,8 +13,10 @@ "apache" ], "scripts": { - "test": "npm run jshint", - "jasmine": "jasmine-node --captureExceptions --color tests/spec", + "test": "npm run jshint && npm run jasmine", + "jasmine": "npm run objc-tests && npm run jasmine-tests", + "objc-tests": "jasmine-node --captureExceptions --color tests/spec/cordovalib.spec.js", + "jasmine-tests": "jasmine-node --captureExceptions --color tests/spec/create.spec.js", "jshint": "node node_modules/jshint/bin/jshint bin && node node_modules/jshint/bin/jshint tests" }, "author": "Apache Software Foundation",
http://git-wip-us.apache.org/repos/asf/cordova-osx/blob/2d3d604f/tests/.jshintrc ---------------------------------------------------------------------- diff --git a/tests/.jshintrc b/tests/.jshintrc new file mode 100644 index 0000000..17eae32 --- /dev/null +++ b/tests/.jshintrc @@ -0,0 +1,11 @@ +{ + "node": true + , "bitwise": true + , "undef": true + , "trailing": true + , "quotmark": true + , "indent": 4 + , "unused": "vars" + , "latedef": "nofunc" + , "jasmine": true +} http://git-wip-us.apache.org/repos/asf/cordova-osx/blob/2d3d604f/tests/CordovaLibTests/CDVBase64Tests.m ---------------------------------------------------------------------- diff --git a/tests/CordovaLibTests/CDVBase64Tests.m b/tests/CordovaLibTests/CDVBase64Tests.m new file mode 100644 index 0000000..0d44c2a --- /dev/null +++ b/tests/CordovaLibTests/CDVBase64Tests.m @@ -0,0 +1,64 @@ +/* + 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 <XCTest/XCTest.h> + +#import <Cordova/NSData+Base64.h> + +@interface CDVBase64Tests : XCTestCase +@end + +@implementation CDVBase64Tests + +- (void)setUp +{ + [super setUp]; + + // setup code here +} + +- (void)tearDown +{ + // Tear-down code here. + + [super tearDown]; +} + +- (void)testBase64Encode +{ + NSString* decodedString = @"abcdefghijklmnopqrstuvwxyz1234567890!@#$%^&"; + NSData* decodedData = [decodedString dataUsingEncoding:NSUTF8StringEncoding]; + + NSString* expectedEncodedString = @"YWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXoxMjM0NTY3ODkwIUAjJCVeJg=="; + NSString* actualEncodedString = [decodedData base64EncodedString]; + + XCTAssertTrue([expectedEncodedString isEqualToString:actualEncodedString]); +} + +- (void)testBase64Decode +{ + NSString* encodedString = @"YWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXoxMjM0NTY3ODkwIUAjJCVeJg=="; + NSString* decodedString = @"abcdefghijklmnopqrstuvwxyz1234567890!@#$%^&"; + NSData* encodedData = [decodedString dataUsingEncoding:NSUTF8StringEncoding]; + NSData* decodedData = [NSData dataFromBase64String:encodedString]; + + XCTAssertTrue([encodedData isEqualToData:decodedData]); +} + +@end http://git-wip-us.apache.org/repos/asf/cordova-osx/blob/2d3d604f/tests/CordovaLibTests/CDVStartPageTests.m ---------------------------------------------------------------------- diff --git a/tests/CordovaLibTests/CDVStartPageTests.m b/tests/CordovaLibTests/CDVStartPageTests.m new file mode 100644 index 0000000..1e0c7b1 --- /dev/null +++ b/tests/CordovaLibTests/CDVStartPageTests.m @@ -0,0 +1,60 @@ +/* + 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 <XCTest/XCTest.h> +#import <Cordova/CDVViewController.h> + +#import "CDVWebViewTest.h" + +@interface CDVStartPageTest : CDVWebViewTest +@end + +@implementation CDVStartPageTest + +- (void)setUp +{ + [super setUp]; +} + +- (void)tearDown +{ + [super tearDown]; +} + +- (void)testDefaultStartPage +{ + [self viewController]; + NSString* geHREF = @"window.location.href"; + NSString* href = [self.webView stringByEvaluatingJavaScriptFromString:geHREF]; + XCTAssertTrue([href hasSuffix:@"index.html"], @"href should point to index.html"); +} + + +// currently fails + +//- (void)testParametersInStartPage +//{ +// self.startPage = @"index.html?delta=true"; +// [self reloadWebView]; +// NSString* geHREF = @"window.location.href"; +// NSString* href = [self.webView stringByEvaluatingJavaScriptFromString:geHREF]; +// STAssertTrue([href hasSuffix:@"index.html?delta=true"], @"href should point to index.html?delta=true"); +//} + +@end http://git-wip-us.apache.org/repos/asf/cordova-osx/blob/2d3d604f/tests/CordovaLibTests/CDVWebViewTest.h ---------------------------------------------------------------------- diff --git a/tests/CordovaLibTests/CDVWebViewTest.h b/tests/CordovaLibTests/CDVWebViewTest.h new file mode 100644 index 0000000..3d03428 --- /dev/null +++ b/tests/CordovaLibTests/CDVWebViewTest.h @@ -0,0 +1,43 @@ +/* + 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 <XCTest/XCTest.h> +#import <WebKit/WebKit.h> + +@class AppDelegate; +@class CDVViewController; + +@interface CDVWebViewTest : XCTestCase + +@property (nonatomic, strong) NSString* startPage; + +- (AppDelegate*)appDelegate; +- (CDVViewController*)viewController; +- (WebView*)webView; + +// Returns the already registered plugin object for the given class. +- (id)pluginInstance:(NSString*)pluginName; +// Destroys the existing webview and creates a new one. +- (void)reloadWebView; +// Runs the run loop until the given block returns true, or until a timeout +// occurs. +- (void)waitForConditionName:(NSString*)conditionName block:(BOOL (^)())block; +// Convenience function for stringByEvaluatingJavaScriptFromString. +- (NSString*)evalJs:(NSString*)code; +@end http://git-wip-us.apache.org/repos/asf/cordova-osx/blob/2d3d604f/tests/CordovaLibTests/CDVWebViewTest.m ---------------------------------------------------------------------- diff --git a/tests/CordovaLibTests/CDVWebViewTest.m b/tests/CordovaLibTests/CDVWebViewTest.m new file mode 100644 index 0000000..9545853 --- /dev/null +++ b/tests/CordovaLibTests/CDVWebViewTest.m @@ -0,0 +1,120 @@ +/* + 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 "CDVWebViewTest.h" + +#import "AppDelegate.h" +#import "MainViewController.h" + +@interface CDVWebViewTest () +// Runs the run loop until the webview has finished loading. +- (void)waitForPageLoad; +@end + +@implementation CDVWebViewTest + +@synthesize startPage; + +- (void)setUp +{ + [super setUp]; +} + +- (void)tearDown +{ + // Enforce that the view controller is released between tests to ensure + // tests don't affect each other. +// [self.appDelegate destroyViewController]; + [super tearDown]; +} + +- (AppDelegate*)appDelegate +{ + return [[NSApplication sharedApplication] delegate]; +} + +- (CDVViewController*)viewController +{ + // Lazily create the view controller so that tests that do not require it + // are not slowed down by it. + if (self.appDelegate.viewController == nil) { + + [self.appDelegate createViewController: self.startPage]; + + // Things break if tearDown is called before the page has finished + // loading (a JS error happens and an alert pops up), so enforce a wait + // here. + [self waitForPageLoad]; + } + + XCTAssertNotNil(self.appDelegate.viewController, @"createViewController failed"); + return self.appDelegate.viewController; +} + +- (WebView*)webView +{ + return self.viewController.webView; +} + +- (id)pluginInstance:(NSString*)pluginName +{ + id ret = [self.viewController getCommandInstance:pluginName]; + + XCTAssertNotNil(ret, @"Missing plugin %@", pluginName); + return ret; +} + +- (void)reloadWebView +{ + [self.appDelegate destroyViewController]; + [self viewController]; +} + +- (void)waitForConditionName:(NSString*)conditionName block:(BOOL (^)())block +{ + // Number of seconds to wait for a condition to become true before giving up. + const NSTimeInterval kConditionTimeout = 5.0; + // Useful when debugging so that it does not timeout after one loop. + const int kMinIterations = 4; + + NSDate* startTime = [NSDate date]; + int i = 0; + + while (!block()) { + [[NSRunLoop currentRunLoop] runUntilDate:[NSDate dateWithTimeIntervalSinceNow:0.1]]; + NSTimeInterval elapsed = -[startTime timeIntervalSinceNow]; + XCTAssertTrue(i < kMinIterations || elapsed < kConditionTimeout, + @"Timed out waiting for condition %@", conditionName); + ++i; + } +} + +- (void)waitForPageLoad +{ + [self waitForConditionName:@"PageLoad" block:^{ + return [@"true" isEqualToString :[self evalJs:@"window.pageIsLoaded"]]; + }]; +} + +- (NSString*)evalJs:(NSString*)code +{ + return [self.webView stringByEvaluatingJavaScriptFromString:code]; +} + +@end http://git-wip-us.apache.org/repos/asf/cordova-osx/blob/2d3d604f/tests/CordovaLibTests/CordovaLibApp/AppDelegate.h ---------------------------------------------------------------------- diff --git a/tests/CordovaLibTests/CordovaLibApp/AppDelegate.h b/tests/CordovaLibTests/CordovaLibApp/AppDelegate.h new file mode 100644 index 0000000..8c5de48 --- /dev/null +++ b/tests/CordovaLibTests/CordovaLibApp/AppDelegate.h @@ -0,0 +1,33 @@ +/* + 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 <Cocoa/Cocoa.h> +#import <Cordova/CDVViewController.h> + +@interface AppDelegate : NSObject <NSApplicationDelegate> { + IBOutlet NSWindow* window; +} + +@property (nonatomic, strong) IBOutlet CDVViewController* viewController; +@property (nonatomic, strong) IBOutlet NSWindow* window; + +- (void)createViewController: (NSString*) startPage; +- (void)destroyViewController; + +@end http://git-wip-us.apache.org/repos/asf/cordova-osx/blob/2d3d604f/tests/CordovaLibTests/CordovaLibApp/AppDelegate.m ---------------------------------------------------------------------- diff --git a/tests/CordovaLibTests/CordovaLibApp/AppDelegate.m b/tests/CordovaLibTests/CordovaLibApp/AppDelegate.m new file mode 100644 index 0000000..d818e2b --- /dev/null +++ b/tests/CordovaLibTests/CordovaLibApp/AppDelegate.m @@ -0,0 +1,68 @@ +/* + 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 "AppDelegate.h" +#import "MainViewController.h" + +@implementation AppDelegate + + +@synthesize viewController; +@synthesize window; + +- (id)init{ + self = [super init]; + return self; +} + +- (void)createViewController: (NSString*) startPage { + NSAssert(!self.viewController, @"ViewController already created."); + if (startPage == nil) { + startPage = @"index.html"; + } + self.viewController = [[MainViewController alloc] initWithWindowNibName:@"MainViewController"]; + self.viewController.wwwFolderName = @"www"; + self.viewController.startPage = startPage; + [[self.viewController window] makeKeyAndOrderFront:self]; +} + +- (void)destroyViewController +{ + [self.viewController close]; + self.viewController = nil; +} + +- (void) applicationDidStartLaunching:(NSNotification*) aNotification { +} + +- (void) applicationWillFinishLaunching:(NSNotification*)aNotification{ +} + +- (void) applicationDidFinishLaunching:(NSNotification*)aNotification { + // Create the main view on start-up only when not running unit tests. + Class testProbeClass = NSClassFromString(@"XCTestProbe"); + if (!testProbeClass) { + testProbeClass = NSClassFromString(@"SenTestProbe"); + } + if (!testProbeClass) { + [self createViewController: nil]; + } +} + +@end http://git-wip-us.apache.org/repos/asf/cordova-osx/blob/2d3d604f/tests/CordovaLibTests/CordovaLibApp/CordovaLibApp-Info.plist ---------------------------------------------------------------------- diff --git a/tests/CordovaLibTests/CordovaLibApp/CordovaLibApp-Info.plist b/tests/CordovaLibTests/CordovaLibApp/CordovaLibApp-Info.plist new file mode 100644 index 0000000..703a91d --- /dev/null +++ b/tests/CordovaLibTests/CordovaLibApp/CordovaLibApp-Info.plist @@ -0,0 +1,32 @@ +<?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>CFBundleIconFile</key> + <string></string> + <key>CFBundleIdentifier</key> + <string>org.apache.cordova.osx.${PRODUCT_NAME:rfc1034identifier}</string> + <key>CFBundleInfoDictionaryVersion</key> + <string>6.0</string> + <key>CFBundleName</key> + <string>${PRODUCT_NAME}</string> + <key>CFBundlePackageType</key> + <string>APPL</string> + <key>CFBundleShortVersionString</key> + <string>1.0</string> + <key>CFBundleSignature</key> + <string>????</string> + <key>CFBundleVersion</key> + <string>1</string> + <key>LSMinimumSystemVersion</key> + <string>${MACOSX_DEPLOYMENT_TARGET}</string> + <key>NSHumanReadableCopyright</key> + <string>Copyright © 2014 ca.ca.ca. All rights reserved.</string> + <key>NSPrincipalClass</key> + <string>NSApplication</string> +</dict> +</plist> http://git-wip-us.apache.org/repos/asf/cordova-osx/blob/2d3d604f/tests/CordovaLibTests/CordovaLibApp/CordovaLibApp-Prefix.pch ---------------------------------------------------------------------- diff --git a/tests/CordovaLibTests/CordovaLibApp/CordovaLibApp-Prefix.pch b/tests/CordovaLibTests/CordovaLibApp/CordovaLibApp-Prefix.pch new file mode 100644 index 0000000..35d7640 --- /dev/null +++ b/tests/CordovaLibTests/CordovaLibApp/CordovaLibApp-Prefix.pch @@ -0,0 +1,9 @@ +// +// Prefix header +// +// The contents of this file are implicitly included at the beginning of every source file. +// + +#ifdef __OBJC__ + #import <Cocoa/Cocoa.h> +#endif http://git-wip-us.apache.org/repos/asf/cordova-osx/blob/2d3d604f/tests/CordovaLibTests/CordovaLibApp/MainViewController.h ---------------------------------------------------------------------- diff --git a/tests/CordovaLibTests/CordovaLibApp/MainViewController.h b/tests/CordovaLibTests/CordovaLibApp/MainViewController.h new file mode 100644 index 0000000..4d02eeb --- /dev/null +++ b/tests/CordovaLibTests/CordovaLibApp/MainViewController.h @@ -0,0 +1,32 @@ +/* + 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 <Cordova/CDVViewController.h> +#import <Cordova/CDVCommandDelegateImpl.h> +#import <Cordova/CDVCommandQueue.h> + +@interface MainViewController : CDVViewController + +@end + +@interface MainCommandDelegate : CDVCommandDelegateImpl +@end + +@interface MainCommandQueue : CDVCommandQueue +@end \ No newline at end of file http://git-wip-us.apache.org/repos/asf/cordova-osx/blob/2d3d604f/tests/CordovaLibTests/CordovaLibApp/MainViewController.m ---------------------------------------------------------------------- diff --git a/tests/CordovaLibTests/CordovaLibApp/MainViewController.m b/tests/CordovaLibTests/CordovaLibApp/MainViewController.m new file mode 100644 index 0000000..0e04f3f --- /dev/null +++ b/tests/CordovaLibTests/CordovaLibApp/MainViewController.m @@ -0,0 +1,114 @@ +/* + 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 "MainViewController.h" + +@interface MainViewController () + +@end + +@implementation MainViewController + +- (id)initWithWindow:(NSWindow *)window +{ + self = [super initWithWindow:window]; + if (self) { + // Initialization code here. + } + + return self; +} + +- (id)initWithWindowNibName:(NSString*)nibNameOrNil +{ + self = [super initWithWindowNibName:nibNameOrNil]; + if (self) { + // Uncomment to override the CDVCommandDelegateImpl used + // _commandDelegate = [[MainCommandDelegate alloc] initWithViewController:self]; + // Uncomment to override the CDVCommandQueue used + // _commandQueue = [[MainCommandQueue alloc] initWithViewController:self]; + } + return self; +} + + +- (id)init +{ + self = [super init]; + if (self) { + // Uncomment to override the CDVCommandDelegateImpl used + // _commandDelegate = [[MainCommandDelegate alloc] initWithViewController:self]; + // Uncomment to override the CDVCommandQueue used + // _commandQueue = [[MainCommandQueue alloc] initWithViewController:self]; + } + return self; +} + + +- (void)awakeFromNib +{ + [super awakeFromNib]; + + // Implement this method to handle any initialization after your window controller's window has been loaded from its nib file. +} + +@end + +@implementation MainCommandDelegate + +/* To override the methods, uncomment the line in the init function(s) + in MainViewController.m + */ + +#pragma mark CDVCommandDelegate implementation + +- (id)getCommandInstance:(NSString*)className +{ + return [super getCommandInstance:className]; +} + +/* + NOTE: this will only inspect execute calls coming explicitly from native plugins, + not the commandQueue (from JavaScript). To see execute calls from JavaScript, see + MainCommandQueue below + */ +- (BOOL)execute:(CDVInvokedUrlCommand*)command +{ + return [super execute:command]; +} + +- (NSString*)pathForResource:(NSString*)resourcepath; +{ + return [super pathForResource:resourcepath]; +} + +@end + +@implementation MainCommandQueue + +/* To override, uncomment the line in the init function(s) + in MainViewController.m + */ +- (BOOL)execute:(CDVInvokedUrlCommand*)command +{ + return [super execute:command]; +} + +@end + http://git-wip-us.apache.org/repos/asf/cordova-osx/blob/2d3d604f/tests/CordovaLibTests/CordovaLibApp/MainViewController.xib ---------------------------------------------------------------------- diff --git a/tests/CordovaLibTests/CordovaLibApp/MainViewController.xib b/tests/CordovaLibTests/CordovaLibApp/MainViewController.xib new file mode 100644 index 0000000..5917d6f --- /dev/null +++ b/tests/CordovaLibTests/CordovaLibApp/MainViewController.xib @@ -0,0 +1,162 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<document type="com.apple.InterfaceBuilder3.Cocoa.XIB" version="3.0" toolsVersion="9059" systemVersion="15B42" targetRuntime="MacOSX.Cocoa" propertyAccessControl="none" useAutolayout="YES"> + <dependencies> + <deployment version="1070" identifier="macosx"/> + <plugIn identifier="com.apple.InterfaceBuilder.CocoaPlugin" version="9059"/> + <plugIn identifier="com.apple.WebKitIBPlugin" version="9059"/> + </dependencies> + <objects> + <customObject id="-2" userLabel="File's Owner" customClass="MainViewController" colorLabel="IBBuiltInLabel-Green"> + <connections> + <outlet property="contentView" destination="536" id="cZC-kh-Jot"/> + <outlet property="webView" destination="536" id="LVj-7f-Xf7"/> + <outlet property="webViewDelegate" destination="739" id="M8v-KO-PAI"/> + <outlet property="window" destination="371" id="V9g-Wt-fly"/> + </connections> + </customObject> + <customObject id="-1" userLabel="First Responder" customClass="FirstResponder"/> + <customObject id="-3" userLabel="Application" customClass="NSObject"/> + <menu title="AMainMenu" systemMenu="main" id="29"> + <items> + <menuItem id="56"> + <menu key="submenu" systemMenu="apple" id="57"> + <items> + <menuItem title="About TestApp" id="58"> + <modifierMask key="keyEquivalentModifierMask"/> + </menuItem> + <menuItem isSeparatorItem="YES" id="236"> + <modifierMask key="keyEquivalentModifierMask" command="YES"/> + </menuItem> + <menuItem title="Preferencesâ¦" keyEquivalent="," id="129"/> + <menuItem isSeparatorItem="YES" id="143"> + <modifierMask key="keyEquivalentModifierMask" command="YES"/> + </menuItem> + <menuItem title="Services" id="131"> + <menu key="submenu" title="Services" systemMenu="services" id="130"/> + </menuItem> + <menuItem isSeparatorItem="YES" id="144"> + <modifierMask key="keyEquivalentModifierMask" command="YES"/> + </menuItem> + <menuItem title="Hide" keyEquivalent="h" id="134"> + <connections> + <action selector="hide:" target="-1" id="367"/> + </connections> + </menuItem> + <menuItem title="Hide Others" keyEquivalent="h" id="145"> + <modifierMask key="keyEquivalentModifierMask" option="YES" command="YES"/> + <connections> + <action selector="hideOtherApplications:" target="-1" id="368"/> + </connections> + </menuItem> + <menuItem title="Show All" id="150"> + <connections> + <action selector="unhideAllApplications:" target="-1" id="370"/> + </connections> + </menuItem> + <menuItem isSeparatorItem="YES" id="149"> + <modifierMask key="keyEquivalentModifierMask" command="YES"/> + </menuItem> + <menuItem title="Quit TestApp" keyEquivalent="q" id="136"/> + </items> + </menu> + </menuItem> + <menuItem title="File" id="83"/> + <menuItem title="Edit" id="217"/> + <menuItem title="Format" id="375"> + <modifierMask key="keyEquivalentModifierMask"/> + </menuItem> + <menuItem title="View" id="295"> + <menu key="submenu" title="View" id="296"> + <items> + <menuItem title="Enter Full Screen" keyEquivalent="f" id="afF-KY-ioe"> + <modifierMask key="keyEquivalentModifierMask" control="YES" command="YES"/> + <connections> + <action selector="toggleFullScreen:" target="-1" id="dWi-nX-EnS"/> + </connections> + </menuItem> + </items> + </menu> + </menuItem> + <menuItem title="Window" id="19"> + <menu key="submenu" title="Window" systemMenu="window" id="24"> + <items> + <menuItem title="Minimize" keyEquivalent="m" id="23"> + <connections> + <action selector="performMiniaturize:" target="-1" id="37"/> + </connections> + </menuItem> + <menuItem title="Zoom" id="239"> + <connections> + <action selector="performZoom:" target="-1" id="240"/> + </connections> + </menuItem> + <menuItem isSeparatorItem="YES" id="92"> + <modifierMask key="keyEquivalentModifierMask" command="YES"/> + </menuItem> + <menuItem title="Bring All to Front" id="5"> + <connections> + <action selector="arrangeInFront:" target="-1" id="39"/> + </connections> + </menuItem> + </items> + </menu> + </menuItem> + <menuItem title="Help" id="490"> + <modifierMask key="keyEquivalentModifierMask"/> + <menu key="submenu" title="Help" systemMenu="help" id="491"> + <items> + <menuItem title="TestApp Help" keyEquivalent="?" id="492"> + <connections> + <action selector="showHelp:" target="-1" id="493"/> + </connections> + </menuItem> + </items> + </menu> + </menuItem> + </items> + </menu> + <window title="TestApp" allowsToolTipsWhenApplicationIsInactive="NO" autorecalculatesKeyViewLoop="NO" releasedWhenClosed="NO" animationBehavior="default" id="371"> + <windowStyleMask key="styleMask" titled="YES" closable="YES" miniaturizable="YES" resizable="YES"/> + <windowCollectionBehavior key="collectionBehavior" fullScreenPrimary="YES"/> + <rect key="contentRect" x="335" y="299" width="640" height="480"/> + <rect key="screenRect" x="0.0" y="0.0" width="1920" height="1177"/> + <value key="minSize" type="size" width="640" height="480"/> + <view key="contentView" horizontalHuggingPriority="1000" verticalHuggingPriority="1000" horizontalCompressionResistancePriority="1" verticalCompressionResistancePriority="1" id="372" userLabel="Content View"> + <rect key="frame" x="0.0" y="0.0" width="640" height="480"/> + <autoresizingMask key="autoresizingMask"/> + <subviews> + <webView horizontalHuggingPriority="1" verticalHuggingPriority="1" horizontalCompressionResistancePriority="1" verticalCompressionResistancePriority="1" translatesAutoresizingMaskIntoConstraints="NO" id="536"> + <rect key="frame" x="0.0" y="0.0" width="640" height="480"/> + <animations/> + <webPreferences key="preferences" defaultFontSize="12" defaultFixedFontSize="12" plugInsEnabled="NO" javaEnabled="NO"> + <nil key="identifier"/> + </webPreferences> + <connections> + <outlet property="UIDelegate" destination="739" id="752"/> + <outlet property="frameLoadDelegate" destination="739" id="751"/> + <outlet property="policyDelegate" destination="739" id="749"/> + <outlet property="resourceLoadDelegate" destination="739" id="750"/> + </connections> + </webView> + </subviews> + <constraints> + <constraint firstItem="536" firstAttribute="trailing" secondItem="372" secondAttribute="trailing" id="719"/> + <constraint firstItem="536" firstAttribute="bottom" secondItem="372" secondAttribute="bottom" id="725"/> + <constraint firstItem="536" firstAttribute="leading" secondItem="372" secondAttribute="leading" id="726"/> + <constraint firstItem="536" firstAttribute="top" secondItem="372" secondAttribute="top" id="727"/> + </constraints> + <animations/> + </view> + <connections> + <outlet property="delegate" destination="-2" id="743"/> + </connections> + </window> + <customObject id="494" customClass="AppDelegate"> + <connections> + <outlet property="window" destination="371" id="748"/> + </connections> + </customObject> + <customObject id="420" customClass="NSFontManager"/> + <customObject id="739" customClass="CDVWebViewDelegate"/> + </objects> +</document> http://git-wip-us.apache.org/repos/asf/cordova-osx/blob/2d3d604f/tests/CordovaLibTests/CordovaLibApp/config.xml ---------------------------------------------------------------------- diff --git a/tests/CordovaLibTests/CordovaLibApp/config.xml b/tests/CordovaLibTests/CordovaLibApp/config.xml new file mode 100644 index 0000000..b39c7d5 --- /dev/null +++ b/tests/CordovaLibTests/CordovaLibApp/config.xml @@ -0,0 +1,29 @@ +<?xml version='1.0' encoding='utf-8'?> +<widget id="com.example.hello" version="0.0.1" xmlns="http://www.w3.org/ns/widgets" + xmlns:cdv="http://cordova.apache.org/ns/1.0"> + <preference name="AllowInlineMediaPlayback" value="false"/> + <preference name="AutoHideSplashScreen" value="true"/> + <preference name="BackupWebStorage" value="cloud"/> + <preference name="DisallowOverscroll" value="false"/> + <preference name="EnableViewportScale" value="false"/> + <preference name="FadeSplashScreen" value="true"/> + <preference name="FadeSplashScreenDuration" value=".25"/> + <preference name="KeyboardDisplayRequiresUserAction" value="true"/> + <preference name="MediaPlaybackRequiresUserAction" value="false"/> + <preference name="ShowSplashScreenSpinner" value="true"/> + <preference name="SuppressesIncrementalRendering" value="false"/> + <preference name="TopActivityIndicator" value="gray"/> + <preference name="GapBetweenPages" value="0"/> + <preference name="PageLength" value="0"/> + <preference name="PaginationBreakingMode" value="page"/> + <preference name="PaginationMode" value="unpaginated"/> + <name>TestApp</name> + <description> + A sample Apache Cordova application that responds to the deviceready event. + </description> + <author href="http://cordova.io" email="[email protected]"> + Apache Cordova Team + </author> + <content src="index.html"/> + <access origin="*"/> +</widget> http://git-wip-us.apache.org/repos/asf/cordova-osx/blob/2d3d604f/tests/CordovaLibTests/CordovaLibApp/en.lproj/Credits.rtf ---------------------------------------------------------------------- diff --git a/tests/CordovaLibTests/CordovaLibApp/en.lproj/Credits.rtf b/tests/CordovaLibTests/CordovaLibApp/en.lproj/Credits.rtf new file mode 100644 index 0000000..46576ef --- /dev/null +++ b/tests/CordovaLibTests/CordovaLibApp/en.lproj/Credits.rtf @@ -0,0 +1,29 @@ +{\rtf0\ansi{\fonttbl\f0\fswiss Helvetica;} +{\colortbl;\red255\green255\blue255;} +\paperw9840\paperh8400 +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\ql\qnatural + +\f0\b\fs24 \cf0 Engineering: +\b0 \ + Some people\ +\ + +\b Human Interface Design: +\b0 \ + Some other people\ +\ + +\b Testing: +\b0 \ + Hopefully not nobody\ +\ + +\b Documentation: +\b0 \ + Whoever\ +\ + +\b With special thanks to: +\b0 \ + Mom\ +} http://git-wip-us.apache.org/repos/asf/cordova-osx/blob/2d3d604f/tests/CordovaLibTests/CordovaLibApp/en.lproj/InfoPlist.strings ---------------------------------------------------------------------- diff --git a/tests/CordovaLibTests/CordovaLibApp/en.lproj/InfoPlist.strings b/tests/CordovaLibTests/CordovaLibApp/en.lproj/InfoPlist.strings new file mode 100644 index 0000000..477b28f --- /dev/null +++ b/tests/CordovaLibTests/CordovaLibApp/en.lproj/InfoPlist.strings @@ -0,0 +1,2 @@ +/* Localized versions of Info.plist keys */ + http://git-wip-us.apache.org/repos/asf/cordova-osx/blob/2d3d604f/tests/CordovaLibTests/CordovaLibApp/en.lproj/MainViewController.strings ---------------------------------------------------------------------- diff --git a/tests/CordovaLibTests/CordovaLibApp/en.lproj/MainViewController.strings b/tests/CordovaLibTests/CordovaLibApp/en.lproj/MainViewController.strings new file mode 100644 index 0000000..ec530ce --- /dev/null +++ b/tests/CordovaLibTests/CordovaLibApp/en.lproj/MainViewController.strings @@ -0,0 +1,390 @@ + +/* Class = "NSMenuItem"; title = "Customize Toolbarâ¦"; ObjectID = "1UK-8n-QPP"; */ +"1UK-8n-QPP.title" = "Customize Toolbarâ¦"; + +/* Class = "NSMenuItem"; title = "TestApp"; ObjectID = "1Xt-HY-uBw"; */ +"1Xt-HY-uBw.title" = "TestApp"; + +/* Class = "NSMenu"; title = "Find"; ObjectID = "1b7-l0-nxx"; */ +"1b7-l0-nxx.title" = "Find"; + +/* Class = "NSMenuItem"; title = "Lower"; ObjectID = "1tx-W0-xDw"; */ +"1tx-W0-xDw.title" = "Lower"; + +/* Class = "NSMenuItem"; title = "Raise"; ObjectID = "2h7-ER-AoG"; */ +"2h7-ER-AoG.title" = "Raise"; + +/* Class = "NSMenuItem"; title = "Transformations"; ObjectID = "2oI-Rn-ZJC"; */ +"2oI-Rn-ZJC.title" = "Transformations"; + +/* Class = "NSMenu"; title = "Spelling"; ObjectID = "3IN-sU-3Bg"; */ +"3IN-sU-3Bg.title" = "Spelling"; + +/* Class = "NSMenuItem"; title = "Use Default"; ObjectID = "3Om-Ey-2VK"; */ +"3Om-Ey-2VK.title" = "Use Default"; + +/* Class = "NSMenu"; title = "Speech"; ObjectID = "3rS-ZA-NoH"; */ +"3rS-ZA-NoH.title" = "Speech"; + +/* Class = "NSMenuItem"; title = "Tighten"; ObjectID = "46P-cB-AYj"; */ +"46P-cB-AYj.title" = "Tighten"; + +/* Class = "NSMenuItem"; title = "Find"; ObjectID = "4EN-yA-p0u"; */ +"4EN-yA-p0u.title" = "Find"; + +/* Class = "NSMenuItem"; title = "Quit TestApp"; ObjectID = "4sb-4s-VLi"; */ +"4sb-4s-VLi.title" = "Quit TestApp"; + +/* Class = "NSMenuItem"; title = "Edit"; ObjectID = "5QF-Oa-p0T"; */ +"5QF-Oa-p0T.title" = "Edit"; + +/* Class = "NSMenuItem"; title = "Copy Style"; ObjectID = "5Vv-lz-BsD"; */ +"5Vv-lz-BsD.title" = "Copy Style"; + +/* Class = "NSMenuItem"; title = "About TestApp"; ObjectID = "5kV-Vb-QxS"; */ +"5kV-Vb-QxS.title" = "About TestApp"; + +/* Class = "NSMenuItem"; title = "Redo"; ObjectID = "6dh-zS-Vam"; */ +"6dh-zS-Vam.title" = "Redo"; + +/* Class = "NSMenuItem"; title = "Correct Spelling Automatically"; ObjectID = "78Y-hA-62v"; */ +"78Y-hA-62v.title" = "Correct Spelling Automatically"; + +/* Class = "NSMenu"; title = "Writing Direction"; ObjectID = "8mr-sm-Yjd"; */ +"8mr-sm-Yjd.title" = "Writing Direction"; + +/* Class = "NSMenuItem"; title = "Substitutions"; ObjectID = "9ic-FL-obx"; */ +"9ic-FL-obx.title" = "Substitutions"; + +/* Class = "NSMenuItem"; title = "Smart Copy/Paste"; ObjectID = "9yt-4B-nSM"; */ +"9yt-4B-nSM.title" = "Smart Copy/Paste"; + +/* Class = "NSMenu"; title = "Main Menu"; ObjectID = "AYu-sK-qS6"; */ +"AYu-sK-qS6.title" = "Main Menu"; + +/* Class = "NSMenuItem"; title = "Preferencesâ¦"; ObjectID = "BOF-NM-1cW"; */ +"BOF-NM-1cW.title" = "Preferencesâ¦"; + +/* Class = "NSMenuItem"; title = "\tLeft to Right"; ObjectID = "BgM-ve-c93"; */ +"BgM-ve-c93.title" = "\tLeft to Right"; + +/* Class = "NSMenuItem"; title = "Save Asâ¦"; ObjectID = "Bw7-FT-i3A"; */ +"Bw7-FT-i3A.title" = "Save Asâ¦"; + +/* Class = "NSMenuItem"; title = "Close"; ObjectID = "DVo-aG-piG"; */ +"DVo-aG-piG.title" = "Close"; + +/* Class = "NSMenuItem"; title = "Spelling and Grammar"; ObjectID = "Dv1-io-Yv7"; */ +"Dv1-io-Yv7.title" = "Spelling and Grammar"; + +/* Class = "NSMenu"; title = "Help"; ObjectID = "F2S-fz-NVQ"; */ +"F2S-fz-NVQ.title" = "Help"; + +/* Class = "NSMenuItem"; title = "TestApp Help"; ObjectID = "FKE-Sm-Kum"; */ +"FKE-Sm-Kum.title" = "TestApp Help"; + +/* Class = "NSMenuItem"; title = "Text"; ObjectID = "Fal-I4-PZk"; */ +"Fal-I4-PZk.title" = "Text"; + +/* Class = "NSMenu"; title = "Substitutions"; ObjectID = "FeM-D8-WVr"; */ +"FeM-D8-WVr.title" = "Substitutions"; + +/* Class = "NSMenuItem"; title = "Bold"; ObjectID = "GB9-OM-e27"; */ +"GB9-OM-e27.title" = "Bold"; + +/* Class = "NSMenu"; title = "Format"; ObjectID = "GEO-Iw-cKr"; */ +"GEO-Iw-cKr.title" = "Format"; + +/* Class = "NSMenuItem"; title = "Use Default"; ObjectID = "GUa-eO-cwY"; */ +"GUa-eO-cwY.title" = "Use Default"; + +/* Class = "NSMenuItem"; title = "Font"; ObjectID = "Gi5-1S-RQB"; */ +"Gi5-1S-RQB.title" = "Font"; + +/* Class = "NSMenuItem"; title = "Writing Direction"; ObjectID = "H1b-Si-o9J"; */ +"H1b-Si-o9J.title" = "Writing Direction"; + +/* Class = "NSMenuItem"; title = "View"; ObjectID = "H8h-7b-M4v"; */ +"H8h-7b-M4v.title" = "View"; + +/* Class = "NSMenuItem"; title = "Text Replacement"; ObjectID = "HFQ-gK-NFA"; */ +"HFQ-gK-NFA.title" = "Text Replacement"; + +/* Class = "NSMenuItem"; title = "Show Spelling and Grammar"; ObjectID = "HFo-cy-zxI"; */ +"HFo-cy-zxI.title" = "Show Spelling and Grammar"; + +/* Class = "NSMenu"; title = "View"; ObjectID = "HyV-fh-RgO"; */ +"HyV-fh-RgO.title" = "View"; + +/* Class = "NSMenuItem"; title = "Subscript"; ObjectID = "I0S-gh-46l"; */ +"I0S-gh-46l.title" = "Subscript"; + +/* Class = "NSMenuItem"; title = "Openâ¦"; ObjectID = "IAo-SY-fd9"; */ +"IAo-SY-fd9.title" = "Openâ¦"; + +/* Class = "NSMenuItem"; title = "Justify"; ObjectID = "J5U-5w-g23"; */ +"J5U-5w-g23.title" = "Justify"; + +/* Class = "NSMenuItem"; title = "Use None"; ObjectID = "J7y-lM-qPV"; */ +"J7y-lM-qPV.title" = "Use None"; + +/* Class = "NSMenuItem"; title = "Revert to Saved"; ObjectID = "KaW-ft-85H"; */ +"KaW-ft-85H.title" = "Revert to Saved"; + +/* Class = "NSMenuItem"; title = "Show All"; ObjectID = "Kd2-mp-pUS"; */ +"Kd2-mp-pUS.title" = "Show All"; + +/* Class = "NSMenuItem"; title = "Bring All to Front"; ObjectID = "LE2-aR-0XJ"; */ +"LE2-aR-0XJ.title" = "Bring All to Front"; + +/* Class = "NSMenuItem"; title = "Paste Ruler"; ObjectID = "LVM-kO-fVI"; */ +"LVM-kO-fVI.title" = "Paste Ruler"; + +/* Class = "NSMenuItem"; title = "\tLeft to Right"; ObjectID = "Lbh-J2-qVU"; */ +"Lbh-J2-qVU.title" = "\tLeft to Right"; + +/* Class = "NSMenuItem"; title = "Copy Ruler"; ObjectID = "MkV-Pr-PK5"; */ +"MkV-Pr-PK5.title" = "Copy Ruler"; + +/* Class = "NSMenuItem"; title = "Services"; ObjectID = "NMo-om-nkz"; */ +"NMo-om-nkz.title" = "Services"; + +/* Class = "NSMenuItem"; title = "\tDefault"; ObjectID = "Nop-cj-93Q"; */ +"Nop-cj-93Q.title" = "\tDefault"; + +/* Class = "NSMenuItem"; title = "Minimize"; ObjectID = "OY7-WF-poV"; */ +"OY7-WF-poV.title" = "Minimize"; + +/* Class = "NSMenuItem"; title = "Baseline"; ObjectID = "OaQ-X3-Vso"; */ +"OaQ-X3-Vso.title" = "Baseline"; + +/* Class = "NSMenuItem"; title = "Hide TestApp"; ObjectID = "Olw-nP-bQN"; */ +"Olw-nP-bQN.title" = "Hide TestApp"; + +/* Class = "NSMenuItem"; title = "Find Previous"; ObjectID = "OwM-mh-QMV"; */ +"OwM-mh-QMV.title" = "Find Previous"; + +/* Class = "NSMenuItem"; title = "Stop Speaking"; ObjectID = "Oyz-dy-DGm"; */ +"Oyz-dy-DGm.title" = "Stop Speaking"; + +/* Class = "NSMenuItem"; title = "Bigger"; ObjectID = "Ptp-SP-VEL"; */ +"Ptp-SP-VEL.title" = "Bigger"; + +/* Class = "NSMenuItem"; title = "Show Fonts"; ObjectID = "Q5e-8K-NDq"; */ +"Q5e-8K-NDq.title" = "Show Fonts"; + +/* Class = "NSWindow"; title = "TestApp"; ObjectID = "QvC-M9-y7g"; */ +"QvC-M9-y7g.title" = "TestApp"; + +/* Class = "NSMenuItem"; title = "Zoom"; ObjectID = "R4o-n2-Eq4"; */ +"R4o-n2-Eq4.title" = "Zoom"; + +/* Class = "NSMenuItem"; title = "\tRight to Left"; ObjectID = "RB4-Sm-HuC"; */ +"RB4-Sm-HuC.title" = "\tRight to Left"; + +/* Class = "NSMenuItem"; title = "Superscript"; ObjectID = "Rqc-34-cIF"; */ +"Rqc-34-cIF.title" = "Superscript"; + +/* Class = "NSMenuItem"; title = "Select All"; ObjectID = "Ruw-6m-B2m"; */ +"Ruw-6m-B2m.title" = "Select All"; + +/* Class = "NSMenuItem"; title = "Jump to Selection"; ObjectID = "S0p-oC-mLd"; */ +"S0p-oC-mLd.title" = "Jump to Selection"; + +/* Class = "NSMenu"; title = "Window"; ObjectID = "Td7-aD-5lo"; */ +"Td7-aD-5lo.title" = "Window"; + +/* Class = "NSMenuItem"; title = "Capitalize"; ObjectID = "UEZ-Bs-lqG"; */ +"UEZ-Bs-lqG.title" = "Capitalize"; + +/* Class = "NSMenuItem"; title = "Center"; ObjectID = "VIY-Ag-zcb"; */ +"VIY-Ag-zcb.title" = "Center"; + +/* Class = "NSMenuItem"; title = "Hide Others"; ObjectID = "Vdr-fp-XzO"; */ +"Vdr-fp-XzO.title" = "Hide Others"; + +/* Class = "NSMenuItem"; title = "Italic"; ObjectID = "Vjx-xi-njq"; */ +"Vjx-xi-njq.title" = "Italic"; + +/* Class = "NSMenu"; title = "Edit"; ObjectID = "W48-6f-4Dl"; */ +"W48-6f-4Dl.title" = "Edit"; + +/* Class = "NSMenuItem"; title = "Underline"; ObjectID = "WRG-CD-K1S"; */ +"WRG-CD-K1S.title" = "Underline"; + +/* Class = "NSMenuItem"; title = "New"; ObjectID = "Was-JA-tGl"; */ +"Was-JA-tGl.title" = "New"; + +/* Class = "NSMenuItem"; title = "Paste and Match Style"; ObjectID = "WeT-3V-zwk"; */ +"WeT-3V-zwk.title" = "Paste and Match Style"; + +/* Class = "NSMenuItem"; title = "Findâ¦"; ObjectID = "Xz5-n4-O0W"; */ +"Xz5-n4-O0W.title" = "Findâ¦"; + +/* Class = "NSMenuItem"; title = "Find and Replaceâ¦"; ObjectID = "YEy-JH-Tfz"; */ +"YEy-JH-Tfz.title" = "Find and Replaceâ¦"; + +/* Class = "NSMenuItem"; title = "\tDefault"; ObjectID = "YGs-j5-SAR"; */ +"YGs-j5-SAR.title" = "\tDefault"; + +/* Class = "NSMenuItem"; title = "Start Speaking"; ObjectID = "Ynk-f8-cLZ"; */ +"Ynk-f8-cLZ.title" = "Start Speaking"; + +/* Class = "NSMenuItem"; title = "Align Left"; ObjectID = "ZM1-6Q-yy1"; */ +"ZM1-6Q-yy1.title" = "Align Left"; + +/* Class = "NSMenuItem"; title = "Paragraph"; ObjectID = "ZvO-Gk-QUH"; */ +"ZvO-Gk-QUH.title" = "Paragraph"; + +/* Class = "NSMenuItem"; title = "Printâ¦"; ObjectID = "aTl-1u-JFS"; */ +"aTl-1u-JFS.title" = "Printâ¦"; + +/* Class = "NSMenuItem"; title = "Window"; ObjectID = "aUF-d1-5bR"; */ +"aUF-d1-5bR.title" = "Window"; + +/* Class = "NSMenu"; title = "Font"; ObjectID = "aXa-aM-Jaq"; */ +"aXa-aM-Jaq.title" = "Font"; + +/* Class = "NSMenuItem"; title = "Use Default"; ObjectID = "agt-UL-0e3"; */ +"agt-UL-0e3.title" = "Use Default"; + +/* Class = "NSMenuItem"; title = "Show Colors"; ObjectID = "bgn-CT-cEk"; */ +"bgn-CT-cEk.title" = "Show Colors"; + +/* Class = "NSMenu"; title = "File"; ObjectID = "bib-Uj-vzu"; */ +"bib-Uj-vzu.title" = "File"; + +/* Class = "NSMenuItem"; title = "Use Selection for Find"; ObjectID = "buJ-ug-pKt"; */ +"buJ-ug-pKt.title" = "Use Selection for Find"; + +/* Class = "NSMenu"; title = "Transformations"; ObjectID = "c8a-y6-VQd"; */ +"c8a-y6-VQd.title" = "Transformations"; + +/* Class = "NSMenuItem"; title = "Use None"; ObjectID = "cDB-IK-hbR"; */ +"cDB-IK-hbR.title" = "Use None"; + +/* Class = "NSMenuItem"; title = "Selection"; ObjectID = "cqv-fj-IhA"; */ +"cqv-fj-IhA.title" = "Selection"; + +/* Class = "NSMenuItem"; title = "Smart Links"; ObjectID = "cwL-P1-jid"; */ +"cwL-P1-jid.title" = "Smart Links"; + +/* Class = "NSMenuItem"; title = "Make Lower Case"; ObjectID = "d9M-CD-aMd"; */ +"d9M-CD-aMd.title" = "Make Lower Case"; + +/* Class = "NSMenu"; title = "Text"; ObjectID = "d9c-me-L2H"; */ +"d9c-me-L2H.title" = "Text"; + +/* Class = "NSMenuItem"; title = "File"; ObjectID = "dMs-cI-mzQ"; */ +"dMs-cI-mzQ.title" = "File"; + +/* Class = "NSMenuItem"; title = "Undo"; ObjectID = "dRJ-4n-Yzg"; */ +"dRJ-4n-Yzg.title" = "Undo"; + +/* Class = "NSMenuItem"; title = "Paste"; ObjectID = "gVA-U4-sdL"; */ +"gVA-U4-sdL.title" = "Paste"; + +/* Class = "NSMenuItem"; title = "Smart Quotes"; ObjectID = "hQb-2v-fYv"; */ +"hQb-2v-fYv.title" = "Smart Quotes"; + +/* Class = "NSMenuItem"; title = "Check Document Now"; ObjectID = "hz2-CU-CR7"; */ +"hz2-CU-CR7.title" = "Check Document Now"; + +/* Class = "NSMenu"; title = "Services"; ObjectID = "hz9-B4-Xy5"; */ +"hz9-B4-Xy5.title" = "Services"; + +/* Class = "NSMenuItem"; title = "Smaller"; ObjectID = "i1d-Er-qST"; */ +"i1d-Er-qST.title" = "Smaller"; + +/* Class = "NSMenu"; title = "Baseline"; ObjectID = "ijk-EB-dga"; */ +"ijk-EB-dga.title" = "Baseline"; + +/* Class = "NSMenuItem"; title = "Kern"; ObjectID = "jBQ-r6-VK2"; */ +"jBQ-r6-VK2.title" = "Kern"; + +/* Class = "NSMenuItem"; title = "\tRight to Left"; ObjectID = "jFq-tB-4Kx"; */ +"jFq-tB-4Kx.title" = "\tRight to Left"; + +/* Class = "NSMenuItem"; title = "Format"; ObjectID = "jxT-CU-nIS"; */ +"jxT-CU-nIS.title" = "Format"; + +/* Class = "NSMenuItem"; title = "Check Grammar With Spelling"; ObjectID = "mK6-2p-4JG"; */ +"mK6-2p-4JG.title" = "Check Grammar With Spelling"; + +/* Class = "NSMenuItem"; title = "Ligatures"; ObjectID = "o6e-r0-MWq"; */ +"o6e-r0-MWq.title" = "Ligatures"; + +/* Class = "NSMenu"; title = "Open Recent"; ObjectID = "oas-Oc-fiZ"; */ +"oas-Oc-fiZ.title" = "Open Recent"; + +/* Class = "NSMenuItem"; title = "Loosen"; ObjectID = "ogc-rX-tC1"; */ +"ogc-rX-tC1.title" = "Loosen"; + +/* Class = "NSMenuItem"; title = "Delete"; ObjectID = "pa3-QI-u2k"; */ +"pa3-QI-u2k.title" = "Delete"; + +/* Class = "NSMenuItem"; title = "Saveâ¦"; ObjectID = "pxx-59-PXV"; */ +"pxx-59-PXV.title" = "Saveâ¦"; + +/* Class = "NSMenuItem"; title = "Find Next"; ObjectID = "q09-fT-Sye"; */ +"q09-fT-Sye.title" = "Find Next"; + +/* Class = "NSMenuItem"; title = "Page Setupâ¦"; ObjectID = "qIS-W8-SiK"; */ +"qIS-W8-SiK.title" = "Page Setupâ¦"; + +/* Class = "NSMenuItem"; title = "Check Spelling While Typing"; ObjectID = "rbD-Rh-wIN"; */ +"rbD-Rh-wIN.title" = "Check Spelling While Typing"; + +/* Class = "NSMenuItem"; title = "Smart Dashes"; ObjectID = "rgM-f4-ycn"; */ +"rgM-f4-ycn.title" = "Smart Dashes"; + +/* Class = "NSMenuItem"; title = "Show Toolbar"; ObjectID = "snW-S8-Cw5"; */ +"snW-S8-Cw5.title" = "Show Toolbar"; + +/* Class = "NSMenuItem"; title = "Data Detectors"; ObjectID = "tRr-pd-1PS"; */ +"tRr-pd-1PS.title" = "Data Detectors"; + +/* Class = "NSMenuItem"; title = "Open Recent"; ObjectID = "tXI-mr-wws"; */ +"tXI-mr-wws.title" = "Open Recent"; + +/* Class = "NSMenu"; title = "Kern"; ObjectID = "tlD-Oa-oAM"; */ +"tlD-Oa-oAM.title" = "Kern"; + +/* Class = "NSMenu"; title = "TestApp"; ObjectID = "uQy-DD-JDr"; */ +"uQy-DD-JDr.title" = "TestApp"; + +/* Class = "NSMenuItem"; title = "Cut"; ObjectID = "uRl-iY-unG"; */ +"uRl-iY-unG.title" = "Cut"; + +/* Class = "NSMenuItem"; title = "Paste Style"; ObjectID = "vKC-jM-MkH"; */ +"vKC-jM-MkH.title" = "Paste Style"; + +/* Class = "NSMenuItem"; title = "Show Ruler"; ObjectID = "vLm-3I-IUL"; */ +"vLm-3I-IUL.title" = "Show Ruler"; + +/* Class = "NSMenuItem"; title = "Clear Menu"; ObjectID = "vNY-rz-j42"; */ +"vNY-rz-j42.title" = "Clear Menu"; + +/* Class = "NSMenuItem"; title = "Make Upper Case"; ObjectID = "vmV-6d-7jI"; */ +"vmV-6d-7jI.title" = "Make Upper Case"; + +/* Class = "NSMenu"; title = "Ligatures"; ObjectID = "w0m-vy-SC9"; */ +"w0m-vy-SC9.title" = "Ligatures"; + +/* Class = "NSMenuItem"; title = "Align Right"; ObjectID = "wb2-vD-lq4"; */ +"wb2-vD-lq4.title" = "Align Right"; + +/* Class = "NSMenuItem"; title = "Help"; ObjectID = "wpr-3q-Mcd"; */ +"wpr-3q-Mcd.title" = "Help"; + +/* Class = "NSMenuItem"; title = "Copy"; ObjectID = "x3v-GG-iWU"; */ +"x3v-GG-iWU.title" = "Copy"; + +/* Class = "NSMenuItem"; title = "Use All"; ObjectID = "xQD-1f-W4t"; */ +"xQD-1f-W4t.title" = "Use All"; + +/* Class = "NSMenuItem"; title = "Speech"; ObjectID = "xrE-MZ-jX0"; */ +"xrE-MZ-jX0.title" = "Speech"; + +/* Class = "NSMenuItem"; title = "Show Substitutions"; ObjectID = "z6F-FW-3nz"; */ +"z6F-FW-3nz.title" = "Show Substitutions"; http://git-wip-us.apache.org/repos/asf/cordova-osx/blob/2d3d604f/tests/CordovaLibTests/CordovaLibApp/main.m ---------------------------------------------------------------------- diff --git a/tests/CordovaLibTests/CordovaLibApp/main.m b/tests/CordovaLibTests/CordovaLibApp/main.m new file mode 100644 index 0000000..4e0d8a0 --- /dev/null +++ b/tests/CordovaLibTests/CordovaLibApp/main.m @@ -0,0 +1,33 @@ +/* + 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 <Cocoa/Cocoa.h> +#import "AppDelegate.h" + +static AppDelegate* _appDelegate; + +int main(int argc, const char * argv[]) { + @autoreleasepool { + _appDelegate = [[AppDelegate alloc] init]; + [NSApplication sharedApplication]; + [NSApp setDelegate: _appDelegate]; + [NSApp finishLaunching]; + [NSApp run]; + } +} http://git-wip-us.apache.org/repos/asf/cordova-osx/blob/2d3d604f/tests/CordovaLibTests/CordovaLibApp/www/index.html ---------------------------------------------------------------------- diff --git a/tests/CordovaLibTests/CordovaLibApp/www/index.html b/tests/CordovaLibTests/CordovaLibApp/www/index.html new file mode 100644 index 0000000..715cc45 --- /dev/null +++ b/tests/CordovaLibTests/CordovaLibApp/www/index.html @@ -0,0 +1,84 @@ +<!DOCTYPE html> +<html> +<!-- +# +# 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. +# +--> +<head> + <title></title> + + <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no;"/> + <meta charset="utf-8"> + + + <!-- iPad/iPhone specific css below, add after your main css > + <link rel="stylesheet" media="only screen and (max-device-width: 1024px)" href="ipad.css" type="text/css" /> + <link rel="stylesheet" media="only screen and (max-device-width: 480px)" href="iphone.css" type="text/css" /> + --> + <!-- If your application is targeting iOS BEFORE 4.0 you MUST put json2.js from http://www.JSON.org/json2.js into your www directory and include it here --> + <script type="text/javascript" charset="utf-8" src="cordova.js"></script> + <script type="text/javascript"> + + + // If you want to prevent dragging, uncomment this section + /* + function preventBehavior(e) + { + e.preventDefault(); + }; + document.addEventListener("touchmove", preventBehavior, false); + */ + + /* If you are supporting your own protocol, the var invokeString will contain any arguments to the app launch. + see http://iphonedevelopertips.com/cocoa/launching-your-own-application-via-a-custom-url-scheme.html + for more details -jm */ + /* + function handleOpenURL(url) + { + // TODO: do something with the url passed in. + } + */ + + function onBodyLoad() { + document.addEventListener("deviceready", onDeviceReady, false); + } + + /* When this function is called, Cordova has been initialized and is ready to roll */ + /* If you are supporting your own protocol, the var invokeString will contain any arguments to the app launch. + see http://iphonedevelopertips.com/cocoa/launching-your-own-application-via-a-custom-url-scheme.html + for more details -jm */ + function onDeviceReady() { + // Used by unit tests to tell when the page is loaded. + window.pageIsLoaded = true; + // do your thing! + console.log("Cordova is working") + } + + </script> +</head> +<body onload="onBodyLoad()"> +<h1>Hey, it's Cordova!</h1> +<ol> + <li>Check your console log for any white-list rejection errors.</li> + <li>Add your allowed <strong>hosts</strong> in config.xml as access tags and set the origin attribute. (wildcards + OK, don't enter the URL scheme) + </li> +</ol> +</body> +</html> http://git-wip-us.apache.org/repos/asf/cordova-osx/blob/2d3d604f/tests/CordovaLibTests/CordovaLibTests-Info.plist ---------------------------------------------------------------------- diff --git a/tests/CordovaLibTests/CordovaLibTests-Info.plist b/tests/CordovaLibTests/CordovaLibTests-Info.plist new file mode 100644 index 0000000..b96525e --- /dev/null +++ b/tests/CordovaLibTests/CordovaLibTests-Info.plist @@ -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>org.apache.${PRODUCT_NAME:rfc1034identifier}</string> + <key>CFBundleInfoDictionaryVersion</key> + <string>6.0</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> http://git-wip-us.apache.org/repos/asf/cordova-osx/blob/2d3d604f/tests/CordovaLibTests/CordovaLibTests-Prefix.pch ---------------------------------------------------------------------- diff --git a/tests/CordovaLibTests/CordovaLibTests-Prefix.pch b/tests/CordovaLibTests/CordovaLibTests-Prefix.pch new file mode 100644 index 0000000..55b5f02 --- /dev/null +++ b/tests/CordovaLibTests/CordovaLibTests-Prefix.pch @@ -0,0 +1,15 @@ +// +// CordovaLibTests-Prefix.pch +// CordovaLibTests +// +// Created by Tobias Bocanegra on 4/30/14. +// Copyright (c) 2014 Apache Software Foundation. All rights reserved. +// + +#ifndef CordovaLibTests_CordovaLibTests_Prefix_pch +#define CordovaLibTests_CordovaLibTests_Prefix_pch + +// Include any system framework and library headers here that should be included in all compilation units. +// You will also need to set the Prefix Header build setting of one or more of your targets to reference this file. + +#endif http://git-wip-us.apache.org/repos/asf/cordova-osx/blob/2d3d604f/tests/CordovaLibTests/CordovaLibTests.xcodeproj/project.pbxproj ---------------------------------------------------------------------- diff --git a/tests/CordovaLibTests/CordovaLibTests.xcodeproj/project.pbxproj b/tests/CordovaLibTests/CordovaLibTests.xcodeproj/project.pbxproj new file mode 100644 index 0000000..9f162ff --- /dev/null +++ b/tests/CordovaLibTests/CordovaLibTests.xcodeproj/project.pbxproj @@ -0,0 +1,589 @@ +// !$*UTF8*$! +{ + archiveVersion = 1; + classes = { + }; + objectVersion = 46; + objects = { + +/* Begin PBXBuildFile section */ + 703D32551910D0B50087AC28 /* AppDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = 70DAA8FF1908E37C00AF3749 /* AppDelegate.m */; }; + 703D32561910D0BA0087AC28 /* MainViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 70DAA9281908E93500AF3749 /* MainViewController.m */; }; + 703D32571910D0C00087AC28 /* MainViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = 70DAA91E1908E7CC00AF3749 /* MainViewController.xib */; }; + 703D32581910D0C30087AC28 /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = 70DAA8F81908E37C00AF3749 /* main.m */; }; + 706B59191BE5D8FD00BB45B5 /* libCordova.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 706B59181BE5D7C800BB45B5 /* libCordova.a */; }; + 706B59221BE5DF6C00BB45B5 /* QuartzCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 706B59211BE5DF6C00BB45B5 /* QuartzCore.framework */; }; + 70718D80190A4201002ADC5F /* CDVBase64Tests.m in Sources */ = {isa = PBXBuildFile; fileRef = 70718D7F190A4201002ADC5F /* CDVBase64Tests.m */; }; + 70BD675918FF9DAE00A1EFCF /* InfoPlist.strings in Resources */ = {isa = PBXBuildFile; fileRef = 70BD675718FF9DAE00A1EFCF /* InfoPlist.strings */; }; + 70DAA8E71908E05900AF3749 /* CDVStartPageTests.m in Sources */ = {isa = PBXBuildFile; fileRef = 70DAA8E61908E05900AF3749 /* CDVStartPageTests.m */; }; + 70DAA8EA1908E07E00AF3749 /* CDVWebViewTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 70DAA8E91908E07E00AF3749 /* CDVWebViewTest.m */; }; + 70DAA8F11908E37C00AF3749 /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 70BD673D18FF9DAE00A1EFCF /* Cocoa.framework */; }; + 70DAA8F71908E37C00AF3749 /* InfoPlist.strings in Resources */ = {isa = PBXBuildFile; fileRef = 70DAA8F51908E37C00AF3749 /* InfoPlist.strings */; }; + 70DAA8FD1908E37C00AF3749 /* Credits.rtf in Resources */ = {isa = PBXBuildFile; fileRef = 70DAA8FB1908E37C00AF3749 /* Credits.rtf */; }; + 70DAA9221908E80C00AF3749 /* www in Resources */ = {isa = PBXBuildFile; fileRef = 70DAA9201908E80C00AF3749 /* www */; }; + 70DAA9231908E80C00AF3749 /* config.xml in Resources */ = {isa = PBXBuildFile; fileRef = 70DAA9211908E80C00AF3749 /* config.xml */; }; + 70DAA9251908E82600AF3749 /* WebKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 70DAA9241908E82600AF3749 /* WebKit.framework */; }; +/* End PBXBuildFile section */ + +/* Begin PBXContainerItemProxy section */ + 703D32631910DA6D0087AC28 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 70BD673218FF9DAE00A1EFCF /* Project object */; + proxyType = 1; + remoteGlobalIDString = 70DAA8EF1908E37C00AF3749; + remoteInfo = TestApp; + }; + 706B59171BE5D7C800BB45B5 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 706B59131BE5D7C800BB45B5 /* CordovaLib.xcodeproj */; + proxyType = 2; + remoteGlobalIDString = 70BD673A18FF9DAE00A1EFCF; + remoteInfo = Cordova; + }; +/* End PBXContainerItemProxy section */ + +/* Begin PBXFileReference section */ + 703D32601910D7920087AC28 /* CordovaLibTests-Prefix.pch */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "CordovaLibTests-Prefix.pch"; sourceTree = "<group>"; }; + 706B59131BE5D7C800BB45B5 /* CordovaLib.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = CordovaLib.xcodeproj; path = ../../CordovaLib/CordovaLib.xcodeproj; sourceTree = "<group>"; }; + 706B59211BE5DF6C00BB45B5 /* QuartzCore.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = QuartzCore.framework; path = System/Library/Frameworks/QuartzCore.framework; sourceTree = SDKROOT; }; + 70718D7F190A4201002ADC5F /* CDVBase64Tests.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = CDVBase64Tests.m; sourceTree = "<group>"; }; + 70BD673D18FF9DAE00A1EFCF /* Cocoa.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Cocoa.framework; path = System/Library/Frameworks/Cocoa.framework; sourceTree = SDKROOT; }; + 70BD674018FF9DAE00A1EFCF /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = System/Library/Frameworks/Foundation.framework; sourceTree = SDKROOT; }; + 70BD674118FF9DAE00A1EFCF /* CoreData.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreData.framework; path = System/Library/Frameworks/CoreData.framework; sourceTree = SDKROOT; }; + 70BD674218FF9DAE00A1EFCF /* AppKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AppKit.framework; path = System/Library/Frameworks/AppKit.framework; sourceTree = SDKROOT; }; + 70BD674D18FF9DAE00A1EFCF /* CordovaLibTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = CordovaLibTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; }; + 70BD675618FF9DAE00A1EFCF /* CordovaLibTests-Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = "CordovaLibTests-Info.plist"; sourceTree = "<group>"; }; + 70BD675818FF9DAE00A1EFCF /* en */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = en; path = en.lproj/InfoPlist.strings; sourceTree = "<group>"; }; + 70DAA8E61908E05900AF3749 /* CDVStartPageTests.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = CDVStartPageTests.m; sourceTree = "<group>"; }; + 70DAA8E81908E07E00AF3749 /* CDVWebViewTest.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CDVWebViewTest.h; sourceTree = "<group>"; }; + 70DAA8E91908E07E00AF3749 /* CDVWebViewTest.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = CDVWebViewTest.m; sourceTree = "<group>"; }; + 70DAA8F01908E37C00AF3749 /* CordovaLibApp.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = CordovaLibApp.app; sourceTree = BUILT_PRODUCTS_DIR; }; + 70DAA8F41908E37C00AF3749 /* CordovaLibApp-Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = "CordovaLibApp-Info.plist"; sourceTree = "<group>"; }; + 70DAA8F61908E37C00AF3749 /* en */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = en; path = en.lproj/InfoPlist.strings; sourceTree = "<group>"; }; + 70DAA8F81908E37C00AF3749 /* main.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = main.m; sourceTree = "<group>"; }; + 70DAA8FA1908E37C00AF3749 /* CordovaLibApp-Prefix.pch */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "CordovaLibApp-Prefix.pch"; path = "CordovaLibApp/CordovaLibApp-Prefix.pch"; sourceTree = SOURCE_ROOT; }; + 70DAA8FC1908E37C00AF3749 /* en */ = {isa = PBXFileReference; lastKnownFileType = text.rtf; name = en; path = en.lproj/Credits.rtf; sourceTree = "<group>"; }; + 70DAA8FE1908E37C00AF3749 /* AppDelegate.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = AppDelegate.h; sourceTree = "<group>"; }; + 70DAA8FF1908E37C00AF3749 /* AppDelegate.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = AppDelegate.m; sourceTree = "<group>"; }; + 70DAA91E1908E7CC00AF3749 /* MainViewController.xib */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.xib; path = MainViewController.xib; sourceTree = "<group>"; }; + 70DAA9201908E80C00AF3749 /* www */ = {isa = PBXFileReference; lastKnownFileType = folder; path = www; sourceTree = "<group>"; }; + 70DAA9211908E80C00AF3749 /* config.xml */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xml; path = config.xml; sourceTree = "<group>"; }; + 70DAA9241908E82600AF3749 /* WebKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = WebKit.framework; path = System/Library/Frameworks/WebKit.framework; sourceTree = SDKROOT; }; + 70DAA9271908E93500AF3749 /* MainViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MainViewController.h; sourceTree = "<group>"; }; + 70DAA9281908E93500AF3749 /* MainViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = MainViewController.m; sourceTree = "<group>"; }; +/* End PBXFileReference section */ + +/* Begin PBXFrameworksBuildPhase section */ + 70BD674A18FF9DAE00A1EFCF /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 70DAA8ED1908E37C00AF3749 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + 706B59191BE5D8FD00BB45B5 /* libCordova.a in Frameworks */, + 70DAA9251908E82600AF3749 /* WebKit.framework in Frameworks */, + 70DAA8F11908E37C00AF3749 /* Cocoa.framework in Frameworks */, + 706B59221BE5DF6C00BB45B5 /* QuartzCore.framework in Frameworks */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXFrameworksBuildPhase section */ + +/* Begin PBXGroup section */ + 706B59141BE5D7C800BB45B5 /* Products */ = { + isa = PBXGroup; + children = ( + 706B59181BE5D7C800BB45B5 /* libCordova.a */, + ); + name = Products; + sourceTree = "<group>"; + }; + 70BD673118FF9DAE00A1EFCF = { + isa = PBXGroup; + children = ( + 70DAA8F21908E37C00AF3749 /* CordovaLibApp */, + 70BD675418FF9DAE00A1EFCF /* CordovaLibTests */, + 70BD673C18FF9DAE00A1EFCF /* Frameworks */, + 70BD673B18FF9DAE00A1EFCF /* Products */, + ); + sourceTree = "<group>"; + }; + 70BD673B18FF9DAE00A1EFCF /* Products */ = { + isa = PBXGroup; + children = ( + 70BD674D18FF9DAE00A1EFCF /* CordovaLibTests.xctest */, + 70DAA8F01908E37C00AF3749 /* CordovaLibApp.app */, + ); + name = Products; + sourceTree = "<group>"; + }; + 70BD673C18FF9DAE00A1EFCF /* Frameworks */ = { + isa = PBXGroup; + children = ( + 706B59131BE5D7C800BB45B5 /* CordovaLib.xcodeproj */, + 706B59211BE5DF6C00BB45B5 /* QuartzCore.framework */, + 70DAA9241908E82600AF3749 /* WebKit.framework */, + 70BD673D18FF9DAE00A1EFCF /* Cocoa.framework */, + 70BD673F18FF9DAE00A1EFCF /* Other Frameworks */, + ); + name = Frameworks; + sourceTree = "<group>"; + }; + 70BD673F18FF9DAE00A1EFCF /* Other Frameworks */ = { + isa = PBXGroup; + children = ( + 70BD674018FF9DAE00A1EFCF /* Foundation.framework */, + 70BD674118FF9DAE00A1EFCF /* CoreData.framework */, + 70BD674218FF9DAE00A1EFCF /* AppKit.framework */, + ); + name = "Other Frameworks"; + sourceTree = "<group>"; + }; + 70BD675418FF9DAE00A1EFCF /* CordovaLibTests */ = { + isa = PBXGroup; + children = ( + 70DAA8E81908E07E00AF3749 /* CDVWebViewTest.h */, + 70DAA8E91908E07E00AF3749 /* CDVWebViewTest.m */, + 70718D7F190A4201002ADC5F /* CDVBase64Tests.m */, + 70DAA8E61908E05900AF3749 /* CDVStartPageTests.m */, + 70BD675518FF9DAE00A1EFCF /* Supporting Files */, + ); + name = CordovaLibTests; + sourceTree = "<group>"; + }; + 70BD675518FF9DAE00A1EFCF /* Supporting Files */ = { + isa = PBXGroup; + children = ( + 70BD675618FF9DAE00A1EFCF /* CordovaLibTests-Info.plist */, + 703D32601910D7920087AC28 /* CordovaLibTests-Prefix.pch */, + 70BD675718FF9DAE00A1EFCF /* InfoPlist.strings */, + ); + name = "Supporting Files"; + sourceTree = "<group>"; + }; + 70DAA8F21908E37C00AF3749 /* CordovaLibApp */ = { + isa = PBXGroup; + children = ( + 70DAA9211908E80C00AF3749 /* config.xml */, + 70DAA9201908E80C00AF3749 /* www */, + 70DAA92A1908E99700AF3749 /* Classes */, + 70DAA92B1908E9B400AF3749 /* Supporting Files */, + ); + path = CordovaLibApp; + sourceTree = "<group>"; + }; + 70DAA92A1908E99700AF3749 /* Classes */ = { + isa = PBXGroup; + children = ( + 70DAA8FE1908E37C00AF3749 /* AppDelegate.h */, + 70DAA8FF1908E37C00AF3749 /* AppDelegate.m */, + 70DAA9271908E93500AF3749 /* MainViewController.h */, + 70DAA9281908E93500AF3749 /* MainViewController.m */, + ); + name = Classes; + sourceTree = "<group>"; + }; + 70DAA92B1908E9B400AF3749 /* Supporting Files */ = { + isa = PBXGroup; + children = ( + 70DAA91E1908E7CC00AF3749 /* MainViewController.xib */, + 70DAA8F41908E37C00AF3749 /* CordovaLibApp-Info.plist */, + 70DAA8FA1908E37C00AF3749 /* CordovaLibApp-Prefix.pch */, + 70DAA8F51908E37C00AF3749 /* InfoPlist.strings */, + 70DAA8F81908E37C00AF3749 /* main.m */, + 70DAA8FB1908E37C00AF3749 /* Credits.rtf */, + ); + name = "Supporting Files"; + sourceTree = "<group>"; + }; +/* End PBXGroup section */ + +/* Begin PBXNativeTarget section */ + 70BD674C18FF9DAE00A1EFCF /* CordovaLibTests */ = { + isa = PBXNativeTarget; + buildConfigurationList = 70BD676118FF9DAE00A1EFCF /* Build configuration list for PBXNativeTarget "CordovaLibTests" */; + buildPhases = ( + 70BD674918FF9DAE00A1EFCF /* Sources */, + 70BD674A18FF9DAE00A1EFCF /* Frameworks */, + 70BD674B18FF9DAE00A1EFCF /* Resources */, + ); + buildRules = ( + ); + dependencies = ( + 703D32641910DA6D0087AC28 /* PBXTargetDependency */, + ); + name = CordovaLibTests; + productName = CordovaLibTests; + productReference = 70BD674D18FF9DAE00A1EFCF /* CordovaLibTests.xctest */; + productType = "com.apple.product-type.bundle.unit-test"; + }; + 70DAA8EF1908E37C00AF3749 /* CordovaLibApp */ = { + isa = PBXNativeTarget; + buildConfigurationList = 70DAA9171908E37C00AF3749 /* Build configuration list for PBXNativeTarget "CordovaLibApp" */; + buildPhases = ( + 70DAA8EC1908E37C00AF3749 /* Sources */, + 70DAA8ED1908E37C00AF3749 /* Frameworks */, + 70DAA8EE1908E37C00AF3749 /* Resources */, + 70718D7E190A3F96002ADC5F /* Copy cordova.js to www direcrtory */, + ); + buildRules = ( + ); + dependencies = ( + ); + name = CordovaLibApp; + productName = TestApp; + productReference = 70DAA8F01908E37C00AF3749 /* CordovaLibApp.app */; + productType = "com.apple.product-type.application"; + }; +/* End PBXNativeTarget section */ + +/* Begin PBXProject section */ + 70BD673218FF9DAE00A1EFCF /* Project object */ = { + isa = PBXProject; + attributes = { + LastUpgradeCheck = 0510; + ORGANIZATIONNAME = "Apache Software Foundation"; + TargetAttributes = { + 70BD674C18FF9DAE00A1EFCF = { + TestTargetID = 70DAA8EF1908E37C00AF3749; + }; + }; + }; + buildConfigurationList = 70BD673518FF9DAE00A1EFCF /* Build configuration list for PBXProject "CordovaLibTests" */; + compatibilityVersion = "Xcode 3.2"; + developmentRegion = English; + hasScannedForEncodings = 0; + knownRegions = ( + en, + Base, + ); + mainGroup = 70BD673118FF9DAE00A1EFCF; + productRefGroup = 70BD673B18FF9DAE00A1EFCF /* Products */; + projectDirPath = ""; + projectReferences = ( + { + ProductGroup = 706B59141BE5D7C800BB45B5 /* Products */; + ProjectRef = 706B59131BE5D7C800BB45B5 /* CordovaLib.xcodeproj */; + }, + ); + projectRoot = ""; + targets = ( + 70BD674C18FF9DAE00A1EFCF /* CordovaLibTests */, + 70DAA8EF1908E37C00AF3749 /* CordovaLibApp */, + ); + }; +/* End PBXProject section */ + +/* Begin PBXReferenceProxy section */ + 706B59181BE5D7C800BB45B5 /* libCordova.a */ = { + isa = PBXReferenceProxy; + fileType = archive.ar; + path = libCordova.a; + remoteRef = 706B59171BE5D7C800BB45B5 /* PBXContainerItemProxy */; + sourceTree = BUILT_PRODUCTS_DIR; + }; +/* End PBXReferenceProxy section */ + +/* Begin PBXResourcesBuildPhase section */ + 70BD674B18FF9DAE00A1EFCF /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 70BD675918FF9DAE00A1EFCF /* InfoPlist.strings in Resources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 70DAA8EE1908E37C00AF3749 /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 70DAA9221908E80C00AF3749 /* www in Resources */, + 70DAA8F71908E37C00AF3749 /* InfoPlist.strings in Resources */, + 703D32571910D0C00087AC28 /* MainViewController.xib in Resources */, + 70DAA8FD1908E37C00AF3749 /* Credits.rtf in Resources */, + 70DAA9231908E80C00AF3749 /* config.xml in Resources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXResourcesBuildPhase section */ + +/* Begin PBXShellScriptBuildPhase section */ + 70718D7E190A3F96002ADC5F /* Copy cordova.js to www direcrtory */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + inputPaths = ( + ); + name = "Copy cordova.js to www direcrtory"; + outputPaths = ( + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "cp ../../CordovaLib/cordova.js \"$BUILT_PRODUCTS_DIR/$FULL_PRODUCT_NAME/Contents/Resources/www/cordova.js\""; + showEnvVarsInLog = 0; + }; +/* End PBXShellScriptBuildPhase section */ + +/* Begin PBXSourcesBuildPhase section */ + 70BD674918FF9DAE00A1EFCF /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 70DAA8EA1908E07E00AF3749 /* CDVWebViewTest.m in Sources */, + 70718D80190A4201002ADC5F /* CDVBase64Tests.m in Sources */, + 70DAA8E71908E05900AF3749 /* CDVStartPageTests.m in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 70DAA8EC1908E37C00AF3749 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 703D32561910D0BA0087AC28 /* MainViewController.m in Sources */, + 703D32581910D0C30087AC28 /* main.m in Sources */, + 703D32551910D0B50087AC28 /* AppDelegate.m in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXSourcesBuildPhase section */ + +/* Begin PBXTargetDependency section */ + 703D32641910DA6D0087AC28 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = 70DAA8EF1908E37C00AF3749 /* CordovaLibApp */; + targetProxy = 703D32631910DA6D0087AC28 /* PBXContainerItemProxy */; + }; +/* End PBXTargetDependency section */ + +/* Begin PBXVariantGroup section */ + 70BD675718FF9DAE00A1EFCF /* InfoPlist.strings */ = { + isa = PBXVariantGroup; + children = ( + 70BD675818FF9DAE00A1EFCF /* en */, + ); + name = InfoPlist.strings; + sourceTree = "<group>"; + }; + 70DAA8F51908E37C00AF3749 /* InfoPlist.strings */ = { + isa = PBXVariantGroup; + children = ( + 70DAA8F61908E37C00AF3749 /* en */, + ); + name = InfoPlist.strings; + sourceTree = "<group>"; + }; + 70DAA8FB1908E37C00AF3749 /* Credits.rtf */ = { + isa = PBXVariantGroup; + children = ( + 70DAA8FC1908E37C00AF3749 /* en */, + ); + name = Credits.rtf; + sourceTree = "<group>"; + }; +/* End PBXVariantGroup section */ + +/* Begin XCBuildConfiguration section */ + 70BD675C18FF9DAE00A1EFCF /* 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__DUPLICATE_METHOD_MATCH = YES; + COPY_PHASE_STRIP = NO; + GCC_C_LANGUAGE_STANDARD = gnu99; + GCC_DYNAMIC_NO_PIC = NO; + GCC_ENABLE_OBJC_EXCEPTIONS = YES; + 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; + MACOSX_DEPLOYMENT_TARGET = 10.8; + ONLY_ACTIVE_ARCH = YES; + PRODUCT_NAME = CordovaLibApp; + PUBLIC_HEADERS_FOLDER_PATH = include/Cordova; + SDKROOT = macosx; + }; + name = Debug; + }; + 70BD675D18FF9DAE00A1EFCF /* 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__DUPLICATE_METHOD_MATCH = YES; + COPY_PHASE_STRIP = YES; + DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; + ENABLE_NS_ASSERTIONS = NO; + GCC_C_LANGUAGE_STANDARD = gnu99; + GCC_ENABLE_OBJC_EXCEPTIONS = YES; + 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; + MACOSX_DEPLOYMENT_TARGET = 10.8; + PRODUCT_NAME = CordovaLibApp; + PUBLIC_HEADERS_FOLDER_PATH = include/Cordova; + SDKROOT = macosx; + }; + name = Release; + }; + 70BD676218FF9DAE00A1EFCF /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + BUNDLE_LOADER = "$(TEST_HOST)"; + COMBINE_HIDPI_IMAGES = YES; + FRAMEWORK_SEARCH_PATHS = ( + "$(DEVELOPER_FRAMEWORKS_DIR)", + "$(inherited)", + ); + GCC_PRECOMPILE_PREFIX_HEADER = YES; + GCC_PREFIX_HEADER = "CordovaLibTests-Prefix.pch"; + GCC_PREPROCESSOR_DEFINITIONS = ( + "DEBUG=1", + "$(inherited)", + ); + INFOPLIST_FILE = "CordovaLibTests-Info.plist"; + OTHER_LDFLAGS = ( + "-all_load", + "-ObjC", + ); + PRODUCT_NAME = "$(TARGET_NAME)"; + TEST_HOST = "$(BUILT_PRODUCTS_DIR)/CordovaLibApp.app/Contents/MacOS/CordovaLibApp"; + USER_HEADER_SEARCH_PATHS = ""; + }; + name = Debug; + }; + 70BD676318FF9DAE00A1EFCF /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + BUNDLE_LOADER = "$(TEST_HOST)"; + COMBINE_HIDPI_IMAGES = YES; + FRAMEWORK_SEARCH_PATHS = ( + "$(DEVELOPER_FRAMEWORKS_DIR)", + "$(inherited)", + ); + GCC_PRECOMPILE_PREFIX_HEADER = YES; + GCC_PREFIX_HEADER = "CordovaLibTests-Prefix.pch"; + INFOPLIST_FILE = "CordovaLibTests-Info.plist"; + OTHER_LDFLAGS = ( + "-all_load", + "-ObjC", + ); + PRODUCT_NAME = "$(TARGET_NAME)"; + TEST_HOST = "$(BUILT_PRODUCTS_DIR)/CordovaLibApp.app/Contents/MacOS/CordovaLibApp"; + USER_HEADER_SEARCH_PATHS = ""; + }; + name = Release; + }; + 70DAA9181908E37C00AF3749 /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + COMBINE_HIDPI_IMAGES = YES; + FRAMEWORK_SEARCH_PATHS = ( + "$(inherited)", + "$(DEVELOPER_FRAMEWORKS_DIR)", + ); + GCC_PRECOMPILE_PREFIX_HEADER = YES; + GCC_PREFIX_HEADER = "CordovaLibApp/CordovaLibApp-Prefix.pch"; + GCC_PREPROCESSOR_DEFINITIONS = ( + "DEBUG=1", + "$(inherited)", + ); + INFOPLIST_FILE = "$(SRCROOT)/CordovaLibApp/CordovaLibApp-Info.plist"; + MACOSX_DEPLOYMENT_TARGET = 10.9; + OTHER_LDFLAGS = "-ObjC"; + PRODUCT_NAME = "$(TARGET_NAME)"; + WRAPPER_EXTENSION = app; + }; + name = Debug; + }; + 70DAA9191908E37C00AF3749 /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + COMBINE_HIDPI_IMAGES = YES; + FRAMEWORK_SEARCH_PATHS = ( + "$(inherited)", + "$(DEVELOPER_FRAMEWORKS_DIR)", + ); + GCC_PRECOMPILE_PREFIX_HEADER = YES; + GCC_PREFIX_HEADER = "CordovaLibApp/CordovaLibApp-Prefix.pch"; + INFOPLIST_FILE = "$(SRCROOT)/CordovaLibApp/CordovaLibApp-Info.plist"; + MACOSX_DEPLOYMENT_TARGET = 10.9; + OTHER_LDFLAGS = "-ObjC"; + PRODUCT_NAME = "$(TARGET_NAME)"; + WRAPPER_EXTENSION = app; + }; + name = Release; + }; +/* End XCBuildConfiguration section */ + +/* Begin XCConfigurationList section */ + 70BD673518FF9DAE00A1EFCF /* Build configuration list for PBXProject "CordovaLibTests" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 70BD675C18FF9DAE00A1EFCF /* Debug */, + 70BD675D18FF9DAE00A1EFCF /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Debug; + }; + 70BD676118FF9DAE00A1EFCF /* Build configuration list for PBXNativeTarget "CordovaLibTests" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 70BD676218FF9DAE00A1EFCF /* Debug */, + 70BD676318FF9DAE00A1EFCF /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Debug; + }; + 70DAA9171908E37C00AF3749 /* Build configuration list for PBXNativeTarget "CordovaLibApp" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 70DAA9181908E37C00AF3749 /* Debug */, + 70DAA9191908E37C00AF3749 /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Debug; + }; +/* End XCConfigurationList section */ + }; + rootObject = 70BD673218FF9DAE00A1EFCF /* Project object */; +} http://git-wip-us.apache.org/repos/asf/cordova-osx/blob/2d3d604f/tests/CordovaLibTests/en.lproj/InfoPlist.strings ---------------------------------------------------------------------- diff --git a/tests/CordovaLibTests/en.lproj/InfoPlist.strings b/tests/CordovaLibTests/en.lproj/InfoPlist.strings new file mode 100644 index 0000000..477b28f --- /dev/null +++ b/tests/CordovaLibTests/en.lproj/InfoPlist.strings @@ -0,0 +1,2 @@ +/* Localized versions of Info.plist keys */ + http://git-wip-us.apache.org/repos/asf/cordova-osx/blob/2d3d604f/tests/spec/cordovalib.spec.js ---------------------------------------------------------------------- diff --git a/tests/spec/cordovalib.spec.js b/tests/spec/cordovalib.spec.js new file mode 100644 index 0000000..3491228 --- /dev/null +++ b/tests/spec/cordovalib.spec.js @@ -0,0 +1,55 @@ +/* + 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. + */ + +var shell = require('shelljs'), + spec = __dirname, + path = require('path'), + util = require('util'), + tmp = require('tmp'); + + var tests_dir = path.join(spec, '..'); + +describe('cordova-lib', function() { + + it('objective-c unit tests', function() { + var return_code = 0; + var command; + var artifacts_dir = tmp.dirSync().name; + + // check iOS Simulator if running + command = 'pgrep "iOS Simulator"'; + return_code = shell.exec(command).code; + + // if iOS Simulator is running, kill it + if (return_code === 0) { // found + shell.echo('iOS Simulator is running, we\'re going to kill it.'); + return_code = shell.exec('killall "iOS Simulator"').code; + expect(return_code).toBe(0); + } + + // run the tests + command = util.format('xcodebuild test ' + + '-project %s/CordovaLibTests/CordovaLibTests.xcodeproj ' + + '-scheme CordovaLibApp ' + + 'CONFIGURATION_BUILD_DIR="%s"', tests_dir, artifacts_dir); + shell.echo(command); + return_code = shell.exec(command).code; + expect(return_code).toBe(0); + }); +}); --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
