Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
S
slapos.core
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Lisa Casino
slapos.core
Commits
42bdbc93
Commit
42bdbc93
authored
Apr 20, 2012
by
Thomas Lechauve
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Fix: keeping context in ajax request
Also modified all tests to use slapos plugin new structure
parent
674bb1bc
Changes
2
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
116 additions
and
115 deletions
+116
-115
jQuery/static/js/slapOs.js
jQuery/static/js/slapOs.js
+30
-27
jQuery/static/js/test.js
jQuery/static/js/test.js
+86
-88
No files found.
jQuery/static/js/slapOs.js
View file @
42bdbc93
(
function
(
$
)
{
;
(
function
(
$
)
{
var
methods
=
{
defaults
:
{
host
:
''
},
init
:
function
(
options
){
var
settings
=
$
.
extend
({
'
host
'
:
''
},
options
);
return
this
.
each
(
function
(){
methods
.
config
=
$
.
extend
({},
methods
.
defaults
,
methods
.
options
,
methods
.
metadata
);
methods
[
'
store
'
]
=
Modernizr
.
localstorage
?
methods
.
lStore
:
methods
.
cStore
;
methods
.
store
(
'
host
'
,
methods
.
config
.
host
);
$
(
this
).
slapos
(
'
store
'
,
'
host
'
,
settings
.
host
);
});
},
...
...
@@ -41,67 +44,68 @@
}
},
request
:
function
(
context
,
type
,
url
,
callback
,
statusEvent
,
data
){
request
:
function
(
type
,
url
,
callback
,
statusEvent
,
data
){
data
=
data
||
''
;
statusEvent
=
statusEvent
||
this
.
statusDefault
;
$
.
ajax
({
url
:
methods
.
store
(
'
host
'
)
+
url
,
dataType
:
'
json
'
,
data
:
data
,
context
:
context
,
type
:
type
,
statusCode
:
statusEvent
}).
done
(
callback
);
return
this
.
each
(
function
(){
$
.
ajax
({
url
:
methods
.
store
(
'
host
'
)
+
url
,
dataType
:
'
json
'
,
data
:
data
,
context
:
$
(
this
),
type
:
type
,
statusCode
:
statusEvent
,
success
:
callback
});
});
},
newInstance
:
function
(
data
,
callback
,
statusEvent
){
return
this
.
request
(
'
POST
'
,
'
/request
'
,
callback
,
statusEvent
,
data
);
return
$
(
this
).
slapos
(
'
request
'
,
'
POST
'
,
'
/request
'
,
callback
,
statusEvent
,
data
);
},
deleteInstance
:
function
(
id
,
callback
,
statusEvent
){
return
this
.
request
(
'
DELETE
'
,
'
/instance/
'
+
id
,
callback
,
statusEvent
);
return
$
(
this
).
slapos
(
'
request
'
,
'
DELETE
'
,
'
/instance/
'
+
id
,
callback
,
statusEvent
);
},
getInstance
:
function
(
id
,
callback
,
statusEvent
){
return
this
.
each
(
function
(){
methods
.
request
(
this
,
'
GET
'
,
'
/instance/
'
+
id
,
callback
,
statusEvent
);
});
return
$
(
this
).
slapos
(
'
request
'
,
'
GET
'
,
'
/instance/
'
+
id
,
callback
,
statusEvent
);
},
getInstanceCert
:
function
(
id
,
callback
,
statusEvent
){
return
this
.
request
(
'
GET
'
,
'
/instance/
'
+
id
+
'
/certificate
'
,
callback
,
statusEvent
);
return
$
(
this
).
slapos
(
'
request
'
,
'
GET
'
,
'
/instance/
'
+
id
+
'
/certificate
'
,
callback
,
statusEvent
);
},
bangInstance
:
function
(
id
,
log
,
callback
,
statusEvent
){
return
this
.
request
(
'
POST
'
,
'
/instance/
'
+
id
+
'
/bang
'
,
callback
,
statusEvent
,
log
);
return
$
(
this
).
slapos
(
'
request
'
,
'
POST
'
,
'
/instance/
'
+
id
+
'
/bang
'
,
callback
,
statusEvent
,
log
);
},
editInstance
:
function
(
id
,
data
,
callback
,
statusEvent
){
return
this
.
request
(
'
PUT
'
,
'
/instance/
'
+
id
,
callback
,
statusEvent
,
data
);
return
$
(
this
).
slapos
(
'
request
'
,
'
PUT
'
,
'
/instance/
'
+
id
,
callback
,
statusEvent
,
data
);
},
newComputer
:
function
(
data
,
callback
,
statusEvent
){
return
this
.
request
(
'
POST
'
,
'
/computer
'
,
callback
,
statusEvent
,
data
);
return
$
(
this
).
slapos
(
'
request
'
,
'
POST
'
,
'
/computer
'
,
callback
,
statusEvent
,
data
);
},
getComputer
:
function
(
id
,
callback
,
statusEvent
){
return
this
.
request
(
'
GET
'
,
'
/computer/
'
+
id
,
callback
,
statusEvent
);
return
$
(
this
).
slapos
(
'
request
'
,
'
GET
'
,
'
/computer/
'
+
id
,
callback
,
statusEvent
);
},
editComputer
:
function
(
id
,
data
,
callback
,
statusEvent
){
return
this
.
request
(
'
PUT
'
,
'
/computer/
'
+
id
,
callback
,
statusEvent
,
data
);
return
$
(
this
).
slapos
(
'
request
'
,
'
PUT
'
,
'
/computer/
'
+
id
,
callback
,
statusEvent
,
data
);
},
newSoftware
:
function
(
computerId
,
data
,
callback
,
statusEvent
){
return
this
.
request
(
'
POST
'
,
'
/computer/
'
+
computerId
+
'
/supply
'
,
callback
,
statusEvent
,
data
);
return
$
(
this
).
slapos
(
'
request
'
,
'
POST
'
,
'
/computer/
'
+
computerId
+
'
/supply
'
,
callback
,
statusEvent
,
data
);
},
bangComputer
:
function
(
id
,
log
,
callback
,
statusEvent
){
return
this
.
request
(
'
POST
'
,
'
/computer/
'
+
id
+
'
/bang
'
,
callback
,
statusEvent
,
log
);
return
$
(
this
).
slapos
(
'
request
'
,
'
POST
'
,
'
/computer/
'
+
id
+
'
/bang
'
,
callback
,
statusEvent
,
log
);
},
computerReport
:
function
(
id
,
data
,
callback
,
statusEvent
){
return
this
.
request
(
'
POST
'
,
'
/computer/
'
+
id
+
'
/report
'
,
callback
,
statusEvent
,
data
);
return
$
(
this
).
slapos
(
'
request
'
,
'
POST
'
,
'
/computer/
'
+
id
+
'
/report
'
,
callback
,
statusEvent
,
data
);
}
};
...
...
@@ -114,5 +118,4 @@
$
.
error
(
'
Method
'
+
method
+
'
does not exist on jQuery.slapos
'
);
}
};
})(
jQuery
);
\ No newline at end of file
jQuery/static/js/test.js
View file @
42bdbc93
$
(
function
(){
var
h
=
getParameterByName
(
"
login
"
);
var
slap
=
new
SlapOs
(
document
,
{
host
:
h
}).
init
();
$
(
document
).
slapos
();
module
(
"
Cross-domain Tests
"
);
test
(
"
200 response
"
,
function
(){
expect
(
1
);
stop
(
1
);
$
.
ajax
({
url
:
'
http://
192.168.242.92
:5000/200
'
,
url
:
'
http://
sheldy.com
:5000/200
'
,
complete
:
function
()
{
start
();
},
statusCode
:
{
200
:
function
(){
ok
(
true
,
"
should get 200 status
"
);}
,
200
:
function
(){
ok
(
true
,
"
should get 200 status
"
);}
}});
});
...
...
@@ -39,7 +38,7 @@ $(function(){
});
test
(
"
Requesting a new instance
"
,
function
(){
callback
=
this
.
spy
();
var
callback
=
this
.
spy
();
this
.
spy
(
jQuery
,
'
ajax
'
);
url
=
"
/request
"
;
...
...
@@ -47,59 +46,59 @@ $(function(){
response
=
[
201
,
this
.
header
,
JSON
.
stringify
(
responseBody
)];
this
.
server
.
respondWith
(
"
POST
"
,
url
,
response
);
slap
.
newInstance
(
''
,
callback
);
$
(
document
).
slapos
(
'
newInstance
'
,
''
,
callback
);
this
.
server
.
respond
();
equal
(
jQuery
.
ajax
.
getCall
(
0
).
args
[
0
].
url
,
slap
.
store
(
'
host
'
)
+
url
);
equal
(
jQuery
.
ajax
.
getCall
(
0
).
args
[
0
].
url
,
$
(
document
).
slapos
(
'
store
'
,
'
host
'
)
+
url
);
ok
(
callback
.
calledOnce
,
"
callback should be called
"
);
ok
(
callback
.
calledWith
(
responseBody
),
'
should return mainly id and status of an instance
'
);
});
test
(
"
Requesting a new instance - Fail
"
,
function
(){
callback
=
this
.
spy
();
var
callback
=
this
.
spy
();
this
.
spy
(
jQuery
,
'
ajax
'
);
url
=
"
/request
"
;
this
.
server
.
respondWith
(
"
POST
"
,
url
,
this
.
error
);
slap
.
newInstance
(
''
,
callback
);
$
(
document
).
slapos
(
'
newInstance
'
,
''
,
callback
);
this
.
server
.
respond
();
equal
(
jQuery
.
ajax
.
getCall
(
0
).
args
[
0
].
url
,
slap
.
store
(
'
host
'
)
+
url
);
equal
(
jQuery
.
ajax
.
getCall
(
0
).
args
[
0
].
url
,
$
(
document
).
slapos
(
'
store
'
,
'
host
'
)
+
url
);
ok
(
!
callback
.
calledOnce
,
"
callback should not be called
"
);
});
test
(
"
Deleting an instance
"
,
function
(){
callback
=
this
.
spy
();
var
callback
=
this
.
spy
();
this
.
spy
(
jQuery
,
'
ajax
'
);
response
=
[
202
,
this
.
header
,
''
];
this
.
server
.
respondWith
(
"
DELETE
"
,
/
\/
instance
\/(\w
+
)
/
,
response
);
slap
.
deleteInstance
(
'
id
'
,
callback
);
$
(
document
).
slapos
(
'
deleteInstance
'
,
'
id
'
,
callback
);
this
.
server
.
respond
();
equal
(
jQuery
.
ajax
.
getCall
(
0
).
args
[
0
].
url
,
slap
.
store
(
'
host
'
)
+
'
/instance/id
'
);
equal
(
jQuery
.
ajax
.
getCall
(
0
).
args
[
0
].
url
,
$
(
document
).
slapos
(
'
store
'
,
'
host
'
)
+
'
/instance/id
'
);
ok
(
callback
.
calledOnce
,
"
callback should be called
"
);
});
test
(
"
Deleting an instance - Fail
"
,
function
(){
callback
=
this
.
spy
();
var
callback
=
this
.
spy
();
this
.
spy
(
jQuery
,
'
ajax
'
);
this
.
server
.
respondWith
(
"
DELETE
"
,
/
\/
instance
\/(\w
+
)
/
,
this
.
error
);
slap
.
deleteInstance
(
'
id
'
,
callback
);
$
(
document
).
slapos
(
'
deleteInstance
'
,
'
id
'
,
callback
);
this
.
server
.
respond
();
equal
(
jQuery
.
ajax
.
getCall
(
0
).
args
[
0
].
url
,
slap
.
store
(
'
host
'
)
+
'
/instance/id
'
);
equal
(
jQuery
.
ajax
.
getCall
(
0
).
args
[
0
].
url
,
$
(
document
).
slapos
(
'
store
'
,
'
host
'
)
+
'
/instance/id
'
);
ok
(
!
callback
.
calledOnce
,
"
callback should not be called
"
);
});
test
(
"
Get instance information
"
,
function
(){
callback
=
this
.
spy
();
var
callback
=
this
.
spy
();
this
.
spy
(
jQuery
,
'
ajax
'
);
responseBody
=
[{
instance_id
:
"
anId
"
,
status
:
"
start
"
,
software_release
:
"
http://example.com/example.cfg
"
,
...
...
@@ -107,328 +106,327 @@ $(function(){
custom_connection_parameter_1
:
"
foo
"
,
custom_connection_parameter_2
:
"
bar
"
},
parameter
:
{
Custom1
:
"
one string
"
,
Custom2
:
"
one float
"
,
Custom3
:
[
"
abc
"
,
"
def
"
]
,
},
sla
:
{
computer_id
:
"
COMP-0
"
,
},
Custom3
:
[
"
abc
"
,
"
def
"
]},
sla
:
{
computer_id
:
"
COMP-0
"
},
children_id_list
:
[
"
subinstance1
"
,
"
subinstance2
"
],
partition
:
{
public_ip
:
[
"
::1
"
,
"
91.121.63.94
"
],
private_ip
:
[
"
127.0.0.1
"
],
tap_interface
:
"
tap2
"
,},
}];
tap_interface
:
"
tap2
"
}
}];
response
=
[
200
,
this
.
header
,
JSON
.
stringify
(
responseBody
)];
this
.
server
.
respondWith
(
"
GET
"
,
/
\/
instance
\/(\w
+
)
/
,
response
);
slap
.
getInstance
(
'
id
'
,
callback
);
$
(
document
).
slapos
(
'
getInstance
'
,
'
id
'
,
callback
);
this
.
server
.
respond
();
equal
(
jQuery
.
ajax
.
getCall
(
0
).
args
[
0
].
url
,
slap
.
store
(
'
host
'
)
+
'
/instance/id
'
);
equal
(
jQuery
.
ajax
.
getCall
(
0
).
args
[
0
].
url
,
$
(
document
).
slapos
(
'
store
'
,
'
host
'
)
+
'
/instance/id
'
);
ok
(
callback
.
calledOnce
,
"
callback should be call
"
);
ok
(
callback
.
calledWith
(
responseBody
),
"
should return informations of an instance
"
);
});
test
(
"
Get instance information - Fail
"
,
function
(){
callback
=
this
.
spy
();
var
callback
=
this
.
spy
();
this
.
spy
(
jQuery
,
'
ajax
'
);
this
.
server
.
respondWith
(
"
GET
"
,
/
\/
instance
\/(\w
+
)
/
,
this
.
error
);
slap
.
getInstance
(
'
id
'
,
callback
);
$
(
document
).
slapos
(
'
getInstance
'
,
'
id
'
,
callback
);
this
.
server
.
respond
();
equal
(
jQuery
.
ajax
.
getCall
(
0
).
args
[
0
].
url
,
slap
.
store
(
'
host
'
)
+
'
/instance/id
'
);
equal
(
jQuery
.
ajax
.
getCall
(
0
).
args
[
0
].
url
,
$
(
document
).
slapos
(
'
store
'
,
'
host
'
)
+
'
/instance/id
'
);
ok
(
!
callback
.
calledOnce
,
"
callback should not be called
"
);
});
test
(
"
Get instance authentication certificates
"
,
function
(){
callback
=
this
.
spy
();
var
callback
=
this
.
spy
();
this
.
spy
(
jQuery
,
'
ajax
'
);
responseBody
=
[{
ssl_key
:
"
-----BEGIN PRIVATE KEY-----
\n
MIIEvgIBADAN...h2VSZRlSN
\n
-----END PRIVATE KEY-----
"
,
ssl_certificate
:
"
-----BEGIN CERTIFICATE-----
\n
MIIEAzCCAuugAwIBAgICHQI...ulYdXJabLOeCOA=
\n
-----END CERTIFICATE-----
"
,
}];
ssl_certificate
:
"
-----BEGIN CERTIFICATE-----
\n
MIIEAzCCAuugAwIBAgICHQI...ulYdXJabLOeCOA=
\n
-----END CERTIFICATE-----
"
}];
response
=
[
200
,
this
.
header
,
JSON
.
stringify
(
responseBody
)];
this
.
server
.
respondWith
(
"
GET
"
,
/
\/
instance
\/(\w
+
)\/
certificate/
,
response
);
slap
.
getInstanceCert
(
'
id
'
,
callback
);
$
(
document
).
slapos
(
'
getInstanceCert
'
,
'
id
'
,
callback
);
this
.
server
.
respond
();
equal
(
jQuery
.
ajax
.
getCall
(
0
).
args
[
0
].
url
,
slap
.
store
(
'
host
'
)
+
'
/instance/id/certificate
'
);
equal
(
jQuery
.
ajax
.
getCall
(
0
).
args
[
0
].
url
,
$
(
document
).
slapos
(
'
store
'
,
'
host
'
)
+
'
/instance/id/certificate
'
);
ok
(
callback
.
calledOnce
,
"
callback call
"
);
ok
(
callback
.
calledWith
(
responseBody
));
});
test
(
"
Get instance authentication certificates - Fail
"
,
function
(){
callback
=
this
.
spy
();
var
callback
=
this
.
spy
();
this
.
spy
(
jQuery
,
'
ajax
'
);
this
.
server
.
respondWith
(
"
GET
"
,
/
\/
instance
\/(\w
+
)\/
certificate/
,
this
.
error
);
slap
.
getInstanceCert
(
'
id
'
,
callback
);
$
(
document
).
slapos
(
'
getInstanceCert
'
,
'
id
'
,
callback
);
this
.
server
.
respond
();
equal
(
jQuery
.
ajax
.
getCall
(
0
).
args
[
0
].
url
,
slap
.
store
(
'
host
'
)
+
'
/instance/id/certificate
'
);
equal
(
jQuery
.
ajax
.
getCall
(
0
).
args
[
0
].
url
,
$
(
document
).
slapos
(
'
store
'
,
'
host
'
)
+
'
/instance/id/certificate
'
);
ok
(
!
callback
.
calledOnce
,
"
callback should not be called
"
);
});
test
(
"
Bang instance
"
,
function
(){
callback
=
this
.
spy
();
var
callback
=
this
.
spy
();
this
.
spy
(
jQuery
,
'
ajax
'
);
response
=
[
200
,
this
.
header
,
''
];
this
.
server
.
respondWith
(
"
POST
"
,
/
\/
instance
\/(\w
+
)\/
bang/
,
response
);
data
=
''
;
slap
.
bangInstance
(
'
id
'
,
data
,
callback
);
$
(
document
).
slapos
(
'
bangInstance
'
,
'
id
'
,
data
,
callback
);
this
.
server
.
respond
();
equal
(
jQuery
.
ajax
.
getCall
(
0
).
args
[
0
].
url
,
slap
.
store
(
'
host
'
)
+
'
/instance/id/bang
'
);
equal
(
jQuery
.
ajax
.
getCall
(
0
).
args
[
0
].
url
,
$
(
document
).
slapos
(
'
store
'
,
'
host
'
)
+
'
/instance/id/bang
'
);
ok
(
callback
.
calledOnce
,
"
callback should be called
"
);
});
test
(
"
Bang instance - Fail
"
,
function
(){
callback
=
this
.
spy
();
var
callback
=
this
.
spy
();
this
.
spy
(
jQuery
,
'
ajax
'
);
this
.
server
.
respondWith
(
"
POST
"
,
/
\/
instance
\/(\w
+
)\/
bang/
,
this
.
error
);
slap
.
bangInstance
(
'
id
'
,
data
,
callback
);
$
(
document
).
slapos
(
'
bangInstance
'
,
'
id
'
,
data
,
callback
);
this
.
server
.
respond
();
equal
(
jQuery
.
ajax
.
getCall
(
0
).
args
[
0
].
url
,
slap
.
store
(
'
host
'
)
+
'
/instance/id/bang
'
);
equal
(
jQuery
.
ajax
.
getCall
(
0
).
args
[
0
].
url
,
$
(
document
).
slapos
(
'
store
'
,
'
host
'
)
+
'
/instance/id/bang
'
);
ok
(
!
callback
.
calledOnce
,
"
callback should not be called
"
);
});
test
(
"
Modifying instance
"
,
function
(){
callback
=
this
.
spy
();
var
callback
=
this
.
spy
();
this
.
spy
(
jQuery
,
'
ajax
'
);
response
=
[
200
,
this
.
header
,
''
];
this
.
server
.
respondWith
(
"
PUT
"
,
/
\/
instance
\/(\w
+
)
/
,
response
);
data
=
''
;
slap
.
editInstance
(
'
id
'
,
data
,
callback
);
$
(
document
).
slapos
(
'
editInstance
'
,
'
id
'
,
data
,
callback
);
this
.
server
.
respond
();
equal
(
jQuery
.
ajax
.
getCall
(
0
).
args
[
0
].
url
,
slap
.
store
(
'
host
'
)
+
'
/instance/id
'
);
equal
(
jQuery
.
ajax
.
getCall
(
0
).
args
[
0
].
url
,
$
(
document
).
slapos
(
'
store
'
,
'
host
'
)
+
'
/instance/id
'
);
ok
(
callback
.
calledOnce
,
"
callback should be called
"
);
});
test
(
"
Modifying instance - Fail
"
,
function
(){
callback
=
this
.
spy
();
var
callback
=
this
.
spy
();
this
.
spy
(
jQuery
,
'
ajax
'
);
this
.
server
.
respondWith
(
"
PUT
"
,
/
\/
instance
\/(\w
+
)
/
,
this
.
error
);
slap
.
editInstance
(
'
id
'
,
''
,
callback
);
$
(
document
).
slapos
(
'
editInstance
'
,
'
id
'
,
''
,
callback
);
this
.
server
.
respond
();
equal
(
jQuery
.
ajax
.
getCall
(
0
).
args
[
0
].
url
,
slap
.
store
(
'
host
'
)
+
'
/instance/id
'
);
equal
(
jQuery
.
ajax
.
getCall
(
0
).
args
[
0
].
url
,
$
(
document
).
slapos
(
'
store
'
,
'
host
'
)
+
'
/instance/id
'
);
ok
(
!
callback
.
calledOnce
,
"
callback should not be called
"
);
});
test
(
"
Register a new computer
"
,
function
(){
callback
=
this
.
spy
();
var
callback
=
this
.
spy
();
this
.
spy
(
jQuery
,
'
ajax
'
);
responseBody
=
[{
computer_id
:
"
COMP-0
"
,
ssl_key
:
"
-----BEGIN PRIVATE KEY-----
\n
MIIEvgIBADAN...h2VSZRlSN
\n
-----END PRIVATE KEY-----
"
,
ssl_certificate
:
"
-----BEGIN CERTIFICATE-----
\n
MIIEAzCCAuugAwIBAgICHQI...ulYdXJabLOeCOA=
\n
-----END CERTIFICATE-----
"
,
}];
ssl_certificate
:
"
-----BEGIN CERTIFICATE-----
\n
MIIEAzCCAuugAwIBAgICHQI...ulYdXJabLOeCOA=
\n
-----END CERTIFICATE-----
"
}];
response
=
[
201
,
this
.
header
,
JSON
.
stringify
(
responseBody
)];
this
.
server
.
respondWith
(
"
POST
"
,
"
/computer
"
,
response
);
slap
.
newComputer
(
''
,
callback
);
$
(
document
).
slapos
(
'
newComputer
'
,
''
,
callback
);
this
.
server
.
respond
();
equal
(
jQuery
.
ajax
.
getCall
(
0
).
args
[
0
].
url
,
slap
.
store
(
'
host
'
)
+
'
/computer
'
);
equal
(
jQuery
.
ajax
.
getCall
(
0
).
args
[
0
].
url
,
$
(
document
).
slapos
(
'
store
'
,
'
host
'
)
+
'
/computer
'
);
ok
(
callback
.
calledOnce
,
"
callback should be called
"
);
ok
(
callback
.
calledWith
(
responseBody
),
"
should return a computerID, ssl key and ssl certificates
"
);
});
test
(
"
Register a new computer - Fail
"
,
function
(){
callback
=
this
.
spy
();
var
callback
=
this
.
spy
();
this
.
spy
(
jQuery
,
'
ajax
'
);
this
.
server
.
respondWith
(
"
POST
"
,
"
/computer
"
,
this
.
error
);
slap
.
newComputer
(
''
,
callback
);
$
(
document
).
slapos
(
'
newComputer
'
,
''
,
callback
);
this
.
server
.
respond
();
equal
(
jQuery
.
ajax
.
getCall
(
0
).
args
[
0
].
url
,
slap
.
store
(
'
host
'
)
+
'
/computer
'
);
equal
(
jQuery
.
ajax
.
getCall
(
0
).
args
[
0
].
url
,
$
(
document
).
slapos
(
'
store
'
,
'
host
'
)
+
'
/computer
'
);
ok
(
!
callback
.
calledOnce
,
"
callback should not be called
"
);
});
test
(
"
Getting computer information
"
,
function
(){
callback
=
this
.
spy
();
var
callback
=
this
.
spy
();
this
.
spy
(
jQuery
,
'
ajax
'
);
responseBody
=
[{
computer_id
:
"
COMP-0
"
,
software
:
[{
software_release
:
"
http://example.com/example.cfg
"
,
status
:
"
install
"
}
,
],
status
:
"
install
"
}],
partition
:
[{
title
:
"
slapart1
"
,
instance_id
:
"
foo
"
,
status
:
"
start
"
,
software_release
:
"
http://example.com/example.cfg
"
},
{
title
:
"
slapart2
"
,
instance_id
:
"
bar
"
,
status
:
"
stop
"
,
software_release
:
"
http://example.com/example.cfg
"
}
,],
}];
software_release
:
"
http://example.com/example.cfg
"
}
]
}];
response
=
[
200
,
this
.
header
,
JSON
.
stringify
(
responseBody
)];
this
.
server
.
respondWith
(
"
GET
"
,
/
\/
computer
\/(\w
+
)
/
,
response
);
slap
.
getComputer
(
'
id
'
,
callback
);
$
(
document
).
slapos
(
'
getComputer
'
,
'
id
'
,
callback
);
this
.
server
.
respond
();
equal
(
jQuery
.
ajax
.
getCall
(
0
).
args
[
0
].
url
,
slap
.
store
(
'
host
'
)
+
'
/computer/id
'
);
equal
(
jQuery
.
ajax
.
getCall
(
0
).
args
[
0
].
url
,
$
(
document
).
slapos
(
'
store
'
,
'
host
'
)
+
'
/computer/id
'
);
ok
(
callback
.
calledOnce
,
"
callback should be called
"
);
ok
(
callback
.
calledWith
(
responseBody
),
"
should return informations of a computer
"
);
});
test
(
"
Getting computer information - Fail
"
,
function
(){
callback
=
this
.
spy
();
var
callback
=
this
.
spy
();
this
.
spy
(
jQuery
,
'
ajax
'
);
this
.
server
.
respondWith
(
"
GET
"
,
/
\/
computer
\/(\w
+
)
/
,
this
.
error
);
slap
.
getComputer
(
'
id
'
,
callback
);
$
(
document
).
slapos
(
'
getComputer
'
,
'
id
'
,
callback
);
this
.
server
.
respond
();
equal
(
jQuery
.
ajax
.
getCall
(
0
).
args
[
0
].
url
,
slap
.
store
(
'
host
'
)
+
'
/computer/id
'
);
equal
(
jQuery
.
ajax
.
getCall
(
0
).
args
[
0
].
url
,
$
(
document
).
slapos
(
'
store
'
,
'
host
'
)
+
'
/computer/id
'
);
ok
(
!
callback
.
calledOnce
,
"
callback should not be called
"
);
});
test
(
"
Modifying computer
"
,
function
(){
callback
=
this
.
spy
();
var
callback
=
this
.
spy
();
this
.
spy
(
jQuery
,
'
ajax
'
);
response
=
[
200
,
this
.
header
,
''
];
this
.
server
.
respondWith
(
"
PUT
"
,
/
\/
computer
\/(\w
+
)
/
,
response
);
slap
.
editComputer
(
'
id
'
,
''
,
callback
);
$
(
document
).
slapos
(
'
editComputer
'
,
'
id
'
,
''
,
callback
);
this
.
server
.
respond
();
equal
(
jQuery
.
ajax
.
getCall
(
0
).
args
[
0
].
url
,
slap
.
store
(
'
host
'
)
+
'
/computer/id
'
);
equal
(
jQuery
.
ajax
.
getCall
(
0
).
args
[
0
].
url
,
$
(
document
).
slapos
(
'
store
'
,
'
host
'
)
+
'
/computer/id
'
);
ok
(
callback
.
calledOnce
,
"
callback should be called
"
);
});
test
(
"
Modifying computer - Fail
"
,
function
(){
callback
=
this
.
spy
();
var
callback
=
this
.
spy
();
this
.
spy
(
jQuery
,
'
ajax
'
);
this
.
server
.
respondWith
(
"
PUT
"
,
/
\/
computer
\/(\w
+
)
/
,
this
.
error
);
slap
.
editComputer
(
'
id
'
,
''
,
callback
);
$
(
document
).
slapos
(
'
editComputer
'
,
'
id
'
,
''
,
callback
);
this
.
server
.
respond
();
equal
(
jQuery
.
ajax
.
getCall
(
0
).
args
[
0
].
url
,
slap
.
store
(
'
host
'
)
+
'
/computer/id
'
);
equal
(
jQuery
.
ajax
.
getCall
(
0
).
args
[
0
].
url
,
$
(
document
).
slapos
(
'
store
'
,
'
host
'
)
+
'
/computer/id
'
);
ok
(
!
callback
.
calledOnce
,
"
callback should not be called
"
);
});
test
(
"
Supplying new software
"
,
function
(){
callback
=
this
.
spy
();
var
callback
=
this
.
spy
();
this
.
spy
(
jQuery
,
'
ajax
'
);
response
=
[
200
,
this
.
header
,
''
];
this
.
server
.
respondWith
(
"
POST
"
,
/
\/
computer
\/(\w
+
)\/
supply/
,
response
);
data
=
''
;
slap
.
newSoftware
(
'
id
'
,
data
,
callback
);
$
(
document
).
slapos
(
'
newSoftware
'
,
'
id
'
,
data
,
callback
);
this
.
server
.
respond
();
equal
(
jQuery
.
ajax
.
getCall
(
0
).
args
[
0
].
url
,
slap
.
store
(
'
host
'
)
+
'
/computer/id/supply
'
);
equal
(
jQuery
.
ajax
.
getCall
(
0
).
args
[
0
].
url
,
$
(
document
).
slapos
(
'
store
'
,
'
host
'
)
+
'
/computer/id/supply
'
);
ok
(
callback
.
calledOnce
,
"
callback should be called
"
);
});
test
(
"
Supplying new software - Fail
"
,
function
(){
callback
=
this
.
spy
();
var
callback
=
this
.
spy
();
this
.
spy
(
jQuery
,
'
ajax
'
);
this
.
server
.
respondWith
(
"
POST
"
,
/
\/
computer
\/(\w
+
)\/
supply/
,
this
.
error
);
slap
.
newSoftware
(
'
id
'
,
''
,
callback
);
$
(
document
).
slapos
(
'
newSoftware
'
,
'
id
'
,
''
,
callback
);
this
.
server
.
respond
();
equal
(
jQuery
.
ajax
.
getCall
(
0
).
args
[
0
].
url
,
slap
.
store
(
'
host
'
)
+
'
/computer/id/supply
'
);
equal
(
jQuery
.
ajax
.
getCall
(
0
).
args
[
0
].
url
,
$
(
document
).
slapos
(
'
store
'
,
'
host
'
)
+
'
/computer/id/supply
'
);
ok
(
!
callback
.
calledOnce
,
"
callback should not be called
"
);
});
test
(
"
Bang computer
"
,
function
(){
callback
=
this
.
spy
();
var
callback
=
this
.
spy
();
this
.
spy
(
jQuery
,
'
ajax
'
);
response
=
[
200
,
this
.
header
,
''
];
this
.
server
.
respondWith
(
"
POST
"
,
/
\/
computer
\/(\w
+
)\/
bang/
,
response
);
data
=
''
;
slap
.
bangComputer
(
'
id
'
,
data
,
callback
);
$
(
document
).
slapos
(
'
bangComputer
'
,
'
id
'
,
data
,
callback
);
this
.
server
.
respond
();
equal
(
jQuery
.
ajax
.
getCall
(
0
).
args
[
0
].
url
,
slap
.
store
(
'
host
'
)
+
'
/computer/id/bang
'
);
equal
(
jQuery
.
ajax
.
getCall
(
0
).
args
[
0
].
url
,
$
(
document
).
slapos
(
'
store
'
,
'
host
'
)
+
'
/computer/id/bang
'
);
ok
(
callback
.
calledOnce
,
"
callback should be called
"
);
});
test
(
"
Bang computer - Fail
"
,
function
(){
callback
=
this
.
spy
();
var
callback
=
this
.
spy
();
this
.
spy
(
jQuery
,
'
ajax
'
);
this
.
server
.
respondWith
(
"
POST
"
,
/
\/
computer
\/(\w
+
)\/
bang/
,
this
.
error
);
slap
.
bangComputer
(
'
id
'
,
''
,
callback
);
$
(
document
).
slapos
(
'
bangComputer
'
,
'
id
'
,
''
,
callback
);
this
.
server
.
respond
();
equal
(
jQuery
.
ajax
.
getCall
(
0
).
args
[
0
].
url
,
slap
.
store
(
'
host
'
)
+
'
/computer/id/bang
'
);
equal
(
jQuery
.
ajax
.
getCall
(
0
).
args
[
0
].
url
,
$
(
document
).
slapos
(
'
store
'
,
'
host
'
)
+
'
/computer/id/bang
'
);
ok
(
!
callback
.
calledOnce
,
"
callback should not be called
"
);
});
test
(
"
Report computer usage
"
,
function
(){
callback
=
this
.
spy
();
var
callback
=
this
.
spy
();
this
.
spy
(
jQuery
,
'
ajax
'
);
response
=
[
200
,
this
.
header
,
''
];
this
.
server
.
respondWith
(
"
POST
"
,
/
\/
computer
\/(\w
+
)\/
report/
,
response
);
data
=
''
;
slap
.
computerReport
(
'
id
'
,
data
,
callback
);
$
(
document
).
slapos
(
'
computerReport
'
,
'
id
'
,
data
,
callback
);
this
.
server
.
respond
();
equal
(
jQuery
.
ajax
.
getCall
(
0
).
args
[
0
].
url
,
slap
.
store
(
'
host
'
)
+
'
/computer/id/report
'
);
equal
(
jQuery
.
ajax
.
getCall
(
0
).
args
[
0
].
url
,
$
(
document
).
slapos
(
'
store
'
,
'
host
'
)
+
'
/computer/id/report
'
);
ok
(
callback
.
calledOnce
,
"
callback call
"
);
});
test
(
"
Report computer usage - Fail
"
,
function
(){
callback
=
this
.
spy
();
var
callback
=
this
.
spy
();
this
.
spy
(
jQuery
,
'
ajax
'
);
this
.
server
.
respondWith
(
"
POST
"
,
/
\/
computer
\/(\w
+
)\/
report/
,
this
.
error
);
slap
.
computerReport
(
'
id
'
,
''
,
callback
);
$
(
document
).
slapos
(
'
computerReport
'
,
'
id
'
,
''
,
callback
);
this
.
server
.
respond
();
equal
(
jQuery
.
ajax
.
getCall
(
0
).
args
[
0
].
url
,
slap
.
store
(
'
host
'
)
+
'
/computer/id/report
'
);
equal
(
jQuery
.
ajax
.
getCall
(
0
).
args
[
0
].
url
,
$
(
document
).
slapos
(
'
store
'
,
'
host
'
)
+
'
/computer/id/report
'
);
ok
(
!
callback
.
calledOnce
,
"
callback should not be called
"
);
});
module
(
"
Common Tests
"
);
test
(
"
Check if host has been saved
"
,
function
(){
newS
=
new
SlapOs
(
document
,
{
host
:
"
http://foo.com
"
}).
init
(
);
equal
(
newS
.
store
(
'
host
'
),
"
http://foo.com
"
,
"
should contains host whatever is the method
"
)
$
(
document
).
slapos
({
host
:
"
http://foo.com
"
}
);
equal
(
$
(
document
).
slapos
(
'
store
'
,
'
host
'
),
"
http://foo.com
"
,
"
should contains host whatever is the method
"
)
});
test
(
"
Modifying host after initialisation at start
"
,
function
(){
newS
=
new
SlapOs
(
document
,
{
host
:
"
http://foo.com
"
}).
init
();
newS
.
store
(
'
host
'
,
'
http://examples.com
'
);
equal
(
newS
.
store
(
'
host
'
),
"
http://examples.com
"
,
"
should contains modified host
"
)
$
(
document
).
slapos
(
'
store
'
,
'
host
'
,
'
http://examples.com
'
);
equal
(
$
(
document
).
slapos
(
'
store
'
,
'
host
'
),
"
http://examples.com
"
,
"
should contains modified host
"
)
});
});
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment