Commit 63be634c authored by Aurélien Vermylen's avatar Aurélien Vermylen

Rehaul back: list by user again...

parent ff174e12
......@@ -7605,8 +7605,8 @@ return new Parser;
i,
value,
result_list;
if (obj === undefined) {
return undefined;
if (obj === undefined || obj === null) {
return 'null';
}
if (obj.constructor === Object) {
key_list = Object.keys(obj).sort();
......@@ -14496,12 +14496,12 @@ return new Parser;
var result = [],
type = endpoint.split('/')[1],
promises,
dev = filters.device || 'all',
usr = filters.user || 'all',
isId = checkEndpointAsId(endpoint),
device_dict = {},
user_dict = {},
i;
// Remove 'device' filter which should not be put in Automatic request.
delete filters.device;
// Remove 'user' filter which should not be put in Automatic request.
delete filters.user;
// Check endpoint validity.
if (!checkEndpoint(endpoint)) {
throw new jIO.util.jIOError('Wrong Automatic API query. (usually ' +
......@@ -14515,7 +14515,7 @@ return new Parser;
// Promise chain to handle multi-part response ("_metadata"->"next" parts).
function treatNext(returned) {
var data,
device_id,
user_id,
next;
// If the returned value was an error, return it (-> quite nasty design
// to have to return errors, but this is in order for all RSVP.all() to
......@@ -14524,7 +14524,7 @@ return new Parser;
return returned;
}
data = returned[0];
device_id = device_dict[returned[1]];
user_id = user_dict[returned[1]];
data = [data];
if (!isId) {
if (data[0]._metadata === undefined) {
......@@ -14539,16 +14539,16 @@ return new Parser;
path = URI(dat.url).path();
temp = {
'automatic_path': path,
'reference': '/' + device_id + path,
'id': '/' + device_id + path,
'reference': '/' + user_id + path,
'id': '/' + user_id + path,
'type': type,
'start_date': dat.started_at || null,
'stop_date': dat.ended_at || null,
'automatic_device': device_id
'automatic_user': user_id
};
result.push(temp);
return jio._cache.put('/' + device_id + path, temp).push(function () {
return jio._cache.putAttachment('/' + device_id + path, 'data',
return jio._cache.put('/' + user_id + path, temp).push(function () {
return jio._cache.putAttachment('/' + user_id + path, 'data',
new Blob([JSON.stringify(dat)], {type:
'text/plain'}));
});
......@@ -14581,21 +14581,20 @@ return new Parser;
return new RSVP.Queue().push(function () {
return jIO.util.ajax({
'type': 'GET',
'url': automatic_template.expand({endpoint: ['user', 'me', 'device',
'']}),
'url': automatic_template.expand({endpoint: ['user', 'me', '']}),
'headers': {'Authorization': 'Bearer ' + token}
//'xhrFields': {withCredentials: true}
});
}).push(function (respdev) {
var temp = JSON.parse(respdev.target.responseText);
if (temp.results.length === 0) {
}).push(function (respusr) {
var temp = JSON.parse(respusr.target.responseText);
if (temp.id === undefined) {
return new jIO.util.jIOError(
'No device associated to this account yet.',
200
'Could not find user information',
400
);
}
device_dict[token] = temp.results[0].id;
if (dev === 'all' || dev === device_dict[token]) {
user_dict[token] = temp.id;
if (usr === 'all' || usr === user_dict[token]) {
return jIO.util.ajax({
'type': 'GET',
'url': URI(automatic_template.expand({endpoint:
......@@ -14621,7 +14620,7 @@ return new Parser;
return RSVP.all(promises);
}).push(function (trueOrErrorArray) {
// If we queried an id, return results should be length 1
if (isId && (dev !== 'all')) {
if (isId && (usr !== 'all')) {
if (result.length === 1) {
return result[0];
}
......@@ -14631,7 +14630,7 @@ return new Parser;
}
// Result is empty, so we throw the correct token error.
i = jio._access_tokens.map(function (token) {
if (device_dict[token] === dev) {
if (user_dict[token] === usr) {
return true;
}
return false;
......@@ -14641,8 +14640,8 @@ return new Parser;
throw trueOrErrorArray[i];
}
// If we didn't find the error in the promise returns, we don't have
// a token for device dev.
throw new jIO.util.jIOError('No valid token for device: ' + dev, 400);
// a token for user usr.
throw new jIO.util.jIOError('No valid token for user: ' + usr, 400);
}
// Otherwise return results and errors and let caller handle.
return result;
......@@ -14673,8 +14672,8 @@ return new Parser;
AutomaticAPIStorage.prototype.get = function (id) {
var self = this,
endpoint = id.split('/'),
dev;
dev = endpoint.splice(1, 1)[0];
usr;
usr = endpoint.splice(1, 1)[0];
endpoint = endpoint.join('/');
if (id.indexOf('/') !== 0) {
throw new jIO.util.jIOError('id ' + id +
......@@ -14687,13 +14686,13 @@ return new Parser;
if (!checkEndpointAsId(endpoint)) {
throw new jIO.util.jIOError('Invalid id.', 400);
}
if (dev === 'all') {
if (usr === 'all') {
throw new jIO.util.jIOError('Invalid id.', 400);
}
return this._cache.get(id).push(function (res) {
return res;
}, function () {
return _queryAutomaticAPI(endpoint, {'device': dev}, self)
return _queryAutomaticAPI(endpoint, {'user': usr}, self)
.push(function (res) {
return res;
}, function (err) {
......@@ -14726,8 +14725,8 @@ return new Parser;
AutomaticAPIStorage.prototype.getAttachment = function (id, name, options) {
var self = this,
endpoint = id.split('/'),
dev;
dev = endpoint.splice(1, 1)[0];
usr;
usr = endpoint.splice(1, 1)[0];
endpoint = endpoint.join('/');
if (id.indexOf('/') !== 0) {
throw new jIO.util.jIOError('id ' + id +
......@@ -14740,7 +14739,7 @@ return new Parser;
if (!checkEndpointAsId(endpoint)) {
throw new jIO.util.jIOError('Invalid id.', 400);
}
if (dev === 'all') {
if (usr === 'all') {
throw new jIO.util.jIOError('Invalid id.', 400);
}
return this._cache.get(id).push(function () {
......@@ -14770,8 +14769,8 @@ return new Parser;
AutomaticAPIStorage.prototype.allAttachments = function (id) {
var endpoint = id.split('/'),
dev;
dev = endpoint.splice(1, 1)[0];
usr;
usr = endpoint.splice(1, 1)[0];
endpoint = endpoint.join('/');
if (id.indexOf('/') !== 0) {
throw new jIO.util.jIOError('id ' + id +
......@@ -14784,7 +14783,7 @@ return new Parser;
if (!checkEndpointAsId(endpoint)) {
throw new jIO.util.jIOError('Invalid id.', 400);
}
if (dev === 'all') {
if (usr === 'all') {
throw new jIO.util.jIOError('Invalid id.', 400);
}
return {data: null};
......@@ -14804,9 +14803,9 @@ return new Parser;
key_list,
automatic_filters = {},
simplequery_type_value,
intercept_keys = ['start_date', 'stop_date', 'device',
intercept_keys = ['start_date', 'stop_date', 'user',
'vehicle'],
intercept_keys_automatic_name = ['started_at', 'ended_at', 'device',
intercept_keys_automatic_name = ['started_at', 'ended_at', 'user',
'vehicle'],
intercept_accepted_operators = [['>', '>=', '<', '<='],
['>', '>=', '<', '<='], ['='], ['=']],
......
This source diff could not be displayed because it is too large. You can view the blob instead.
......@@ -129,8 +129,8 @@
i,
value,
result_list;
if (obj === undefined) {
return undefined;
if (obj === undefined || obj === null) {
return 'null';
}
if (obj.constructor === Object) {
key_list = Object.keys(obj).sort();
......
......@@ -54,12 +54,12 @@
var result = [],
type = endpoint.split('/')[1],
promises,
dev = filters.device || 'all',
usr = filters.user || 'all',
isId = checkEndpointAsId(endpoint),
device_dict = {},
user_dict = {},
i;
// Remove 'device' filter which should not be put in Automatic request.
delete filters.device;
// Remove 'user' filter which should not be put in Automatic request.
delete filters.user;
// Check endpoint validity.
if (!checkEndpoint(endpoint)) {
throw new jIO.util.jIOError('Wrong Automatic API query. (usually ' +
......@@ -73,7 +73,7 @@
// Promise chain to handle multi-part response ("_metadata"->"next" parts).
function treatNext(returned) {
var data,
device_id,
user_id,
next;
// If the returned value was an error, return it (-> quite nasty design
// to have to return errors, but this is in order for all RSVP.all() to
......@@ -82,7 +82,7 @@
return returned;
}
data = returned[0];
device_id = device_dict[returned[1]];
user_id = user_dict[returned[1]];
data = [data];
if (!isId) {
if (data[0]._metadata === undefined) {
......@@ -97,16 +97,16 @@
path = URI(dat.url).path();
temp = {
'automatic_path': path,
'reference': '/' + device_id + path,
'id': '/' + device_id + path,
'reference': '/' + user_id + path,
'id': '/' + user_id + path,
'type': type,
'start_date': dat.started_at || null,
'stop_date': dat.ended_at || null,
'automatic_device': device_id
'automatic_user': user_id
};
result.push(temp);
return jio._cache.put('/' + device_id + path, temp).push(function () {
return jio._cache.putAttachment('/' + device_id + path, 'data',
return jio._cache.put('/' + user_id + path, temp).push(function () {
return jio._cache.putAttachment('/' + user_id + path, 'data',
new Blob([JSON.stringify(dat)], {type:
'text/plain'}));
});
......@@ -139,21 +139,20 @@
return new RSVP.Queue().push(function () {
return jIO.util.ajax({
'type': 'GET',
'url': automatic_template.expand({endpoint: ['user', 'me', 'device',
'']}),
'url': automatic_template.expand({endpoint: ['user', 'me', '']}),
'headers': {'Authorization': 'Bearer ' + token}
//'xhrFields': {withCredentials: true}
});
}).push(function (respdev) {
var temp = JSON.parse(respdev.target.responseText);
if (temp.results.length === 0) {
}).push(function (respusr) {
var temp = JSON.parse(respusr.target.responseText);
if (temp.id === undefined) {
return new jIO.util.jIOError(
'No device associated to this account yet.',
200
'Could not find user information',
400
);
}
device_dict[token] = temp.results[0].id;
if (dev === 'all' || dev === device_dict[token]) {
user_dict[token] = temp.id;
if (usr === 'all' || usr === user_dict[token]) {
return jIO.util.ajax({
'type': 'GET',
'url': URI(automatic_template.expand({endpoint:
......@@ -179,7 +178,7 @@
return RSVP.all(promises);
}).push(function (trueOrErrorArray) {
// If we queried an id, return results should be length 1
if (isId && (dev !== 'all')) {
if (isId && (usr !== 'all')) {
if (result.length === 1) {
return result[0];
}
......@@ -189,7 +188,7 @@
}
// Result is empty, so we throw the correct token error.
i = jio._access_tokens.map(function (token) {
if (device_dict[token] === dev) {
if (user_dict[token] === usr) {
return true;
}
return false;
......@@ -199,8 +198,8 @@
throw trueOrErrorArray[i];
}
// If we didn't find the error in the promise returns, we don't have
// a token for device dev.
throw new jIO.util.jIOError('No valid token for device: ' + dev, 400);
// a token for user usr.
throw new jIO.util.jIOError('No valid token for user: ' + usr, 400);
}
// Otherwise return results and errors and let caller handle.
return result;
......@@ -231,8 +230,8 @@
AutomaticAPIStorage.prototype.get = function (id) {
var self = this,
endpoint = id.split('/'),
dev;
dev = endpoint.splice(1, 1)[0];
usr;
usr = endpoint.splice(1, 1)[0];
endpoint = endpoint.join('/');
if (id.indexOf('/') !== 0) {
throw new jIO.util.jIOError('id ' + id +
......@@ -245,13 +244,13 @@
if (!checkEndpointAsId(endpoint)) {
throw new jIO.util.jIOError('Invalid id.', 400);
}
if (dev === 'all') {
if (usr === 'all') {
throw new jIO.util.jIOError('Invalid id.', 400);
}
return this._cache.get(id).push(function (res) {
return res;
}, function () {
return _queryAutomaticAPI(endpoint, {'device': dev}, self)
return _queryAutomaticAPI(endpoint, {'user': usr}, self)
.push(function (res) {
return res;
}, function (err) {
......@@ -284,8 +283,8 @@
AutomaticAPIStorage.prototype.getAttachment = function (id, name, options) {
var self = this,
endpoint = id.split('/'),
dev;
dev = endpoint.splice(1, 1)[0];
usr;
usr = endpoint.splice(1, 1)[0];
endpoint = endpoint.join('/');
if (id.indexOf('/') !== 0) {
throw new jIO.util.jIOError('id ' + id +
......@@ -298,7 +297,7 @@
if (!checkEndpointAsId(endpoint)) {
throw new jIO.util.jIOError('Invalid id.', 400);
}
if (dev === 'all') {
if (usr === 'all') {
throw new jIO.util.jIOError('Invalid id.', 400);
}
return this._cache.get(id).push(function () {
......@@ -328,8 +327,8 @@
AutomaticAPIStorage.prototype.allAttachments = function (id) {
var endpoint = id.split('/'),
dev;
dev = endpoint.splice(1, 1)[0];
usr;
usr = endpoint.splice(1, 1)[0];
endpoint = endpoint.join('/');
if (id.indexOf('/') !== 0) {
throw new jIO.util.jIOError('id ' + id +
......@@ -342,7 +341,7 @@
if (!checkEndpointAsId(endpoint)) {
throw new jIO.util.jIOError('Invalid id.', 400);
}
if (dev === 'all') {
if (usr === 'all') {
throw new jIO.util.jIOError('Invalid id.', 400);
}
return {data: null};
......@@ -362,9 +361,9 @@
key_list,
automatic_filters = {},
simplequery_type_value,
intercept_keys = ['start_date', 'stop_date', 'device',
intercept_keys = ['start_date', 'stop_date', 'user',
'vehicle'],
intercept_keys_automatic_name = ['started_at', 'ended_at', 'device',
intercept_keys_automatic_name = ['started_at', 'ended_at', 'user',
'vehicle'],
intercept_accepted_operators = [['>', '>=', '<', '<='],
['>', '>=', '<', '<='], ['='], ['=']],
......
......@@ -85,14 +85,13 @@
});
test("get inexistent document", function () {
var url = "https://api.automatic.com/user/me/device/";
var url = "https://api.automatic.com/user/me/";
this.server.respondWith("GET", url, [200, {
"Content-Encoding": "gzip",
"Content-Type": "application/json"
}, '{"_metadata": {"count": 1, "next": null, "previous": null},' +
'"results": [{"id": "devicetest",' +
'"url": "https://api.automatic.com/user/usertest/' +
'device/devicetest/", "version": 5}]}']);
}, '{"id": "usertest",' +
'"url": "https://api.automatic.com/user/usertest/"' +
', "version": 5}']);
url = "https://api.automatic.com/trip/T_inexistent/";
this.server.respondWith("GET", url, [404, {
"Content-Encoding": "gzip",
......@@ -101,11 +100,11 @@
stop();
expect(3);
this.jio.get("/devicetest/trip/T_inexistent/")
this.jio.get("/usertest/trip/T_inexistent/")
.fail(function (error) {
ok(error instanceof jIO.util.jIOError);
equal(error.message, 'Cannot find document:' +
' /devicetest/trip/T_inexistent/, Error: ' +
' /usertest/trip/T_inexistent/, Error: ' +
'{"error": "err_object_not_found"}');
equal(error.status_code, 404);
})
......@@ -163,24 +162,23 @@
this.server.respondWith("GET", url, [401, {
"Content-Type": "application/json"
}, '{"error":"err_unauthorized","detail":"Invalid token."}\n']);
url = "https://api.automatic.com/user/me/device/";
url = "https://api.automatic.com/user/me/";
this.server.respondWith("GET", url, [200, {
"Content-Encoding": "gzip",
"Content-Type": "application/json"
}, '{"_metadata": {"count": 1, "next": null, "previous": null},' +
'"results": [{"id": "devicetest2",' +
'"url": "https://api.automatic.com/user/usertest/' +
'device/devicetest2/", "version": 5}]}' ]);
}, '{"id": "usertest2",' +
'"url": "https://api.automatic.com/user/usertest2/"' +
', "version": 5}' ]);
stop();
expect(3);
this.jio.get("/devicetest/trip/T_whatever/")
this.jio.get("/usertest/trip/T_whatever/")
.fail(function (error) {
ok(error instanceof jIO.util.jIOError);
equal(error.message,
"Cannot find document: /devicetest/trip/T_whatever/"
+ ", Error: No valid token for device: devicetest");
"Cannot find document: /usertest/trip/T_whatever/"
+ ", Error: No valid token for user: usertest");
equal(error.status_code, 404);
})
.fail(function (error) {
......@@ -207,27 +205,26 @@
xhr.respond(404, { "Content-Type": "application/json" },
'{"error":"err_unauthorized","detail":"Invalid token."}\n');
});
url = "https://api.automatic.com/user/me/device/";
url = "https://api.automatic.com/user/me/";
this.server.respondWith("GET", url, [200, {
"Content-Encoding": "gzip",
"Content-Type": "application/json"
}, '{"_metadata": {"count": 1, "next": null, "previous": null},' +
'"results": [{"id": "devicetest",' +
'"url": "https://api.automatic.com/user/usertest/' +
'device/devicetest/", "version": 5}]}' ]);
}, '{"id": "usertest",' +
'"url": "https://api.automatic.com/user/usertest/"' +
', "version": 5}' ]);
stop();
expect(1);
this.jio.get("/devicetest/trip/T_randomtrip/")
this.jio.get("/usertest/trip/T_randomtrip/")
.then(function (result) {
deepEqual(result, {
'automatic_path': '/trip/T_randomtrip/',
'reference': '/devicetest/trip/T_randomtrip/',
'id': '/devicetest/trip/T_randomtrip/',
'reference': '/usertest/trip/T_randomtrip/',
'id': '/usertest/trip/T_randomtrip/',
'type': 'trip',
'start_date': null,
'stop_date': null,
'automatic_device': 'devicetest'
'automatic_user': 'usertest'
}, "Check single element type");
})
.fail(function (error) {
......@@ -296,14 +293,13 @@
});
test("get inexistent document's attachment", function () {
var url = "https://api.automatic.com/user/me/device/";
var url = "https://api.automatic.com/user/me/";
this.server.respondWith("GET", url, [200, {
"Content-Encoding": "gzip",
"Content-Type": "application/json"
}, '{"_metadata": {"count": 1, "next": null, "previous": null},' +
'"results": [{"id": "devicetest",' +
'"url": "https://api.automatic.com/user/usertest/' +
'device/devicetest/", "version": 5}]}' ]);
}, '{"id": "usertest",' +
'"url": "https://api.automatic.com/user/usertest/"' +
', "version": 5}' ]);
url = "https://api.automatic.com/trip/T_inexistent/";
this.server.respondWith("GET", url, [404, {
"Content-Encoding": "gzip",
......@@ -312,11 +308,11 @@
stop();
expect(3);
this.jio.getAttachment("/devicetest/trip/T_inexistent/", 'whatever')
this.jio.getAttachment("/usertest/trip/T_inexistent/", 'whatever')
.fail(function (error) {
ok(error instanceof jIO.util.jIOError);
equal(error.message, 'Cannot find document:' +
' /devicetest/trip/T_inexistent/, Error: ' +
' /usertest/trip/T_inexistent/, Error: ' +
'{"error": "err_object_not_found"}');
equal(error.status_code, 404);
})
......@@ -374,24 +370,23 @@
this.server.respondWith("GET", url, [401, {
"Content-Type": "application/json"
}, '{"error":"err_unauthorized","detail":"Invalid token."}\n']);
url = "https://api.automatic.com/user/me/device/";
url = "https://api.automatic.com/user/me/";
this.server.respondWith("GET", url, [200, {
"Content-Encoding": "gzip",
"Content-Type": "application/json"
}, '{"_metadata": {"count": 1, "next": null, "previous": null},' +
'"results": [{"id": "devicetest2",' +
'"url": "https://api.automatic.com/user/usertest/' +
'device/devicetest2/", "version": 5}]}' ]);
}, '{"id": "usertest2",' +
'"url": "https://api.automatic.com/user/usertest2/"' +
', "version": 5}' ]);
stop();
expect(3);
this.jio.getAttachment("/devicetest/trip/T_whatever/", 'whatever')
this.jio.getAttachment("/usertest/trip/T_whatever/", 'whatever')
.fail(function (error) {
ok(error instanceof jIO.util.jIOError);
equal(error.message,
"Cannot find document: /devicetest/trip/T_whatever/"
+ ", Error: No valid token for device: devicetest");
"Cannot find document: /usertest/trip/T_whatever/"
+ ", Error: No valid token for user: usertest");
equal(error.status_code, 404);
})
.fail(function (error) {
......@@ -418,18 +413,17 @@
xhr.respond(404, { "Content-Type": "application/json" },
'{"error":"err_unauthorized","detail":"Invalid token."}\n');
});
url = "https://api.automatic.com/user/me/device/";
url = "https://api.automatic.com/user/me/";
this.server.respondWith("GET", url, [200, {
"Content-Encoding": "gzip",
"Content-Type": "application/json"
}, '{"_metadata": {"count": 1, "next": null, "previous": null},' +
'"results": [{"id": "devicetest",' +
'"url": "https://api.automatic.com/user/usertest/' +
'device/devicetest/", "version": 5}]}' ]);
}, '{"id": "usertest",' +
'"url": "https://api.automatic.com/user/usertest/"' +
', "version": 5}' ]);
stop();
expect(1);
this.jio.getAttachment("/devicetest/trip/T_randomtrip/", 'data', {format:
this.jio.getAttachment("/usertest/trip/T_randomtrip/", 'data', {format:
'text'}).then(function (result) {
deepEqual(result, '{"id":"T_randomtrip",' +
'"url":"https://api.automatic.com/trip/T_randomtrip/"}',
......@@ -459,7 +453,7 @@
stop();
expect(1);
this.jio.allAttachments('/devicetest/trip/T_trip/').then(function (result) {
this.jio.allAttachments('/usertest/trip/T_trip/').then(function (result) {
deepEqual(result, {data: null});
}).fail(function (error) {
ok(false, error);
......@@ -509,14 +503,13 @@
'{"_metadata":{"count":0,"next":null,"previous":null},' +
'"results":[]}');
});
url = "https://api.automatic.com/user/me/device/";
url = "https://api.automatic.com/user/me/";
this.server.respondWith("GET", url, [200, {
"Content-Encoding": "gzip",
"Content-Type": "application/json"
}, '{"_metadata": {"count": 1, "next": null, "previous": null},' +
'"results": [{"id": "0",' +
'"url": "https://api.automatic.com/user/usertest/' +
'device/0/", "version": 5}]}' ]);
}, '{"id": "0",' +
'"url": "https://api.automatic.com/user/0/"' +
', "version": 5}' ]);
stop();
expect(4);
......@@ -543,7 +536,7 @@
'type': 'trip',
'start_date': "2017-06-17T16:45:41Z",
'stop_date': "2017-06-17T16:46:38Z",
'automatic_device': '0'
'automatic_user': '0'
}], "Check trip is returned in result");
})
.fail(function (error) {
......@@ -581,7 +574,7 @@
'type': 'trip',
'start_date': "2017-06-17T16:45:41Z",
'stop_date': "2017-06-17T16:46:38Z",
'automatic_device': '0'
'automatic_user': '0'
}], "Check trip is returned in result");
})
.fail(function (error) {
......@@ -613,14 +606,13 @@
'{"_metadata":{"count":0,"next":null,"previous":null},' +
'"results":[]}');
});
url = "https://api.automatic.com/user/me/device/";
url = "https://api.automatic.com/user/me/";
this.server.respondWith("GET", url, [200, {
"Content-Encoding": "gzip",
"Content-Type": "application/json"
}, '{"_metadata": {"count": 1, "next": null, "previous": null},' +
'"results": [{"id": "0",' +
'"url": "https://api.automatic.com/user/usertest/' +
'device/0/", "version": 5}]}' ]);
}, '{"id": "0",' +
'"url": "https://api.automatic.com/user/0/"' +
', "version": 5}' ]);
stop();
expect(1);
......@@ -635,7 +627,7 @@
'type': 'vehicle',
'start_date': null,
'stop_date': null,
'automatic_device': '0'
'automatic_user': '0'
}], "Check vehicle list is returned");
})
.fail(function (error) {
......@@ -664,7 +656,7 @@
'{"_metadata":{"count":0,"next":null,"previous":null},' +
'"results":[]}');
});
url = "https://api.automatic.com/user/me/device/";
url = "https://api.automatic.com/user/me/";
this.server.respondWith("GET", url, [404, {
"Content-Encoding": "gzip",
"Content-Type": "application/json"
......@@ -705,14 +697,13 @@
'{"_metadata":{"count":0,"next":null,"previous":null},' +
'"results":[]}');
});
url = "https://api.automatic.com/user/me/device/";
url = "https://api.automatic.com/user/me/";
this.server.respondWith("GET", url, [200, {
"Content-Encoding": "gzip",
"Content-Type": "application/json"
}, '{"_metadata": {"count": 1, "next": null, "previous": null},' +
'"results": [{"id": "0",' +
'"url": "https://api.automatic.com/user/usertest/' +
'device/0/", "version": 5}]}' ]);
}, '{"id": "0",' +
'"url": "https://api.automatic.com/user/0/"' +
', "version": 5}' ]);
url = "https://api.automatic.com/specific/nexturl/";
this.server.respondWith("GET", url, [200, {
"Content-Encoding": "gzip",
......@@ -734,7 +725,7 @@
'type': 'vehicle',
'start_date': null,
'stop_date': null,
'automatic_device': '0'
'automatic_user': '0'
}, {
'automatic_path': '/vehicle/V_example2/',
'reference': '/0/vehicle/V_example2/',
......@@ -742,7 +733,7 @@
'type': 'vehicle',
'start_date': null,
'stop_date': null,
'automatic_device': '0'
'automatic_user': '0'
}], "Check vehicle list is returned");
})
.fail(function (error) {
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment