diff --git a/apps/tests/http-tests.ts b/apps/tests/http-tests.ts
index 3eece7c05..dfe996d91 100644
--- a/apps/tests/http-tests.ts
+++ b/apps/tests/http-tests.ts
@@ -29,11 +29,11 @@ export var test_getString = function (done: (err: Error, res?: string) => void)
done(null);
//
}, function (e) {
- //// Argument (e) is Error!
- //
- done(e);
- //
- });
+ //// Argument (e) is Error!
+ //
+ done(e);
+ //
+ });
// ```
//
};
@@ -90,12 +90,12 @@ export var test_getJSON = function (done) {
done(null);
//
}, function (e) {
- //// Argument (e) is Error!
- //console.log(e);
- //
- done(e);
- //
- });
+ //// Argument (e) is Error!
+ //console.log(e);
+ //
+ done(e);
+ //
+ });
// ```
//
};
@@ -144,8 +144,8 @@ export var test_getJSONP = function (done) {
}
done(null);
}, function (e) {
- done(e);
- });
+ done(e);
+ });
};
export var test_getJSON_fail_when_result_is_not_JSONP = function (done) {
@@ -186,11 +186,11 @@ export var test_getImage = function (done) {
}
//
}, function (e) {
- //// Argument (e) is Error!
- //
- done(e);
- //
- });
+ //// Argument (e) is Error!
+ //
+ done(e);
+ //
+ });
// ```
//
};
@@ -278,11 +278,11 @@ export var test_request_responseStatusCodeShouldBeDefined = function (done) {
}
//
}, function (e) {
- //// Argument (e) is Error!
- //
- done(e);
- //
- });
+ //// Argument (e) is Error!
+ //
+ done(e);
+ //
+ });
// ```
//
};
@@ -309,11 +309,11 @@ export var test_request_responseHeadersShouldBeDefined = function (done) {
}
//
}, function (e) {
- //// Argument (e) is Error!
- //
- done(e);
- //
- });
+ //// Argument (e) is Error!
+ //
+ done(e);
+ //
+ });
// ```
//
};
@@ -341,11 +341,11 @@ export var test_request_responseContentShouldBeDefined = function (done) {
}
//
}, function (e) {
- //// Argument (e) is Error!
- //
- done(e);
- //
- });
+ //// Argument (e) is Error!
+ //
+ done(e);
+ //
+ });
// ```
//
};
@@ -363,8 +363,8 @@ export var test_request_responseContentToStringShouldReturnString = function (do
done(err);
}
}, function (e) {
- done(e);
- });
+ done(e);
+ });
};
export var test_request_responseContentToJSONShouldReturnJSON = function (done) {
@@ -380,8 +380,8 @@ export var test_request_responseContentToJSONShouldReturnJSON = function (done)
done(err);
}
}, function (e) {
- done(e);
- });
+ done(e);
+ });
};
export var test_request_responseContentToImageShouldReturnCorrectImage = function (done) {
@@ -399,8 +399,8 @@ export var test_request_responseContentToImageShouldReturnCorrectImage = functio
}
});
}, function (e) {
- done(e);
- });
+ done(e);
+ });
};
export var test_request_headersSentAndReceivedProperly = function (done) {
@@ -420,8 +420,8 @@ export var test_request_headersSentAndReceivedProperly = function (done) {
done(err);
}
}, function (e) {
- done(e);
- });
+ done(e);
+ });
};
export var test_request_contentSentAndReceivedProperly = function (done) {
@@ -442,8 +442,8 @@ export var test_request_contentSentAndReceivedProperly = function (done) {
done(err);
}
}, function (e) {
- done(e);
- });
+ done(e);
+ });
};
export var test_request_FormDataContentSentAndReceivedProperly = function (done) {
@@ -468,8 +468,8 @@ export var test_request_FormDataContentSentAndReceivedProperly = function (done)
done(err);
}
}, function (e) {
- done(e);
- });
+ done(e);
+ });
};
export var test_request_NonStringHeadersSentAndReceivedProperly = function (done) {
@@ -492,8 +492,8 @@ export var test_request_NonStringHeadersSentAndReceivedProperly = function (done
done(err);
}
}, function (e) {
- done(e);
- });
+ done(e);
+ });
};
export var test_request_jsonAsContentSentAndReceivedProperly = function (done) {
@@ -521,27 +521,29 @@ export var test_request_jsonAsContentSentAndReceivedProperly = function (done) {
//
// console.log(result);
}, function (e) {
- //
- done(e);
- //
- // console.log("Error occurred " + e);
- });
+ //
+ done(e);
+ //
+ // console.log("Error occurred " + e);
+ });
// ```
//
};
-export var test_getString_FromVariousUrls_ShouldWorkProperly = function (done) {
- var urls = [
- "https://it-ebooks-api.info/v1/book/1615005640",
- "https://www.telerik.com",
- "https://spreadsheets.google.com/tq?key=1tJ64Y8hje0ui4ap9U33h3KWwpxT_-JuVMSZzxD2Er8k",
- "https://chase.arborgoldcloud.net/mobilehandler/mobiledatahandler.ashx?ProcedureName=MEstimGetJobListSpeed&@prmSalesRep=%&@prmStartDate=11/1/2015&@prmEndDate=12/8/2015&@prmStatusFilter=2"
- ];
+export var test_getString_1 = function (done) {
+ doRequest("https://it-ebooks-api.info/v1/book/1615005640", done);
+};
- var i: number;
- for (i = 0; i < urls.length; i++) {
- doRequest(urls[i], done);
- }
+export var test_getString_2 = function (done) {
+ doRequest("https://www.telerik.com", done);
+};
+
+export var test_getString_3 = function (done) {
+ doRequest("https://spreadsheets.google.com/tq?key=1tJ64Y8hje0ui4ap9U33h3KWwpxT_-JuVMSZzxD2Er8k", done);
+};
+
+export var test_getString_4 = function (done) {
+ doRequest("https://chase.arborgoldcloud.net/mobilehandler/mobiledatahandler.ashx?ProcedureName=MEstimGetJobListSpeed&@prmSalesRep=%&@prmStartDate=11/1/2015&@prmEndDate=12/8/2015&@prmStatusFilter=2", done);
};
function doRequest(url: string, done: Function) {
@@ -554,6 +556,6 @@ function doRequest(url: string, done: Function) {
done(err);
}
}, function (e) {
- done(e);
- });
+ done(e);
+ });
};
\ No newline at end of file
diff --git a/apps/tests/layouts/absolute-layout-tests.ts b/apps/tests/layouts/absolute-layout-tests.ts
index 8fadba0d0..69d56c70c 100644
--- a/apps/tests/layouts/absolute-layout-tests.ts
+++ b/apps/tests/layouts/absolute-layout-tests.ts
@@ -5,6 +5,7 @@ import labelModule = require("ui/label");
import helper = require("../ui/helper");
import colorModule = require("color");
import layoutHelper = require("./layout-helper");
+import commonTests = require("./common-layout-tests");
//
// # AbsoluteLayout
@@ -120,6 +121,10 @@ export class AbsoluteLayoutTest extends testModule.UITestnativeView.getLayoutParams();
+ if (!(lp instanceof org.nativescript.widgets.CommonLayoutParams)) {
+ lp = new org.nativescript.widgets.CommonLayoutParams();
+ }
+
+ return lp;
+}
+
+export function percent_support_nativeLayoutParams_are_correct(test: testModule.UITest) {
+ if (platform.device.os !== platform.platformNames.android) {
+ return;
+ }
+
+ let layout = test.testView;
+ layout.width = layoutHelper.dp(200);
+ layout.height = layoutHelper.dp(200);
+
+ let btn = new layoutHelper.MyButton();
+ btn.width = layoutHelper.dp(100);
+ btn.height = layoutHelper.dp(100);
+ btn.margin = "10%";
+ layout.addChild(btn);
+
+ test.waitUntilTestElementLayoutIsValid();
+
+ let lp = getNativeLayoutParams(btn._nativeView);
+ TKUnit.assertEqual(lp.width, 100, "width");
+ TKUnit.assertEqual(lp.widthPercent, -1, "widthPercent");
+ TKUnit.assertEqual(lp.height, 100, "height");
+ TKUnit.assertEqual(lp.heightPercent, -1, "heightPercent");
+ TKUnit.assertEqual(lp.topMargin, 0, "topMargin");
+ TKUnit.assertTrue(lp.topMarginPercent > 0, "topMarginPercent");
+ TKUnit.assertEqual(lp.leftMargin, 0, "leftMargin");
+ TKUnit.assertTrue(lp.leftMarginPercent > 0, "leftMarginPercent");
+ TKUnit.assertEqual(lp.rightMargin, 0, "rightMargin");
+ TKUnit.assertTrue(lp.rightMarginPercent > 0, "rightMarginPercent");
+ TKUnit.assertEqual(lp.bottomMargin, 0, "bottomMargin");
+ TKUnit.assertTrue(lp.bottomMarginPercent > 0, "bottomMarginPercent");
+
+ (btn).width = "50%";
+ (btn).height = "50%";
+ test.waitUntilTestElementLayoutIsValid();
+
+ TKUnit.assertEqual(lp.width, -1, "width");
+ TKUnit.assertEqual(lp.widthPercent, 0.5, "widthPercent");
+ TKUnit.assertEqual(lp.height, -1, "height");
+ TKUnit.assertEqual(lp.heightPercent, 0.5, "heightPercent");
+
+ btn.margin = "0";
+ btn.height = Number.NaN;
+ (btn.style)._resetValue(widthProperty);
+ test.waitUntilTestElementLayoutIsValid();
+
+ TKUnit.assertEqual(lp.width, -1, "width");
+ TKUnit.assertEqual(lp.widthPercent, -1, "widthPercent");
+ TKUnit.assertEqual(lp.height, -1, "height");
+ TKUnit.assertEqual(lp.heightPercent, -1, "heightPercent");
+ TKUnit.assertEqual(lp.topMargin, 0, "topMargin");
+ TKUnit.assertEqual(lp.topMarginPercent, -1, "topMarginPercent");
+ TKUnit.assertEqual(lp.leftMargin, 0, "leftMargin");
+ TKUnit.assertEqual(lp.leftMarginPercent, -1, "leftMarginPercent");
+ TKUnit.assertEqual(lp.rightMargin, 0, "rightMargin");
+ TKUnit.assertEqual(lp.rightMarginPercent, -1, "rightMarginPercent");
+ TKUnit.assertEqual(lp.bottomMargin, 0, "bottomMargin");
+ TKUnit.assertEqual(lp.bottomMarginPercent, -1, "bottomMarginPercent");
+}
export function percent_support_test(test: testModule.UITest) {
let layout: LayoutBase = test.testView;
diff --git a/apps/tests/layouts/dock-layout-tests.ts b/apps/tests/layouts/dock-layout-tests.ts
index 141a7bade..df54a74d0 100644
--- a/apps/tests/layouts/dock-layout-tests.ts
+++ b/apps/tests/layouts/dock-layout-tests.ts
@@ -195,6 +195,10 @@ export class DockLayoutTest extends testModule.UITest {
public test_percent_support() {
commonTests.percent_support_test(this);
}
+
+ public test_percent_support_nativeLayoutParams_are_correct() {
+ commonTests.percent_support_nativeLayoutParams_are_correct(this);
+ }
}
export function createTestCase(): DockLayoutTest {
diff --git a/apps/tests/layouts/grid-layout-tests.ts b/apps/tests/layouts/grid-layout-tests.ts
index e4fd393c4..be40b2649 100644
--- a/apps/tests/layouts/grid-layout-tests.ts
+++ b/apps/tests/layouts/grid-layout-tests.ts
@@ -646,6 +646,10 @@ export class GridLayoutTest extends testModule.UITest {
public test_percent_support() {
commonTests.percent_support_test(this);
}
+
+ public test_percent_support_nativeLayoutParams_are_correct() {
+ commonTests.percent_support_nativeLayoutParams_are_correct(this);
+ }
}
export function createTestCase(): GridLayoutTest {
diff --git a/apps/tests/layouts/stack-layout-tests.ts b/apps/tests/layouts/stack-layout-tests.ts
index 279fbd94c..2cfc12eed 100644
--- a/apps/tests/layouts/stack-layout-tests.ts
+++ b/apps/tests/layouts/stack-layout-tests.ts
@@ -312,6 +312,10 @@ export class StackLayoutTest extends testModule.UITest {
TKUnit.assertEqual(bounds.right, 120, "BottomRight layout RIGHT incorrect");
TKUnit.assertEqual(bounds.bottom, 180, "BottomRight layout BOTTOM incorrect");
}
+
+ public test_percent_support_nativeLayoutParams_are_correct() {
+ commonTests.percent_support_nativeLayoutParams_are_correct(this);
+ }
}
export function createTestCase(): StackLayoutTest {
diff --git a/apps/tests/layouts/wrap-layout-tests.ts b/apps/tests/layouts/wrap-layout-tests.ts
index 7d0c9868d..f533cbff3 100644
--- a/apps/tests/layouts/wrap-layout-tests.ts
+++ b/apps/tests/layouts/wrap-layout-tests.ts
@@ -279,6 +279,10 @@ export class WrapLayoutTest extends testModule.UITestdata.object;
var nativeView = stackLayout._nativeView;
- nativeView.setOrientation(data.newValue === enums.Orientation.vertical ? org.nativescript.widgets.Orientation.vertical : org.nativescript.widgets.Orientation.horzontal);
+ nativeView.setOrientation(data.newValue === enums.Orientation.vertical ? org.nativescript.widgets.Orientation.vertical : org.nativescript.widgets.Orientation.horizontal);
}
private _layout: org.nativescript.widgets.StackLayout;
diff --git a/ui/layouts/wrap-layout/wrap-layout.android.ts b/ui/layouts/wrap-layout/wrap-layout.android.ts
index 4f3ebab05..f2ab51b67 100644
--- a/ui/layouts/wrap-layout/wrap-layout.android.ts
+++ b/ui/layouts/wrap-layout/wrap-layout.android.ts
@@ -11,7 +11,7 @@ export class WrapLayout extends common.WrapLayout {
static setNativeOrientationProperty(data: dependencyObservable.PropertyChangeData): void {
var wrapLayout = data.object;
var nativeView = wrapLayout._nativeView;
- nativeView.setOrientation(data.newValue === enums.Orientation.vertical ? org.nativescript.widgets.Orientation.vertical : org.nativescript.widgets.Orientation.horzontal);
+ nativeView.setOrientation(data.newValue === enums.Orientation.vertical ? org.nativescript.widgets.Orientation.vertical : org.nativescript.widgets.Orientation.horizontal);
}
static setNativeItemWidthProperty(data: dependencyObservable.PropertyChangeData): void {