summaryrefslogtreecommitdiff
path: root/frontend/gamma/tests/tests/Clipperz/KeyValueObjectStore.test.js
Side-by-side diff
Diffstat (limited to 'frontend/gamma/tests/tests/Clipperz/KeyValueObjectStore.test.js') (more/less context) (ignore whitespace changes)
-rw-r--r--frontend/gamma/tests/tests/Clipperz/KeyValueObjectStore.test.js15
1 files changed, 6 insertions, 9 deletions
diff --git a/frontend/gamma/tests/tests/Clipperz/KeyValueObjectStore.test.js b/frontend/gamma/tests/tests/Clipperz/KeyValueObjectStore.test.js
index 53cf5d3..ac56386 100644
--- a/frontend/gamma/tests/tests/Clipperz/KeyValueObjectStore.test.js
+++ b/frontend/gamma/tests/tests/Clipperz/KeyValueObjectStore.test.js
@@ -1,120 +1,117 @@
/*
Copyright 2008-2011 Clipperz Srl
-This file is part of Clipperz's Javascript Crypto Library.
-Javascript Crypto Library provides web developers with an extensive
-and efficient set of cryptographic functions. The library aims to
-obtain maximum execution speed while preserving modularity and
-reusability.
+This file is part of Clipperz Community Edition.
+Clipperz Community Edition is an online password manager.
For further information about its features and functionalities please
-refer to http://www.clipperz.com
+refer to http://www.clipperz.com.
-* Javascript Crypto Library is free software: you can redistribute
+* Clipperz Community Edition is free software: you can redistribute
it and/or modify it under the terms of the GNU Affero General Public
License as published by the Free Software Foundation, either version
3 of the License, or (at your option) any later version.
-* Javascript Crypto Library is distributed in the hope that it will
+* Clipperz Community Edition is distributed in the hope that it will
be useful, but WITHOUT ANY WARRANTY; without even the implied
warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
See the GNU Affero General Public License for more details.
* You should have received a copy of the GNU Affero General Public
- License along with Javascript Crypto Library. If not, see
+ License along with Clipperz Community Edition. If not, see
<http://www.gnu.org/licenses/>.
*/
var tests = {
//-------------------------------------------------------------------------
'simple_tests': function() {
var deferredResult;
deferredResult = new Clipperz.Async.Deferred("simple_tests", {trace:false});
deferredResult.addCallback(function() {
var objectStore;
objectStore = new Clipperz.KeyValueObjectStore();
ok(objectStore != null, "created an object store");
objectStore.setValue('key', "value");
is(objectStore.getValue('key'), "value", "can store and read a value to a simple key");
objectStore.setValue('key', "overwritten value");
is(objectStore.getValue('key'), "overwritten value", "using the same key overwrites the previous value");
objectStore.setValue('record.keys', [1, 2, 3]);
is(
MochiKit.Base.compare(objectStore.getValue('record'), {'keys': [1,2,3]}),
0,
"getting a partial key returns the whole content associate with that key"
);
is(
MochiKit.Base.compare(objectStore.getValue('record.keys'), [1,2,3]),
0,
"accessing data using a key.path return the matching content"
);
is(
MochiKit.Base.compare(objectStore.getValue('record.keys.1'), 2),
0,
"accessing data using a key.path return the matching content, even inside an array"
);
is(
objectStore.setValue('key', "value"),
"value",
"setting a value return the value itself, as a convenience to chain deferred methods"
);
is(
objectStore.getValue('not_set_key'),
null,
"accessing a previously undefined key will return null"
);
is(
objectStore.getValue('record.not_set_key'),
null,
"accessing a previously undefined key will return null, even if part of the path is defined"
);
is(
objectStore.getValue('not_set_path.not_set_key'),
null,
"accessing a previously undefined key will return null, even if using a completely undefined path"
);
objectStore.removeAllData();
is(
objectStore.getValue('key'),
null,
"getting a value after a 'removeAllData' return no value"
);
});
deferredResult.callback();
return deferredResult;
},
//-------------------------------------------------------------------------
'simple_deferredGetOrSet_test': function () {
var deferredResult;
var objectStore;
var testValue;
objectStore = new Clipperz.KeyValueObjectStore();
testValue = "nifty test value";
deferredResult = new Clipperz.Async.Deferred("simple_deferredGetOrSet_test", {trace:false});
deferredResult.addMethod(objectStore, 'setValue', 'key', testValue);
deferredResult.addMethod(objectStore, 'deferredGetOrSet', 'key', function() {return testValue});
deferredResult.addCallback(function(aResult) {
SimpleTest.is(aResult, testValue, "deferredGetOrSet works when accessing data already present on the object store");
})
deferredResult.callback();
},