Repository: olingo-odata4-js Updated Branches: refs/heads/master 31a19cca2 -> 1f6d84f2c
[OLINGO-238] adopt tests/odata-batch-tests.js tests/odata-net-tests.js Project: http://git-wip-us.apache.org/repos/asf/olingo-odata4-js/repo Commit: http://git-wip-us.apache.org/repos/asf/olingo-odata4-js/commit/1f6d84f2 Tree: http://git-wip-us.apache.org/repos/asf/olingo-odata4-js/tree/1f6d84f2 Diff: http://git-wip-us.apache.org/repos/asf/olingo-odata4-js/diff/1f6d84f2 Branch: refs/heads/master Commit: 1f6d84f2c3b634f493a80fe40234bda84f4105db Parents: 31a19cc Author: Sven Kobler <[email protected]> Authored: Mon May 19 16:14:34 2014 +0200 Committer: Sven Kobler <[email protected]> Committed: Mon May 19 16:14:34 2014 +0200 ---------------------------------------------------------------------- datajs/package.json | 24 +++++------- datajs/src/lib/odata.js | 4 +- datajs/src/lib/odata/batch.js | 2 +- datajs/tests/odata-batch-tests.js | 42 ++++++++++----------- datajs/tests/odata-net-tests.js | 65 +++++++++++++++++---------------- datajs/tests/odata-qunit-tests.htm | 6 +-- 6 files changed, 70 insertions(+), 73 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/olingo-odata4-js/blob/1f6d84f2/datajs/package.json ---------------------------------------------------------------------- diff --git a/datajs/package.json b/datajs/package.json index 7b250e8..40579d0 100644 --- a/datajs/package.json +++ b/datajs/package.json @@ -5,20 +5,6 @@ "engines": { "node": ">= 0.10.0" }, - "devDependencies": { - "browserify": "^3.40.0", - "grunt": "^0.4.4", - "grunt-browserify": "^2.0.3", - "grunt-connect-proxy": "^0.1.10", - "grunt-contrib-connect": "^0.7.1", - "grunt-contrib-copy": "^0.5.0", - "grunt-contrib-uglify": "^0.4.0", - "grunt-exorcise": "^0.1.0", - "grunt-open": "^0.2.3", - "http-proxy": "^1.1.4", - "mocha": "^1.18.2", - "uglifyify": "^2.1.1" - }, "testling": { "harness": "mocha-tdd", "files": "test/sampletest_mocca.js", @@ -28,5 +14,15 @@ }, "scripts": { "test": "mocha --ui tdd" + }, + "devDependencies": { + "browserify": "^4.1.5", + "grunt": "^0.4.5", + "grunt-browserify": "^2.1.0", + "grunt-connect-proxy": "^0.1.10", + "grunt-contrib-connect": "^0.7.1", + "grunt-contrib-copy": "^0.5.0", + "grunt-mocha": "^0.4.10", + "grunt-open": "^0.2.3" } } http://git-wip-us.apache.org/repos/asf/olingo-odata4-js/blob/1f6d84f2/datajs/src/lib/odata.js ---------------------------------------------------------------------- diff --git a/datajs/src/lib/odata.js b/datajs/src/lib/odata.js index 7e856bf..857c90c 100644 --- a/datajs/src/lib/odata.js +++ b/datajs/src/lib/odata.js @@ -27,7 +27,7 @@ exports.jsonLight = require('./odata/json-light.js'); exports.json = odataJson = require('./odata/json.js'); exports.atom = odataAtom = require('./odata/atom.js'); exports.xml = odataXml = require('./odata/xml.js'); -exports.batchHandler = require('./odata/batch.js'); +exports.batch = require('./odata/batch.js'); exports.metadataHandler = odataMetadata.metadataHandler; @@ -168,4 +168,4 @@ exports.parseMetadata = function (csdlMetadataDocument) { }; // Configure the batch handler to use the default handler for the batch parts. -exports.batchHandler.partHandler = exports.defaultHandler; +exports.batch.batchHandler.partHandler = exports.defaultHandler; http://git-wip-us.apache.org/repos/asf/olingo-odata4-js/blob/1f6d84f2/datajs/src/lib/odata/batch.js ---------------------------------------------------------------------- diff --git a/datajs/src/lib/odata/batch.js b/datajs/src/lib/odata/batch.js index 7993199..20cf7ef 100644 --- a/datajs/src/lib/odata/batch.js +++ b/datajs/src/lib/odata/batch.js @@ -32,7 +32,7 @@ var trimString = utils.trimString; var contentType = odataHandler.contentType; var handler = odataHandler.handler; var isBatch = odataUtils.isBatch; -var MAX_DATA_SERVICE_VERSION = odataUtils.MAX_DATA_SERVICE_VERSION; +var MAX_DATA_SERVICE_VERSION = odataHandler.MAX_DATA_SERVICE_VERSION; var normalizeHeaders = odataUtils.normalizeHeaders; //TODO var payloadTypeOf = odata.payloadTypeOf; var prepareRequest = odataUtils.prepareRequest; http://git-wip-us.apache.org/repos/asf/olingo-odata4-js/blob/1f6d84f2/datajs/tests/odata-batch-tests.js ---------------------------------------------------------------------- diff --git a/datajs/tests/odata-batch-tests.js b/datajs/tests/odata-batch-tests.js index 9aeb033..79be366 100644 --- a/datajs/tests/odata-batch-tests.js +++ b/datajs/tests/odata-batch-tests.js @@ -18,7 +18,7 @@ // to do: test Atom payload // var atomPayload = OData.atomSerializer(OData.atomHandler, testPayload, { "OData-Version": "4.0" }); - var jsonPayload = OData.jsonSerializer(OData.jsonHandler, testPayload, { "OData-Version": "4.0" }); + var jsonPayload = OData.json.jsonSerializer(OData.json.jsonHandler, testPayload, { "OData-Version": "4.0" }); djstest.addTest(function writeRequestTest() { var request = { @@ -34,7 +34,7 @@ "\r\n" + "test request"; - var actual = OData.writeRequest(request); + var actual = OData.batch.writeRequest(request); djstest.assertAreEqual(actual, expected, "WriteRequest serializes a request properly"); djstest.done(); }); @@ -70,7 +70,7 @@ "\r\n--<batchBoundary>--\r\n"; MockHttpClient.clear().addRequestVerifier(request.requestUri, function (request) { - var cType = OData.contentType(request.headers["Content-Type"]); + var cType = OData.handler.contentType(request.headers["Content-Type"]); var boundary = cType.properties["boundary"]; var expected = template.replace(/<batchBoundary>/g, boundary); @@ -79,7 +79,7 @@ djstest.done(); }); - OData.request(request, null, null, OData.batchHandler, MockHttpClient); + OData.request(request, null, null, OData.batch.batchHandler, MockHttpClient); }); djstest.addTest(function serializeComplexBatchTest() { @@ -147,8 +147,8 @@ var start = request.body.indexOf("multipart/mixed"); var end = request.body.indexOf("\r\n", start); - var csetBoundary = OData.contentType(request.body.substring(start, end)).properties["boundary"]; - var batchBoundary = OData.contentType(request.headers["Content-Type"]).properties["boundary"]; + var csetBoundary = OData.handler.contentType(request.body.substring(start, end)).properties["boundary"]; + var batchBoundary = OData.handler.contentType(request.headers["Content-Type"]).properties["boundary"]; var expected = template.replace(/<batchBoundary>/g, batchBoundary); expected = expected.replace(/<changesetBoundary>/g, csetBoundary); @@ -159,7 +159,7 @@ djstest.done(); }); - OData.request(request, null, null, OData.batchHandler, MockHttpClient); + OData.request(request, null, null, OData.batch.batchHandler, MockHttpClient); }); djstest.addTest(function serializeChangeSetTest() { @@ -199,8 +199,8 @@ var start = request.body.indexOf("multipart/mixed"); var end = request.body.indexOf("\r\n", start); - var csetBoundary = OData.contentType(request.body.substring(start, end)).properties["boundary"]; - var batchBoundary = OData.contentType(request.headers["Content-Type"]).properties["boundary"]; + var csetBoundary = OData.handler.contentType(request.body.substring(start, end)).properties["boundary"]; + var batchBoundary = OData.handler.contentType(request.headers["Content-Type"]).properties["boundary"]; var expected = template.replace(/<batchBoundary>/g, batchBoundary); expected = expected.replace(/<changesetBoundary>/g, csetBoundary); @@ -211,7 +211,7 @@ djstest.done(); }); - OData.request(request, null, null, OData.batchHandler, MockHttpClient); + OData.request(request, null, null, OData.batch.batchHandler, MockHttpClient); }); djstest.addTest(function serializeNestedChangeSetsTest() { @@ -222,7 +222,7 @@ }; djstest.expectException(function () { - OData.request(request, null, null, OData.batchHandler); + OData.request(request, null, null, OData.batch.batchHandler); }); djstest.done(); @@ -246,7 +246,7 @@ }; djstest.expectException(function () { - OData.request(request, null, null, OData.batchHandler); + OData.request(request, null, null, OData.batch.batchHandler); }); djstest.done(); @@ -295,7 +295,7 @@ Location: http://localhost:46541/tests/endpoints/FoodStoreDataServiceV4.svc/Cate djstest.assertAreEqual(data.__batchResponses[0].data["CategoryID"], 42, "part 1 data of the response was read"); djstest.assertAreEqual(data.__batchResponses[1].data["CategoryID"], 43, "part 2 data of the response was read"); djstest.done(); - }, null, OData.batchHandler, MockHttpClient); + }, null, OData.batch.batchHandler, MockHttpClient); }); djstest.addTest(function readBatchWithChangesetTest() { @@ -397,7 +397,7 @@ OData-Version: 4.0;\r\n\ djstest.assertAreEqual(changesetResponses3[0].data["CategoryID"], 43, "part 1 data of the changeset response of the response 3 was read"); djstest.assertAreEqual(changesetResponses3[1].data, undefined, "No data defined for no content only response in part 2 of the changeset response of the response 3"); djstest.done(); - }, null, OData.batchHandler, MockHttpClient); + }, null, OData.batch.batchHandler, MockHttpClient); }); djstest.addTest(function readBatchWithErrorPartTest() { @@ -438,7 +438,7 @@ Content-Type: application/json\r\n\ djstest.assertAreEqual(batchResponses[0].headers["Location"], "http://localhost:46541/tests/endpoints/FoodStoreDataServiceV4.svc/Categories(1)", "part 1 of the response was read"); djstest.assert(batchResponses[1].response, "part 2 of the response was read"); djstest.done(); - }, null, OData.batchHandler, MockHttpClient); + }, null, OData.batch.batchHandler, MockHttpClient); }); @@ -488,7 +488,7 @@ Content-Type: application/json;odata.metadata=minimal;odata.streaming=true;IEEE7 var error = batchResponses[1].__changeResponses[0]; djstest.assert(error.response.body.indexOf("GET operation cannot be specified in a change set") > -1, "Response contains expected message"); djstest.done(); - }, null, OData.batchHandler, MockHttpClient); + }, null, OData.batch.batchHandler, MockHttpClient); djstest.done(); }); @@ -534,14 +534,14 @@ Content-Type: application/json;odata.metadata=minimal;odata.streaming=true;IEEE7 '--batchresponse_fb681875-73dc-4e62-9898-a0af89021341--\r\n' }; - var oldPartHandler = OData.batchHandler.partHandler; + var oldPartHandler = OData.batch.batchHandler.partHandler; - OData.batchHandler.partHandler = testHandler; + OData.batch.batchHandler.partHandler = testHandler; - OData.batchHandler.write(request, { recognizeDates: true }); - OData.batchHandler.read(response, { recognizeDates: true }); + OData.batch.batchHandler.write(request, { recognizeDates: true }); + OData.batch.batchHandler.read(response, { recognizeDates: true }); - OData.batchHandler.partHandler = oldPartHandler; + OData.batch.batchHandler.partHandler = oldPartHandler; djstest.done(); }); http://git-wip-us.apache.org/repos/asf/olingo-odata4-js/blob/1f6d84f2/datajs/tests/odata-net-tests.js ---------------------------------------------------------------------- diff --git a/datajs/tests/odata-net-tests.js b/datajs/tests/odata-net-tests.js index 35cd6c2..c708468 100644 --- a/datajs/tests/odata-net-tests.js +++ b/datajs/tests/odata-net-tests.js @@ -22,17 +22,17 @@ }; var oldXmlHttpRequest = window.XMLHttpRequest; - var oldEnableJsonpCallback = OData.defaultHttpClient.enableJsonpCallback; + var oldEnableJsonpCallback = OData.net.defaultHttpClient.enableJsonpCallback; try { window.XMLHttpRequest = MockXMLHttpRequest.XMLHttpRequest; var i, len; for (i = 0, len = tests.length; i < len; i++) { MockXMLHttpRequest.addResponse(tests[i].url, tests[i].response); - OData.defaultHttpClient.enableJsonpCallback = false; + OData.net.defaultHttpClient.enableJsonpCallback = false; //Need a closure to capture the current test being executed. (function (test) { - OData.defaultHttpClient.request( + OData.net.defaultHttpClient.request( { requestUri: test.url, headers: {} }, function (response) { djstest.assert(response.statusCode >= 200 & response.statusCode <= 299, "response status is in the success range"); @@ -52,7 +52,7 @@ var timer = setInterval(function () { if (sentCount === tests.length) { clearInterval(timer) - OData.defaultHttpClient.enableJsonpCallback = oldEnableJsonpCallback; + OData.net.defaultHttpClient.enableJsonpCallback = oldEnableJsonpCallback; window.XMLHttpRequest = oldXmlHttpRequest; MockXMLHttpRequest.reset(); djstest.done(); @@ -67,12 +67,12 @@ djstest.assertsExpected(1); - var oldEnableJsonpCallback = OData.defaultHttpClient.enableJsonpCallback; + var oldEnableJsonpCallback = OData.net.defaultHttpClient.enableJsonpCallback; try { window.XMLHttpRequest = MockXMLHttpRequest.XMLHttpRequest; - OData.defaultHttpClient.enableJsonpCallback = false; + OData.net.defaultHttpClient.enableJsonpCallback = false; - OData.defaultHttpClient.request( + OData.net.defaultHttpClient.request( { requestUri: "http://test1", timeoutMS: 10, headers: { MockTimeOut: true} }, function (response) { djstest.fail("success method was hit when not expected"); @@ -87,8 +87,8 @@ //Cleanup and finish the test after all requests have been sent and processed. Poll every 50 ms var timer = setInterval(function () { if (testDone) { - clearInterval(timer) - OData.defaultHttpClient.enableJsonpCallback = oldEnableJsonpCallback; + clearInterval(timer); + OData.net.defaultHttpClient.enableJsonpCallback = oldEnableJsonpCallback; window.XMLHttpRequest = oldXmlHttpRequest; MockXMLHttpRequest.reset(); djstest.done(); @@ -103,12 +103,12 @@ djstest.assertsExpected(1); - var oldEnableJsonpCallback = OData.defaultHttpClient.enableJsonpCallback; + var oldEnableJsonpCallback = OData.net.defaultHttpClient.enableJsonpCallback; try { window.XMLHttpRequest = MockXMLHttpRequest.XMLHttpRequest; - OData.defaultHttpClient.enableJsonpCallback = false; + OData.net.defaultHttpClient.enableJsonpCallback = false; - var result = OData.defaultHttpClient.request( + var result = OData.net.defaultHttpClient.request( { requestUri: "http://test1", headers: { MockNoOp: true} }, function (response) { djstest.fail("success method was hit when not expected"); @@ -120,7 +120,7 @@ result.abort(); } finally { - OData.defaultHttpClient.enableJsonpCallback = oldEnableJsonpCallback; + OData.net.defaultHttpClient.enableJsonpCallback = oldEnableJsonpCallback; window.XMLHttpRequest = oldXmlHttpRequest; MockXMLHttpRequest.reset(); djstest.done(); @@ -134,10 +134,10 @@ djstest.assertsExpected(1); - var oldEnableJsonpCallback = OData.defaultHttpClient.enableJsonpCallback; + var oldEnableJsonpCallback = OData.net.defaultHttpClient.enableJsonpCallback; try { window.XMLHttpRequest = MockXMLHttpRequest.XMLHttpRequest; - OData.defaultHttpClient.enableJsonpCallback = false; + OData.net.defaultHttpClient.enableJsonpCallback = false; MockXMLHttpRequest.addResponse("http://test1", { headers: {}, status: 200, body: "test body" }); @@ -146,7 +146,7 @@ testDone = true; }; - result = OData.defaultHttpClient.request( + result = OData.net.defaultHttpClient.request( { requestUri: "http://test1", headers: {} }, function (response) { djstest.pass("success method was hit"); @@ -160,7 +160,7 @@ var timer = setInterval(function () { if (testDone) { clearInterval(timer); - OData.defaultHttpClient.enableJsonpCallback = oldEnableJsonpCallback; + OData.net.defaultHttpClient.enableJsonpCallback = oldEnableJsonpCallback; window.XMLHttpRequest = oldXmlHttpRequest; MockXMLHttpRequest.reset(); djstest.done(); @@ -186,25 +186,26 @@ ]; var oldXmlHttpRequest = window.XMLHttpRequest; - var oldEnableJsonpCallback = OData.defaultHttpClient.enableJsonpCallback; + var oldEnableJsonpCallback = OData.net.defaultHttpClient.enableJsonpCallback; try { window.XMLHttpRequest = MockXMLHttpRequest.XMLHttpRequest; - OData.defaultHttpClient.enableJsonpCallback = false; + OData.net.defaultHttpClient.enableJsonpCallback = false; var i, len; + for (i = 0, len = tests.length; i < len; i++) { MockXMLHttpRequest.addRequestVerifier(tests[i].request.requestUri, function (request) { djstest.assertAreEqualDeep(request, tests[i].expected, "request matches target"); }); - OData.defaultHttpClient.request( + OData.net.defaultHttpClient.request( tests[i].request, function (response) { }); } } finally { // Restore original values. - OData.defaultHttpClient.enableJsonpCallback = oldEnableJsonpCallback; + OData.net.defaultHttpClient.enableJsonpCallback = oldEnableJsonpCallback; window.XMLHttpRequest = oldXmlHttpRequest; } djstest.done(); @@ -225,21 +226,21 @@ { pass: true, input: { headers: { Accept: "application/xml"}} } ]; for (var i = 0; i < tests.length; i++) { - var actual = OData.canUseJSONP(tests[i].input); + var actual = OData.net.canUseJSONP(tests[i].input); djstest.assert(actual === tests[i].pass, "test " + i + " didn't actually match pass (" + tests[i].pass + ")"); } djstest.done(); }); djstest.addTest(function isAbsoluteUrlTest() { - djstest.assert(OData.isAbsoluteUrl("http://something/")); - djstest.assert(OData.isAbsoluteUrl("http://malformed url/")); - djstest.assert(OData.isAbsoluteUrl("https://localhost/")); - djstest.assert(OData.isAbsoluteUrl("file://another-protocol/")); - djstest.assert(!OData.isAbsoluteUrl("/path")); - djstest.assert(!OData.isAbsoluteUrl("?query-string")); - djstest.assert(!OData.isAbsoluteUrl("")); - djstest.assert(!OData.isAbsoluteUrl("mailto:someone")); + djstest.assert(OData.net.isAbsoluteUrl("http://something/")); + djstest.assert(OData.net.isAbsoluteUrl("http://malformed url/")); + djstest.assert(OData.net.isAbsoluteUrl("https://localhost/")); + djstest.assert(OData.net.isAbsoluteUrl("file://another-protocol/")); + djstest.assert(!OData.net.isAbsoluteUrl("/path")); + djstest.assert(!OData.net.isAbsoluteUrl("?query-string")); + djstest.assert(!OData.net.isAbsoluteUrl("")); + djstest.assert(!OData.net.isAbsoluteUrl("mailto:someone")); djstest.done(); }); @@ -259,10 +260,10 @@ ]; var i, len; for (i = 0, len = localUrls.length; i < len; i++) { - djstest.assert(OData.isLocalUrl(localUrls[i]), "is local: [" + localUrls[i] + "]"); + djstest.assert(OData.net.isLocalUrl(localUrls[i]), "is local: [" + localUrls[i] + "]"); } for (i = 0, len = remoteUrls.length; i < len; i++) { - djstest.assert(!OData.isLocalUrl(remoteUrls[i]), "is not local: [" + remoteUrls[i] + "]"); + djstest.assert(!OData.net.isLocalUrl(remoteUrls[i]), "is not local: [" + remoteUrls[i] + "]"); } djstest.done(); }); http://git-wip-us.apache.org/repos/asf/olingo-odata4-js/blob/1f6d84f2/datajs/tests/odata-qunit-tests.htm ---------------------------------------------------------------------- diff --git a/datajs/tests/odata-qunit-tests.htm b/datajs/tests/odata-qunit-tests.htm index fdcd4da..cbc154b 100644 --- a/datajs/tests/odata-qunit-tests.htm +++ b/datajs/tests/odata-qunit-tests.htm @@ -68,7 +68,7 @@ ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEAL <script type="text/javascript" src="../src/cache.js"></script>--> <script type="text/javascript" src="common/mockHttpClient.js"></script> -<!--SK TODO enable <script type="text/javascript" src="common/mockXMLHttpRequest.js"></script>--> + <script type="text/javascript" src="common/mockXMLHttpRequest.js"></script> <script type="text/javascript" src="./common/djstest.js"></script> <!--SK TODO enable <script type="text/javascript" src="common/CacheOracle.js"></script>--> @@ -81,8 +81,8 @@ ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEAL <script type="text/javascript" src="odata-metadata-tests.js"></script> <script type="text/javascript" src="odata-xml-tests.js"></script> <script type="text/javascript" src="odata-handler-tests.js"></script> -<!--SK TODO enable <script type="text/javascript" src="odata-net-tests.js"></script>--> -<!--SK TODO enable <script type="text/javascript" src="odata-batch-tests.js"></script>--> + <script type="text/javascript" src="odata-net-tests.js"></script> + <script type="text/javascript" src="odata-batch-tests.js"></script> <!--SK TODO enable <script type="text/javascript" src="cache-tests.js"></script>--> <!--SK TODO enable <script type="text/javascript" src="store-tests.js"></script>-->
