Updated session ID
This commit is contained in:
parent
96578c3348
commit
ae6999aee3
7 changed files with 24 additions and 24 deletions
|
@ -848,7 +848,7 @@ $utopia->delete('/v1/account')
|
||||||
}
|
}
|
||||||
);
|
);
|
||||||
|
|
||||||
$utopia->delete('/v1/account/sessions/:sessionUid')
|
$utopia->delete('/v1/account/sessions/:sessionId')
|
||||||
->desc('Delete Account Session')
|
->desc('Delete Account Session')
|
||||||
->label('scope', 'account')
|
->label('scope', 'account')
|
||||||
->label('webhook', 'account.sessions.delete')
|
->label('webhook', 'account.sessions.delete')
|
||||||
|
@ -857,17 +857,17 @@ $utopia->delete('/v1/account/sessions/:sessionUid')
|
||||||
->label('sdk.method', 'deleteSession')
|
->label('sdk.method', 'deleteSession')
|
||||||
->label('sdk.description', '/docs/references/account/delete-session.md')
|
->label('sdk.description', '/docs/references/account/delete-session.md')
|
||||||
->label('abuse-limit', 100)
|
->label('abuse-limit', 100)
|
||||||
->param('sessionUid', null, function () { return new UID(); }, 'Session unique ID. Use the string \'current\' to delete the current device session.')
|
->param('sessionId', null, function () { return new UID(); }, 'Session unique ID. Use the string \'current\' to delete the current device session.')
|
||||||
->action(
|
->action(
|
||||||
function ($sessionUid) use ($response, $request, $user, $projectDB, $webhook, $audit) {
|
function ($sessionId) use ($response, $request, $user, $projectDB, $webhook, $audit) {
|
||||||
$sessionUid = ($sessionUid === 'current')
|
$sessionId = ($sessionId === 'current')
|
||||||
? Auth::tokenVerify($user->getAttribute('tokens'), Auth::TOKEN_TYPE_LOGIN, Auth::$secret)
|
? Auth::tokenVerify($user->getAttribute('tokens'), Auth::TOKEN_TYPE_LOGIN, Auth::$secret)
|
||||||
: $sessionUid;
|
: $sessionId;
|
||||||
|
|
||||||
$tokens = $user->getAttribute('tokens', []);
|
$tokens = $user->getAttribute('tokens', []);
|
||||||
|
|
||||||
foreach ($tokens as $token) { /* @var $token Document */
|
foreach ($tokens as $token) { /* @var $token Document */
|
||||||
if (($sessionUid == $token->getUid()) && Auth::TOKEN_TYPE_LOGIN == $token->getAttribute('type')) {
|
if (($sessionId == $token->getUid()) && Auth::TOKEN_TYPE_LOGIN == $token->getAttribute('type')) {
|
||||||
if (!$projectDB->deleteDocument($token->getUid())) {
|
if (!$projectDB->deleteDocument($token->getUid())) {
|
||||||
throw new Exception('Failed to remove token from DB', 500);
|
throw new Exception('Failed to remove token from DB', 500);
|
||||||
}
|
}
|
||||||
|
|
|
@ -130,7 +130,7 @@
|
||||||
data-failure-param-alert-text="Logout failed"
|
data-failure-param-alert-text="Logout failed"
|
||||||
data-failure-param-alert-classname="error">
|
data-failure-param-alert-classname="error">
|
||||||
|
|
||||||
<input type="hidden" name="sessionUid" value="current">
|
<input type="hidden" name="sessionId" value="current">
|
||||||
|
|
||||||
<button class="fill danger icon fill"><i class="icon-login"></i> Logout</button>
|
<button class="fill danger icon fill"><i class="icon-login"></i> Logout</button>
|
||||||
</form>
|
</form>
|
||||||
|
@ -213,7 +213,7 @@
|
||||||
data-failure-param-alert-text="Logout from Session Failed"
|
data-failure-param-alert-text="Logout from Session Failed"
|
||||||
data-failure-param-alert-classname="error">
|
data-failure-param-alert-classname="error">
|
||||||
|
|
||||||
<input type="hidden" name="sessionUid" data-ls-bind="{{session.$uid}}">
|
<input type="hidden" name="sessionId" data-ls-bind="{{session.$uid}}">
|
||||||
<button class="danger">Logout</button>
|
<button class="danger">Logout</button>
|
||||||
</form>
|
</form>
|
||||||
</span>
|
</span>
|
||||||
|
@ -234,7 +234,7 @@
|
||||||
data-failure="alert"
|
data-failure="alert"
|
||||||
data-failure-param-alert-text="Logout from Session Failed"
|
data-failure-param-alert-text="Logout from Session Failed"
|
||||||
data-failure-param-alert-classname="error">
|
data-failure-param-alert-classname="error">
|
||||||
<input type="hidden" name="sessionUid" data-ls-bind="{{session.$uid}}">
|
<input type="hidden" name="sessionId" data-ls-bind="{{session.$uid}}">
|
||||||
<button class="danger">Logout</button>
|
<button class="danger">Logout</button>
|
||||||
</form>
|
</form>
|
||||||
</span>
|
</span>
|
||||||
|
|
8
public/dist/scripts/app-all.js
vendored
8
public/dist/scripts/app-all.js
vendored
|
@ -50,13 +50,13 @@ return http.put(path,{'content-type':'application/json',},payload);},getSessions
|
||||||
if(password===undefined){throw new Error('Missing required parameter: "password"');}
|
if(password===undefined){throw new Error('Missing required parameter: "password"');}
|
||||||
let path='/account/sessions';let payload={};if(email){payload['email']=email;}
|
let path='/account/sessions';let payload={};if(email){payload['email']=email;}
|
||||||
if(password){payload['password']=password;}
|
if(password){payload['password']=password;}
|
||||||
return http.post(path,{'content-type':'application/json',},payload);},deleteSessions:function(){let path='/account/sessions';let payload={};return http.delete(path,{'content-type':'application/json',},payload);},deleteCurrentSession:function(){let path='/account/sessions/current';let payload={};return http.delete(path,{'content-type':'application/json',},payload);},createOAuthSession:function(provider,success,failure){if(provider===undefined){throw new Error('Missing required parameter: "provider"');}
|
return http.post(path,{'content-type':'application/json',},payload);},deleteSessions:function(){let path='/account/sessions';let payload={};return http.delete(path,{'content-type':'application/json',},payload);},createOAuthSession:function(provider,success,failure){if(provider===undefined){throw new Error('Missing required parameter: "provider"');}
|
||||||
if(success===undefined){throw new Error('Missing required parameter: "success"');}
|
if(success===undefined){throw new Error('Missing required parameter: "success"');}
|
||||||
if(failure===undefined){throw new Error('Missing required parameter: "failure"');}
|
if(failure===undefined){throw new Error('Missing required parameter: "failure"');}
|
||||||
let path='/account/sessions/oauth/{provider}'.replace(new RegExp('{provider}','g'),provider);let payload={};if(success){payload['success']=success;}
|
let path='/account/sessions/oauth/{provider}'.replace(new RegExp('{provider}','g'),provider);let payload={};if(success){payload['success']=success;}
|
||||||
if(failure){payload['failure']=failure;}
|
if(failure){payload['failure']=failure;}
|
||||||
return http.get(path,{'content-type':'application/json',},payload);},deleteSession:function(sessionUid){if(sessionUid===undefined){throw new Error('Missing required parameter: "id"');}
|
return http.get(path,{'content-type':'application/json',},payload);},deleteSession:function(sessionId){if(sessionId===undefined){throw new Error('Missing required parameter: "id"');}
|
||||||
let path='/account/sessions/{sessionUid}'.replace(new RegExp('{sessionUid}','g'),sessionUid);let payload={};return http.delete(path,{'content-type':'application/json',},payload);},createVerification:function(url){if(url===undefined){throw new Error('Missing required parameter: "url"');}
|
let path='/account/sessions/{sessionId}'.replace(new RegExp('{sessionId}','g'),sessionId);let payload={};return http.delete(path,{'content-type':'application/json',},payload);},createVerification:function(url){if(url===undefined){throw new Error('Missing required parameter: "url"');}
|
||||||
let path='/account/verification';let payload={};if(url){payload['url']=url;}
|
let path='/account/verification';let payload={};if(url){payload['url']=url;}
|
||||||
return http.post(path,{'content-type':'application/json',},payload);},updateVerification:function(userId,secret,passwordB){if(userId===undefined){throw new Error('Missing required parameter: "userId"');}
|
return http.post(path,{'content-type':'application/json',},payload);},updateVerification:function(userId,secret,passwordB){if(userId===undefined){throw new Error('Missing required parameter: "userId"');}
|
||||||
if(secret===undefined){throw new Error('Missing required parameter: "secret"');}
|
if(secret===undefined){throw new Error('Missing required parameter: "secret"');}
|
||||||
|
@ -2397,7 +2397,7 @@ children[prop]=template.cloneNode(true);element.appendChild(children[prop]);(ind
|
||||||
container.set('$index',originalIndex,true,false);container.set('$prefix',originalPrefix,true,false);container.set('$as',originalAs,true,false);element.dispatchEvent(new Event('looped'));};let template=(element.children.length===1)?element.children[0]:window.document.createElement('li');echo();container.bind(element,expr+'.length',echo);let path=(expr+'.length').split('.');while(path.length){container.bind(element,path.join('.'),echo);path.pop();}}});window.ls.container.get('view').add({selector:'data-ls-template',template:false,repeat:true,controller:function(element,view,http,expression,document){let template=expression.parse(element.getAttribute('data-ls-template'));let type=element.getAttribute('data-type')||'url';element.innerHTML='';if('script'===type){let inlineTemplate=document.getElementById(template);if(inlineTemplate&&inlineTemplate.innerHTML){element.innerHTML=inlineTemplate.innerHTML;element.dispatchEvent(new CustomEvent('template-loaded',{bubbles:true,cancelable:false}));}
|
container.set('$index',originalIndex,true,false);container.set('$prefix',originalPrefix,true,false);container.set('$as',originalAs,true,false);element.dispatchEvent(new Event('looped'));};let template=(element.children.length===1)?element.children[0]:window.document.createElement('li');echo();container.bind(element,expr+'.length',echo);let path=(expr+'.length').split('.');while(path.length){container.bind(element,path.join('.'),echo);path.pop();}}});window.ls.container.get('view').add({selector:'data-ls-template',template:false,repeat:true,controller:function(element,view,http,expression,document){let template=expression.parse(element.getAttribute('data-ls-template'));let type=element.getAttribute('data-type')||'url';element.innerHTML='';if('script'===type){let inlineTemplate=document.getElementById(template);if(inlineTemplate&&inlineTemplate.innerHTML){element.innerHTML=inlineTemplate.innerHTML;element.dispatchEvent(new CustomEvent('template-loaded',{bubbles:true,cancelable:false}));}
|
||||||
else{element.innerHTML='<span style="color: red">Missing template "'+template+'"</span>';}
|
else{element.innerHTML='<span style="color: red">Missing template "'+template+'"</span>';}
|
||||||
return;}
|
return;}
|
||||||
http.get(template).then(function(element){return function(data){element.innerHTML=data;view.render(element);element.dispatchEvent(new CustomEvent('template-loaded',{bubbles:true,cancelable:false}));}}(element),function(){throw new Error('Failed loading template');});}});window.ls.error=function(){return function(error){console.error("ERROR-APP",error);};};window.addEventListener("error",function(event){console.error("ERROR-EVENT:",event.error.message,event.error.stack);});document.addEventListener("account.deleteSession",function(){window.location="/auth/signin";});document.addEventListener("account.create",function(){let container=window.ls.container;let form=container.get('serviceForm');let sdk=container.get('console');let promise=sdk.account.createSession(form.email,form.password);promise.then(function(){window.location='/console';},function(error){window.location='/auth/signup?failure=1';});});(function(window){"use strict";window.ls.container.set('alerts',function(window){return{list:[],ids:0,counter:0,max:5,add:function(message,time){var scope=this;message.id=scope.ids++;scope.counter++;scope.list.unshift(message);if(scope.counter>scope.max){scope.list.pop();scope.counter--;}
|
http.get(template).then(function(element){return function(data){element.innerHTML=data;view.render(element);element.dispatchEvent(new CustomEvent('template-loaded',{bubbles:true,cancelable:false}));}}(element),function(){throw new Error('Failed loading template');});}});window.ls.error=function(){return function(error){console.error("ERROR-APP",error);};};window.addEventListener("error",function(event){console.error("ERROR-EVENT:",event.error.message,event.error.stack);});document.addEventListener("account.deleteSession",function(){window.location="/auth/signin";});document.addEventListener("account.create",function(){let container=window.ls.container;let form=container.get('serviceForm');let sdk=container.get('console');let promise=sdk.account.createSession(form.email,form.password);container.set("serviceForm",formData,true,true);promise.then(function(){window.location='/console';},function(error){window.location='/auth/signup?failure=1';});});(function(window){"use strict";window.ls.container.set('alerts',function(window){return{list:[],ids:0,counter:0,max:5,add:function(message,time){var scope=this;message.id=scope.ids++;scope.counter++;scope.list.unshift(message);if(scope.counter>scope.max){scope.list.pop();scope.counter--;}
|
||||||
if(time>0){window.setTimeout(function(message){return function(){scope.remove(message.id)}}(message),time);}
|
if(time>0){window.setTimeout(function(message){return function(){scope.remove(message.id)}}(message),time);}
|
||||||
return message.id;},remove:function(id){let scope=this;for(let index=0;index<scope.list.length;index++){let obj=scope.list[index];if(obj.id===parseInt(id)){scope.counter--;if(typeof obj.callback==="function"){obj.callback();}
|
return message.id;},remove:function(id){let scope=this;for(let index=0;index<scope.list.length;index++){let obj=scope.list[index];if(obj.id===parseInt(id)){scope.counter--;if(typeof obj.callback==="function"){obj.callback();}
|
||||||
scope.list.splice(index,1);};}}};},true,true);})(window);(function(window){"use strict";window.ls.container.set('console',function(window){var sdk=new window.Appwrite();sdk.setEndpoint(APP_ENV.API).setProject('console').setLocale(APP_ENV.LOCALE);return sdk;},true);})(window);(function(window){"use strict";window.ls.container.set('date',function(){function format(format,timestamp){var jsdate,f
|
scope.list.splice(index,1);};}}};},true,true);})(window);(function(window){"use strict";window.ls.container.set('console',function(window){var sdk=new window.Appwrite();sdk.setEndpoint(APP_ENV.API).setProject('console').setLocale(APP_ENV.LOCALE);return sdk;},true);})(window);(function(window){"use strict";window.ls.container.set('date',function(){function format(format,timestamp){var jsdate,f
|
||||||
|
|
6
public/dist/scripts/app-dep.js
vendored
6
public/dist/scripts/app-dep.js
vendored
|
@ -50,13 +50,13 @@ return http.put(path,{'content-type':'application/json',},payload);},getSessions
|
||||||
if(password===undefined){throw new Error('Missing required parameter: "password"');}
|
if(password===undefined){throw new Error('Missing required parameter: "password"');}
|
||||||
let path='/account/sessions';let payload={};if(email){payload['email']=email;}
|
let path='/account/sessions';let payload={};if(email){payload['email']=email;}
|
||||||
if(password){payload['password']=password;}
|
if(password){payload['password']=password;}
|
||||||
return http.post(path,{'content-type':'application/json',},payload);},deleteSessions:function(){let path='/account/sessions';let payload={};return http.delete(path,{'content-type':'application/json',},payload);},deleteCurrentSession:function(){let path='/account/sessions/current';let payload={};return http.delete(path,{'content-type':'application/json',},payload);},createOAuthSession:function(provider,success,failure){if(provider===undefined){throw new Error('Missing required parameter: "provider"');}
|
return http.post(path,{'content-type':'application/json',},payload);},deleteSessions:function(){let path='/account/sessions';let payload={};return http.delete(path,{'content-type':'application/json',},payload);},createOAuthSession:function(provider,success,failure){if(provider===undefined){throw new Error('Missing required parameter: "provider"');}
|
||||||
if(success===undefined){throw new Error('Missing required parameter: "success"');}
|
if(success===undefined){throw new Error('Missing required parameter: "success"');}
|
||||||
if(failure===undefined){throw new Error('Missing required parameter: "failure"');}
|
if(failure===undefined){throw new Error('Missing required parameter: "failure"');}
|
||||||
let path='/account/sessions/oauth/{provider}'.replace(new RegExp('{provider}','g'),provider);let payload={};if(success){payload['success']=success;}
|
let path='/account/sessions/oauth/{provider}'.replace(new RegExp('{provider}','g'),provider);let payload={};if(success){payload['success']=success;}
|
||||||
if(failure){payload['failure']=failure;}
|
if(failure){payload['failure']=failure;}
|
||||||
return http.get(path,{'content-type':'application/json',},payload);},deleteSession:function(sessionUid){if(sessionUid===undefined){throw new Error('Missing required parameter: "id"');}
|
return http.get(path,{'content-type':'application/json',},payload);},deleteSession:function(sessionId){if(sessionId===undefined){throw new Error('Missing required parameter: "id"');}
|
||||||
let path='/account/sessions/{sessionUid}'.replace(new RegExp('{sessionUid}','g'),sessionUid);let payload={};return http.delete(path,{'content-type':'application/json',},payload);},createVerification:function(url){if(url===undefined){throw new Error('Missing required parameter: "url"');}
|
let path='/account/sessions/{sessionId}'.replace(new RegExp('{sessionId}','g'),sessionId);let payload={};return http.delete(path,{'content-type':'application/json',},payload);},createVerification:function(url){if(url===undefined){throw new Error('Missing required parameter: "url"');}
|
||||||
let path='/account/verification';let payload={};if(url){payload['url']=url;}
|
let path='/account/verification';let payload={};if(url){payload['url']=url;}
|
||||||
return http.post(path,{'content-type':'application/json',},payload);},updateVerification:function(userId,secret,passwordB){if(userId===undefined){throw new Error('Missing required parameter: "userId"');}
|
return http.post(path,{'content-type':'application/json',},payload);},updateVerification:function(userId,secret,passwordB){if(userId===undefined){throw new Error('Missing required parameter: "userId"');}
|
||||||
if(secret===undefined){throw new Error('Missing required parameter: "secret"');}
|
if(secret===undefined){throw new Error('Missing required parameter: "secret"');}
|
||||||
|
|
2
public/dist/scripts/app.js
vendored
2
public/dist/scripts/app.js
vendored
|
@ -123,7 +123,7 @@ children[prop]=template.cloneNode(true);element.appendChild(children[prop]);(ind
|
||||||
container.set('$index',originalIndex,true,false);container.set('$prefix',originalPrefix,true,false);container.set('$as',originalAs,true,false);element.dispatchEvent(new Event('looped'));};let template=(element.children.length===1)?element.children[0]:window.document.createElement('li');echo();container.bind(element,expr+'.length',echo);let path=(expr+'.length').split('.');while(path.length){container.bind(element,path.join('.'),echo);path.pop();}}});window.ls.container.get('view').add({selector:'data-ls-template',template:false,repeat:true,controller:function(element,view,http,expression,document){let template=expression.parse(element.getAttribute('data-ls-template'));let type=element.getAttribute('data-type')||'url';element.innerHTML='';if('script'===type){let inlineTemplate=document.getElementById(template);if(inlineTemplate&&inlineTemplate.innerHTML){element.innerHTML=inlineTemplate.innerHTML;element.dispatchEvent(new CustomEvent('template-loaded',{bubbles:true,cancelable:false}));}
|
container.set('$index',originalIndex,true,false);container.set('$prefix',originalPrefix,true,false);container.set('$as',originalAs,true,false);element.dispatchEvent(new Event('looped'));};let template=(element.children.length===1)?element.children[0]:window.document.createElement('li');echo();container.bind(element,expr+'.length',echo);let path=(expr+'.length').split('.');while(path.length){container.bind(element,path.join('.'),echo);path.pop();}}});window.ls.container.get('view').add({selector:'data-ls-template',template:false,repeat:true,controller:function(element,view,http,expression,document){let template=expression.parse(element.getAttribute('data-ls-template'));let type=element.getAttribute('data-type')||'url';element.innerHTML='';if('script'===type){let inlineTemplate=document.getElementById(template);if(inlineTemplate&&inlineTemplate.innerHTML){element.innerHTML=inlineTemplate.innerHTML;element.dispatchEvent(new CustomEvent('template-loaded',{bubbles:true,cancelable:false}));}
|
||||||
else{element.innerHTML='<span style="color: red">Missing template "'+template+'"</span>';}
|
else{element.innerHTML='<span style="color: red">Missing template "'+template+'"</span>';}
|
||||||
return;}
|
return;}
|
||||||
http.get(template).then(function(element){return function(data){element.innerHTML=data;view.render(element);element.dispatchEvent(new CustomEvent('template-loaded',{bubbles:true,cancelable:false}));}}(element),function(){throw new Error('Failed loading template');});}});window.ls.error=function(){return function(error){console.error("ERROR-APP",error);};};window.addEventListener("error",function(event){console.error("ERROR-EVENT:",event.error.message,event.error.stack);});document.addEventListener("account.deleteSession",function(){window.location="/auth/signin";});document.addEventListener("account.create",function(){let container=window.ls.container;let form=container.get('serviceForm');let sdk=container.get('console');let promise=sdk.account.createSession(form.email,form.password);promise.then(function(){window.location='/console';},function(error){window.location='/auth/signup?failure=1';});});(function(window){"use strict";window.ls.container.set('alerts',function(window){return{list:[],ids:0,counter:0,max:5,add:function(message,time){var scope=this;message.id=scope.ids++;scope.counter++;scope.list.unshift(message);if(scope.counter>scope.max){scope.list.pop();scope.counter--;}
|
http.get(template).then(function(element){return function(data){element.innerHTML=data;view.render(element);element.dispatchEvent(new CustomEvent('template-loaded',{bubbles:true,cancelable:false}));}}(element),function(){throw new Error('Failed loading template');});}});window.ls.error=function(){return function(error){console.error("ERROR-APP",error);};};window.addEventListener("error",function(event){console.error("ERROR-EVENT:",event.error.message,event.error.stack);});document.addEventListener("account.deleteSession",function(){window.location="/auth/signin";});document.addEventListener("account.create",function(){let container=window.ls.container;let form=container.get('serviceForm');let sdk=container.get('console');let promise=sdk.account.createSession(form.email,form.password);container.set("serviceForm",formData,true,true);promise.then(function(){window.location='/console';},function(error){window.location='/auth/signup?failure=1';});});(function(window){"use strict";window.ls.container.set('alerts',function(window){return{list:[],ids:0,counter:0,max:5,add:function(message,time){var scope=this;message.id=scope.ids++;scope.counter++;scope.list.unshift(message);if(scope.counter>scope.max){scope.list.pop();scope.counter--;}
|
||||||
if(time>0){window.setTimeout(function(message){return function(){scope.remove(message.id)}}(message),time);}
|
if(time>0){window.setTimeout(function(message){return function(){scope.remove(message.id)}}(message),time);}
|
||||||
return message.id;},remove:function(id){let scope=this;for(let index=0;index<scope.list.length;index++){let obj=scope.list[index];if(obj.id===parseInt(id)){scope.counter--;if(typeof obj.callback==="function"){obj.callback();}
|
return message.id;},remove:function(id){let scope=this;for(let index=0;index<scope.list.length;index++){let obj=scope.list[index];if(obj.id===parseInt(id)){scope.counter--;if(typeof obj.callback==="function"){obj.callback();}
|
||||||
scope.list.splice(index,1);};}}};},true,true);})(window);(function(window){"use strict";window.ls.container.set('console',function(window){var sdk=new window.Appwrite();sdk.setEndpoint(APP_ENV.API).setProject('console').setLocale(APP_ENV.LOCALE);return sdk;},true);})(window);(function(window){"use strict";window.ls.container.set('date',function(){function format(format,timestamp){var jsdate,f
|
scope.list.splice(index,1);};}}};},true,true);})(window);(function(window){"use strict";window.ls.container.set('console',function(window){var sdk=new window.Appwrite();sdk.setEndpoint(APP_ENV.API).setProject('console').setLocale(APP_ENV.LOCALE);return sdk;},true);})(window);(function(window){"use strict";window.ls.container.set('date',function(){function format(format,timestamp){var jsdate,f
|
||||||
|
|
|
@ -826,12 +826,12 @@
|
||||||
* @throws {Error}
|
* @throws {Error}
|
||||||
* @return {Promise}
|
* @return {Promise}
|
||||||
*/
|
*/
|
||||||
deleteSession: function(sessionUid) {
|
deleteSession: function(sessionId) {
|
||||||
if(sessionUid === undefined) {
|
if(sessionId === undefined) {
|
||||||
throw new Error('Missing required parameter: "id"');
|
throw new Error('Missing required parameter: "id"');
|
||||||
}
|
}
|
||||||
|
|
||||||
let path = '/account/sessions/{sessionUid}'.replace(new RegExp('{sessionUid}', 'g'), sessionUid);
|
let path = '/account/sessions/{sessionId}'.replace(new RegExp('{sessionId}', 'g'), sessionId);
|
||||||
|
|
||||||
let payload = {};
|
let payload = {};
|
||||||
|
|
||||||
|
|
|
@ -81,7 +81,7 @@ trait AccountBase
|
||||||
|
|
||||||
$this->assertEquals($response['headers']['status-code'], 201);
|
$this->assertEquals($response['headers']['status-code'], 201);
|
||||||
|
|
||||||
$sessionUid = $response['body']['$uid'];
|
$sessionId = $response['body']['$uid'];
|
||||||
$session = $this->client->parseCookie($response['headers']['set-cookie'])['a_session_'.$this->getProject()['$uid']];
|
$session = $this->client->parseCookie($response['headers']['set-cookie'])['a_session_'.$this->getProject()['$uid']];
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -121,7 +121,7 @@ trait AccountBase
|
||||||
$this->assertEquals($response['headers']['status-code'], 400);
|
$this->assertEquals($response['headers']['status-code'], 400);
|
||||||
|
|
||||||
return array_merge($data, [
|
return array_merge($data, [
|
||||||
'sessionUid' => $sessionUid,
|
'sessionId' => $sessionId,
|
||||||
'session' => $session,
|
'session' => $session,
|
||||||
]);
|
]);
|
||||||
}
|
}
|
||||||
|
@ -219,7 +219,7 @@ trait AccountBase
|
||||||
public function testGetAccountSessions($data):array
|
public function testGetAccountSessions($data):array
|
||||||
{
|
{
|
||||||
$session = (isset($data['session'])) ? $data['session'] : '';
|
$session = (isset($data['session'])) ? $data['session'] : '';
|
||||||
$sessionUid = (isset($data['sessionUid'])) ? $data['sessionUid'] : '';
|
$sessionId = (isset($data['sessionId'])) ? $data['sessionId'] : '';
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Test for SUCCESS
|
* Test for SUCCESS
|
||||||
|
@ -235,7 +235,7 @@ trait AccountBase
|
||||||
$this->assertIsArray($response['body']);
|
$this->assertIsArray($response['body']);
|
||||||
$this->assertNotEmpty($response['body']);
|
$this->assertNotEmpty($response['body']);
|
||||||
$this->assertCount(1, $response['body']);
|
$this->assertCount(1, $response['body']);
|
||||||
$this->assertEquals($sessionUid, $response['body'][0]['$uid']);
|
$this->assertEquals($sessionId, $response['body'][0]['$uid']);
|
||||||
|
|
||||||
$this->assertIsArray($response['body'][0]['OS']);
|
$this->assertIsArray($response['body'][0]['OS']);
|
||||||
$this->assertEquals('Windows', $response['body'][0]['OS']['name']);
|
$this->assertEquals('Windows', $response['body'][0]['OS']['name']);
|
||||||
|
|
Loading…
Reference in a new issue