Test for secureStorageService on mobile and browser.
This commit is contained in:
parent
f4642b1953
commit
18581e9608
1 changed files with 206 additions and 0 deletions
|
|
@ -1,3 +1,105 @@
|
|||
describe('secureStorageService in browser', function(){
|
||||
var localStorage,
|
||||
sss;
|
||||
|
||||
beforeEach(function(){
|
||||
module('ngLodash');
|
||||
module('copayApp.services');
|
||||
|
||||
localStorage = {
|
||||
get: jasmine.createSpy(),
|
||||
set: jasmine.createSpy()
|
||||
};
|
||||
|
||||
platformInfoStub = {
|
||||
};
|
||||
|
||||
module(function($provide) {
|
||||
$provide.value('localStorageService', localStorage);
|
||||
$provide.value('platformInfo', platformInfoStub);
|
||||
});
|
||||
|
||||
inject(function($injector){
|
||||
sss = $injector.get('secureStorageService');
|
||||
});
|
||||
|
||||
});
|
||||
|
||||
it('get fails', function() {
|
||||
var error, key, result;
|
||||
|
||||
localStorage.get.and.callFake(function(k, cb){
|
||||
key = k;
|
||||
cb(new Error('Get error.'), null);
|
||||
});
|
||||
|
||||
sss.get('a1234', function(e, res) {
|
||||
error = e;
|
||||
result = res;
|
||||
});
|
||||
|
||||
expect(error.message).toBe('Get error.');
|
||||
expect(result).toBeFalsy();
|
||||
expect(key).toBe('a1234:desiredSecure');
|
||||
});
|
||||
|
||||
it('get succeeds', function() {
|
||||
var error, key, result;
|
||||
|
||||
localStorage.get.and.callFake(function(k, cb){
|
||||
key = k;
|
||||
cb(null, 'The result 1.');
|
||||
});
|
||||
|
||||
sss.get('a123', function(e, res) {
|
||||
error = e;
|
||||
result = res;
|
||||
});
|
||||
|
||||
expect(error).toBeFalsy();
|
||||
expect(result).toBe('The result 1.');
|
||||
expect(key).toBe('a123:desiredSecure');
|
||||
});
|
||||
|
||||
it('set fails', function() {
|
||||
var error, key, value;
|
||||
|
||||
localStorage.set.and.callFake(function(k, v, cb){
|
||||
key = k;
|
||||
value = v;
|
||||
cb(new Error('Set error.'));
|
||||
});
|
||||
|
||||
sss.set('a12345', 'The value 1.', function(e) {
|
||||
error = e;
|
||||
});
|
||||
|
||||
expect(error.message).toBe('Set error.');
|
||||
expect(key).toBe('a12345:desiredSecure');
|
||||
expect(value).toBe('The value 1.');
|
||||
});
|
||||
|
||||
it('set succeeds', function() {
|
||||
var error, key, value;
|
||||
|
||||
localStorage.set.and.callFake(function(k, v, cb){
|
||||
key = k;
|
||||
value = v;
|
||||
cb(null);
|
||||
});
|
||||
|
||||
sss.set('ab123', 'The value 2.', function(e) {
|
||||
error = e;
|
||||
});
|
||||
|
||||
expect(error).toBeFalsy();
|
||||
expect(key).toBe('ab123:desiredSecure');
|
||||
expect(value).toBe('The value 2.')
|
||||
});
|
||||
|
||||
});
|
||||
|
||||
|
||||
describe('secureStorageService on desktop', function(){
|
||||
var desktopSss,
|
||||
sss;
|
||||
|
|
@ -99,4 +201,108 @@ describe('secureStorageService on desktop', function(){
|
|||
});
|
||||
|
||||
});
|
||||
|
||||
describe('secureStorageService on mobile', function(){
|
||||
var mobileSss,
|
||||
sss;
|
||||
|
||||
beforeEach(function(){
|
||||
module('ngLodash');
|
||||
module('copayApp.services');
|
||||
|
||||
mobileSss = {
|
||||
get: jasmine.createSpy(),
|
||||
set: jasmine.createSpy()
|
||||
};
|
||||
|
||||
platformInfoStub = {
|
||||
isMobile: true
|
||||
};
|
||||
|
||||
module(function($provide) {
|
||||
$provide.value('mobileSecureStorageService', mobileSss);
|
||||
$provide.value('platformInfo', platformInfoStub);
|
||||
});
|
||||
|
||||
inject(function($injector){
|
||||
sss = $injector.get('secureStorageService');
|
||||
});
|
||||
|
||||
});
|
||||
|
||||
it('get fails', function() {
|
||||
var error, key, result;
|
||||
|
||||
mobileSss.get.and.callFake(function(k, cb){
|
||||
key = k;
|
||||
cb(new Error('Get error.'), null);
|
||||
});
|
||||
|
||||
sss.get('a1234', function(e, res) {
|
||||
error = e;
|
||||
result = res;
|
||||
});
|
||||
|
||||
expect(error.message).toBe('Get error.');
|
||||
expect(result).toBeFalsy();
|
||||
expect(key).toBe('a1234');
|
||||
});
|
||||
|
||||
it('get succeeds', function() {
|
||||
var error, key, result;
|
||||
|
||||
mobileSss.get.and.callFake(function(k, cb){
|
||||
key = k;
|
||||
cb(null, 'The result 1.');
|
||||
});
|
||||
|
||||
sss.get('a123', function(e, res) {
|
||||
error = e;
|
||||
result = res;
|
||||
});
|
||||
|
||||
expect(error).toBeFalsy();
|
||||
expect(result).toBe('The result 1.');
|
||||
expect(key).toBe('a123');
|
||||
});
|
||||
|
||||
it('set fails', function() {
|
||||
var error, key, value;
|
||||
|
||||
mobileSss.set.and.callFake(function(k, v, cb){
|
||||
key = k;
|
||||
value = v;
|
||||
cb(new Error('Set error.'));
|
||||
});
|
||||
|
||||
sss.set('a12345', 'The value 1.', function(e) {
|
||||
error = e;
|
||||
});
|
||||
|
||||
expect(error.message).toBe('Set error.');
|
||||
expect(key).toBe('a12345');
|
||||
expect(value).toBe('The value 1.');
|
||||
});
|
||||
|
||||
it('set succeeds', function() {
|
||||
var error, key, value;
|
||||
|
||||
mobileSss.set.and.callFake(function(k, v, cb){
|
||||
key = k;
|
||||
value = v;
|
||||
cb(null);
|
||||
});
|
||||
|
||||
sss.set('ab123', 'The value 2.', function(e) {
|
||||
error = e;
|
||||
});
|
||||
|
||||
expect(error).toBeFalsy();
|
||||
expect(key).toBe('ab123');
|
||||
expect(value).toBe('The value 2.')
|
||||
});
|
||||
|
||||
});
|
||||
|
||||
|
||||
|
||||
Loading…
Add table
Add a link
Reference in a new issue