Bug/select wallet incomplete / Refactor wallet Services (#4159)

* Addressbook: display error if select an incomplete wallet

* Check if wallet is complete/needs_backup for Glidera and Coinbase

* Ref/create a walletService

* Ref. walletService

* Fix Glidera and Coinbase

* Removes txService

* Fix glidera connection for mobile. Fix bitcode for xcode

* Fix duplicated entry

* Revert "Bump bwc version 2.3.1"

* adds karma-mocha

* Refactor

* Refactor lock function

* Refactor reject, remove and broadcast tx

* add walletService tests WIP

* add walletService tests WIP 2

* merge

* update tests to mocha

* fix tests. Angular 1.5?

* Fix test

* Generate angular-bwc before testing

* Rever gitignore

* Wording
This commit is contained in:
Gustavo Maximiliano Cortez 2016-05-09 15:56:44 -03:00
commit 98471e952a
No known key found for this signature in database
GPG key ID: 15EDAD8D9F2EB1AF
27 changed files with 698 additions and 628 deletions

View file

@ -1,11 +0,0 @@
'use strict';
describe('sidebarController', function(){
var scope, controller;
beforeEach(angular.mock.module('copayApp.controllers'));
it('wallet selection', function(){
expect(true).not.toBeUndefined();
});
});

View file

@ -10,7 +10,7 @@ module.exports = function(config) {
// frameworks to use
// available frameworks: https://npmjs.org/browse/keyword/karma-adapter
frameworks: ['jasmine'],
frameworks: ['mocha', 'chai'],
// list of files / patterns to load in the browser
@ -20,16 +20,20 @@ module.exports = function(config) {
'bower_components/moment/min/moment-with-locales.js',
'bower_components/angular/angular.js',
'bower_components/angular-ui-router/release/angular-ui-router.js',
'bower_components/angular-foundation/mm-foundation.js',
'bower_components/angular-foundation/mm-foundation-tpls.js',
'bower_components/angular-animate/angular-animate.js',
'bower_components/angular-touch/angular-touch.js',
'bower_components/fastclick/lib/fastclick.js',
'bower_components/stateful-fastclick/dist/stateful-fastclick.js',
'bower_components/angular-stateful-fastclick/lib/angular-stateful-fastclick.js',
'bower_components/angular-moment/angular-moment.js',
'bower_components/ng-lodash/build/ng-lodash.js',
'bower_components/angular-qrcode/qrcode.js',
'bower_components/angular-qrcode/angular-qrcode.js',
'bower_components/angular-gettext/dist/angular-gettext.js',
'bower_components/angular-touch/angular-touch.js',
'bower_components/angular-ui-switch/angular-ui-switch.js',
'node_modules/angular-mocks/angular-mocks.js',
'bower_components/angular-sanitize/angular-sanitize.js',
'bower_components/ng-csv/build/ng-csv.js',
'bower_components/angular-mocks/angular-mocks.js',
'angular-bitcore-wallet-client/angular-bitcore-wallet-client.js',
'src/js/**/*.js',
'test/**/*.js'
],
@ -38,7 +42,7 @@ module.exports = function(config) {
// list of files to exclude
exclude: [
'src/js/translations.js',
'src/js/version.js',
// 'src/js/version.js',
'test/karma.conf.js',
'test/old/*'
],
@ -54,7 +58,7 @@ module.exports = function(config) {
// test results reporter to use
// possible values: 'dots', 'progress'
// available reporters: https://npmjs.org/browse/keyword/karma-reporter
reporters: ['progress', , 'coverage'],
reporters: ['mocha', 'coverage'],
// optionally, configure the reporter
coverageReporter: {
@ -91,6 +95,16 @@ module.exports = function(config) {
// available browser launchers: https://npmjs.org/browse/keyword/karma-launcher
browsers: ['PhantomJS'],
plugins: [
'karma-mocha-reporter',
'karma-coverage',
'karma-mocha',
'karma-chai',
'karma-sinon',
'karma-phantomjs-launcher',
'karma-chrome-launcher',
],
// Continuous Integration mode
// if true, Karma captures browsers, runs the tests and exits

View file

@ -1,30 +0,0 @@
angular.module('stateMock',[]);
angular.module('stateMock').service("$state", function($q){
this.expectedTransitions = [];
this.transitionTo = function(stateName){
if(this.expectedTransitions.length > 0){
var expectedState = this.expectedTransitions.shift();
if(expectedState !== stateName){
throw Error("Expected transition to state: " + expectedState + " but transitioned to " + stateName );
}
}else{
throw Error("No more transitions were expected! Tried to transition to "+ stateName );
}
console.log("Mock transition to: " + stateName);
var deferred = $q.defer();
var promise = deferred.promise;
deferred.resolve();
return promise;
}
this.go = this.transitionTo;
this.expectTransitionTo = function(stateName){
this.expectedTransitions.push(stateName);
}
this.ensureAllTransitionsHappened = function(){
if(this.expectedTransitions.length > 0){
throw Error("Not all transitions happened!");
}
}
});

11
test/old/sidebar.test.js Normal file
View file

@ -0,0 +1,11 @@
// 'use strict';
//
// describe('sidebarController', function(){
// var scope, controller;
//
// beforeEach(angular.mock.module('copayApp.controllers'));
//
// it('dummy test', function(){
// should.exist(true);
// });
// });

View file

@ -0,0 +1,25 @@
describe('walletService', function() {
var walletService;
// Adds walletService's module dependencies
beforeEach(function() {
module('ngLodash');
module('gettext');
module('bwcModule');
module('copayApp.services');
});
beforeEach(inject(function(_walletService_) {
walletService = _walletService_;
}));
describe('walletService', function() {
it('should be defined', function() {
should.exist(walletService);
});
});
});