From 62b5c3f78e985f6306522247de695de4ea70045f Mon Sep 17 00:00:00 2001 From: Zak Henry Date: Tue, 7 Jul 2015 00:43:26 +1000 Subject: [PATCH 1/8] Wrote out basic structure for handling progress as a promise. --- dist/ngHttpProgress.d.ts | 90 ++++++++++++---- dist/ngHttpProgress.js | 132 +++++++++++++++++++---- dist/ngHttpProgress.js.map | 2 +- src/ngHttpProgressInterceptor.ts | 3 +- src/ngHttpProgressInterfaces.ts | 23 +++- src/ngHttpProgressService.ts | 153 ++++++++++++++++++++++----- src/ngHttpProgressServiceProvider.ts | 6 +- 7 files changed, 328 insertions(+), 81 deletions(-) diff --git a/dist/ngHttpProgress.d.ts b/dist/ngHttpProgress.d.ts index ee2a3c8..8f94011 100644 --- a/dist/ngHttpProgress.d.ts +++ b/dist/ngHttpProgress.d.ts @@ -1,13 +1,24 @@ +/// /// /// declare module NgHttpProgress { + interface ngProgress { + start(): void; + height(cssHeight: string): void; + color(cssColor: string): void; + status(): number; + stop(): void; + set(percentage: number): void; + reset(): void; + complete(): void; + } interface INgHttpProgressService { - start(): boolean; - stop(): boolean; - complete(): boolean; - reset(): boolean; + start(): ng.IPromise; + stop(): ng.IPromise; + complete(): ng.IPromise; + reset(): ng.IPromise; status(): number; - set(): boolean; + set(percentage: number): void; } interface IngHttpProgressServiceProvider { configure(config: INgHttpProgressServiceConfig): NgHttpProgressServiceProvider; @@ -41,22 +52,65 @@ declare module NgHttpProgress { private $http; private $q; private $window; - private $interval; + private $timeout; + private ngProgress; + private currentProgressDeferred; + static ngProgressFinishTime: number; /** * Construct the service with dependencies injected - * @param _config - * @param _$http - * @param _$q - * @param _$window - * @param _$interval + * @param config + * @param $http + * @param $q + * @param $window + * @param $timeout + * @param ngProgress + */ + constructor(config: INgHttpProgressServiceConfig, $http: ng.IHttpService, $q: ng.IQService, $window: ng.IWindowService, $timeout: ng.ITimeoutService, ngProgress: ngProgress); + /** + * Start the progress bar running + * @returns {any} + */ + start(): ng.IPromise; + /** + * Bump back the current status to less completed + * @returns {number} + */ + private bumpBack(); + /** + * Halt the progress bar + * @returns {IPromise} + */ + stop(): ng.IPromise; + /** + * Complete the progress + * @returns {IPromise} + */ + complete(): ng.IPromise; + /** + * Reset the progress bar to zero + * @returns {IPromise} + */ + reset(): ng.IPromise; + /** + * Get the status of the progress bar + * @returns {number} */ - constructor(_config: INgHttpProgressServiceConfig, _$http: ng.IHttpService, _$q: ng.IQService, _$window: ng.IWindowService, _$interval: ng.IIntervalService); - start(): boolean; - stop(): boolean; - complete(): boolean; - reset(): boolean; status(): number; - set(): boolean; + /** + * Set the status of the progress bar + * @param percentage + */ + set(percentage: number): void; + /** + * Finish the progress of the promise + * @returns {IPromise} + */ + private finish(); + /** + * Intialise the progress deferred promise + * @returns {IPromise} + */ + private initDeferred(); } } declare module NgHttpProgress { @@ -83,6 +137,6 @@ declare module NgHttpProgress { * @returns {NgHttpProgress.NgHttpProgressServiceProvider} */ configure(config: INgHttpProgressServiceConfig): NgHttpProgressServiceProvider; - $get: (string | (($http: any, $q: any, $window: any, $interval: any) => NgHttpProgressService))[]; + $get: (string | (($http: any, $q: any, $window: any, $interval: any, ngProgress: any) => NgHttpProgressService))[]; } } diff --git a/dist/ngHttpProgress.js b/dist/ngHttpProgress.js index 25a9011..e9c6bab 100644 --- a/dist/ngHttpProgress.js +++ b/dist/ngHttpProgress.js @@ -1,5 +1,5 @@ -/// -/// +/// +/// /// var NgHttpProgress; (function (NgHttpProgress) { @@ -48,37 +48,123 @@ var NgHttpProgress; var NgHttpProgressService = (function () { /** * Construct the service with dependencies injected - * @param _config - * @param _$http - * @param _$q - * @param _$window - * @param _$interval + * @param config + * @param $http + * @param $q + * @param $window + * @param $timeout + * @param ngProgress */ - function NgHttpProgressService(_config, _$http, _$q, _$window, _$interval) { - this.config = _config; - this.$http = _$http; - this.$q = _$q; - this.$window = _$window; - this.$interval = _$interval; + function NgHttpProgressService(config, $http, $q, $window, $timeout, ngProgress) { + this.config = config; + this.$http = $http; + this.$q = $q; + this.$window = $window; + this.$timeout = $timeout; + this.ngProgress = ngProgress; + this.ngProgress.color(this.config.color); + this.ngProgress.height(this.config.height); } + /** + * Start the progress bar running + * @returns {any} + */ NgHttpProgressService.prototype.start = function () { - return undefined; + if (this.currentProgressDeferred) { + this.currentProgressDeferred.notify(true); + return this.currentProgressDeferred.promise; + } + this.currentProgressDeferred = this.$q.defer(); + return this.initDeferred(); }; + /** + * Bump back the current status to less completed + * @returns {number} + */ + NgHttpProgressService.prototype.bumpBack = function () { + var currentProgress = this.status(), fallBackTo = currentProgress - currentProgress * (currentProgress / 120); + this.set(fallBackTo); + return this.status(); + }; + /** + * Halt the progress bar + * @returns {IPromise} + */ NgHttpProgressService.prototype.stop = function () { - return undefined; + var completionPromise = this.currentProgressDeferred.promise; + this.currentProgressDeferred.notify(false); + return completionPromise; }; + /** + * Complete the progress + * @returns {IPromise} + */ NgHttpProgressService.prototype.complete = function () { - return undefined; + var completionPromise = this.currentProgressDeferred.promise; + this.currentProgressDeferred.resolve(); + return completionPromise; }; + /** + * Reset the progress bar to zero + * @returns {IPromise} + */ NgHttpProgressService.prototype.reset = function () { - return undefined; + var completionPromise = this.currentProgressDeferred.promise; + this.currentProgressDeferred.reject(); + return completionPromise; }; + /** + * Get the status of the progress bar + * @returns {number} + */ NgHttpProgressService.prototype.status = function () { - return undefined; + return this.ngProgress.status(); + }; + /** + * Set the status of the progress bar + * @param percentage + */ + NgHttpProgressService.prototype.set = function (percentage) { + return this.ngProgress.set(percentage); + }; + /** + * Finish the progress of the promise + * @returns {IPromise} + */ + NgHttpProgressService.prototype.finish = function () { + var finishStatus = this.status(); + this.ngProgress.complete(); + return this.$timeout(function () { + return finishStatus; + }, NgHttpProgressService.ngProgressFinishTime); }; - NgHttpProgressService.prototype.set = function () { - return undefined; + /** + * Intialise the progress deferred promise + * @returns {IPromise} + */ + NgHttpProgressService.prototype.initDeferred = function () { + var _this = this; + if (!this.currentProgressDeferred) { + throw new NgHttpProgress.NgHttpProgressException("No deferred site progress registered"); + } + return this.currentProgressDeferred.promise + .then(function () { + return _this.finish(); + }, function () { + _this.ngProgress.reset(); + }, function (bumpBack) { + if (bumpBack) { + _this.bumpBack(); + } + else { + _this.stop(); + } + }) + .finally(function () { + _this.currentProgressDeferred = null; //clear the current progress + }); }; + NgHttpProgressService.ngProgressFinishTime = 1600; //time for finish to complete return NgHttpProgressService; })(); NgHttpProgress.NgHttpProgressService = NgHttpProgressService; @@ -116,8 +202,8 @@ var NgHttpProgress; * Initialise the service provider */ function NgHttpProgressServiceProvider() { - this.$get = ['$http', '$q', '$window', '$interval', function ngHttpProgressServiceFactory($http, $q, $window, $interval) { - return new NgHttpProgress.NgHttpProgressService(this.config, $http, $q, $window, $interval); + this.$get = ['$http', '$q', '$window', '$interval', 'ngProgress', function ngHttpProgressServiceFactory($http, $q, $window, $interval, ngProgress) { + return new NgHttpProgress.NgHttpProgressService(this.config, $http, $q, $window, $interval, ngProgress); }]; //initialise service config this.config = { @@ -137,7 +223,7 @@ var NgHttpProgress; return NgHttpProgressServiceProvider; })(); NgHttpProgress.NgHttpProgressServiceProvider = NgHttpProgressServiceProvider; - angular.module('ngHttpProgress', []) + angular.module('ngHttpProgress', ['ngProgress']) .provider('ngHttpProgress', NgHttpProgressServiceProvider) .service('ngHttpProgressInterceptor', NgHttpProgress.NgHttpProgressInterceptor) .config(['$httpProvider', '$injector', function ($httpProvider) { diff --git a/dist/ngHttpProgress.js.map b/dist/ngHttpProgress.js.map index 7d8a882..7513973 100644 --- a/dist/ngHttpProgress.js.map +++ b/dist/ngHttpProgress.js.map @@ -1 +1 @@ -{"version":3,"file":"ngHttpProgress.js","sourceRoot":"/Users/zak/sites/spira/angular-http-progress/src/","sources":["ngHttpProgressInterfaces.ts","ngHttpProgressInterceptor.ts","ngHttpProgressService.ts","ngHttpProgressServiceProvider.ts"],"names":["NgHttpProgress","NgHttpProgress.NgHttpProgressInterceptor","NgHttpProgress.NgHttpProgressInterceptor.constructor","NgHttpProgress.NgHttpProgressService","NgHttpProgress.NgHttpProgressService.constructor","NgHttpProgress.NgHttpProgressService.start","NgHttpProgress.NgHttpProgressService.stop","NgHttpProgress.NgHttpProgressService.complete","NgHttpProgress.NgHttpProgressService.reset","NgHttpProgress.NgHttpProgressService.status","NgHttpProgress.NgHttpProgressService.set","NgHttpProgress.NgHttpProgressException","NgHttpProgress.NgHttpProgressException.constructor","NgHttpProgress.NgHttpProgressException.toString","NgHttpProgress.NgHttpProgressServiceProvider","NgHttpProgress.NgHttpProgressServiceProvider.constructor","NgHttpProgress.NgHttpProgressServiceProvider.constructor.ngHttpProgressServiceFactory","NgHttpProgress.NgHttpProgressServiceProvider.configure"],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"ngHttpProgress.js","sourceRoot":"/Users/zak/sites/spira/angular-http-progress/src/","sources":["ngHttpProgressInterfaces.ts","ngHttpProgressInterceptor.ts","ngHttpProgressService.ts","ngHttpProgressServiceProvider.ts"],"names":["NgHttpProgress","NgHttpProgress.NgHttpProgressInterceptor","NgHttpProgress.NgHttpProgressInterceptor.constructor","NgHttpProgress.NgHttpProgressService","NgHttpProgress.NgHttpProgressService.constructor","NgHttpProgress.NgHttpProgressService.start","NgHttpProgress.NgHttpProgressService.bumpBack","NgHttpProgress.NgHttpProgressService.stop","NgHttpProgress.NgHttpProgressService.complete","NgHttpProgress.NgHttpProgressService.reset","NgHttpProgress.NgHttpProgressService.status","NgHttpProgress.NgHttpProgressService.set","NgHttpProgress.NgHttpProgressService.finish","NgHttpProgress.NgHttpProgressService.initDeferred","NgHttpProgress.NgHttpProgressException","NgHttpProgress.NgHttpProgressException.constructor","NgHttpProgress.NgHttpProgressException.toString","NgHttpProgress.NgHttpProgressServiceProvider","NgHttpProgress.NgHttpProgressServiceProvider.constructor","NgHttpProgress.NgHttpProgressServiceProvider.constructor.ngHttpProgressServiceFactory","NgHttpProgress.NgHttpProgressServiceProvider.configure"],"mappings":"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"} \ No newline at end of file diff --git a/src/ngHttpProgressInterceptor.ts b/src/ngHttpProgressInterceptor.ts index 3b7c2ce..ed6e760 100644 --- a/src/ngHttpProgressInterceptor.ts +++ b/src/ngHttpProgressInterceptor.ts @@ -1,5 +1,4 @@ -/// -/// +/// /// module NgHttpProgress { diff --git a/src/ngHttpProgressInterfaces.ts b/src/ngHttpProgressInterfaces.ts index 01d2850..0299623 100644 --- a/src/ngHttpProgressInterfaces.ts +++ b/src/ngHttpProgressInterfaces.ts @@ -1,12 +1,25 @@ +/// + module NgHttpProgress { + export interface ngProgress { + start():void; + height(cssHeight:string):void + color(cssColor:string):void + status():number; + stop():void; + set(percentage:number):void; + reset():void; + complete():void; + } + export interface INgHttpProgressService { - start(): boolean; - stop(): boolean; - complete(): boolean; - reset(): boolean; + start(): ng.IPromise; + stop(): ng.IPromise; + complete(): ng.IPromise; + reset(): ng.IPromise; status(): number; - set(): boolean; + set(percentage:number):void; } export interface IngHttpProgressServiceProvider { diff --git a/src/ngHttpProgressService.ts b/src/ngHttpProgressService.ts index 345937f..95c3d99 100644 --- a/src/ngHttpProgressService.ts +++ b/src/ngHttpProgressService.ts @@ -6,55 +6,150 @@ module NgHttpProgress { export class NgHttpProgressService implements INgHttpProgressService { - //list injected dependencies - private config: INgHttpProgressServiceConfig; - private $http: ng.IHttpService; - private $q: ng.IQService; - private $window: ng.IWindowService; - private $interval:ng.IIntervalService; + private currentProgressDeferred:ng.IDeferred; + + static ngProgressFinishTime = 1600; //time for finish to complete /** * Construct the service with dependencies injected - * @param _config - * @param _$http - * @param _$q - * @param _$window - * @param _$interval + * @param config + * @param $http + * @param $q + * @param $window + * @param $timeout + * @param ngProgress */ - constructor(_config:INgHttpProgressServiceConfig, _$http: ng.IHttpService, _$q: ng.IQService, _$window: ng.IWindowService, _$interval: ng.IIntervalService) { + constructor( + private config:INgHttpProgressServiceConfig, + private $http: ng.IHttpService, + private $q: ng.IQService, + private $window: ng.IWindowService, + private $timeout: ng.ITimeoutService, + private ngProgress: ngProgress + ) { - this.config = _config; - this.$http = _$http; - this.$q = _$q; - this.$window = _$window; - this.$interval = _$interval; + this.ngProgress.color(this.config.color); + this.ngProgress.height(this.config.height); } - start():boolean { - return undefined; + /** + * Start the progress bar running + * @returns {any} + */ + public start():ng.IPromise { + + if (this.currentProgressDeferred){ //exists + this.currentProgressDeferred.notify(true); + + return this.currentProgressDeferred.promise; + } + + this.currentProgressDeferred = this.$q.defer(); + + return this.initDeferred(); } - stop():boolean { - return undefined; + + /** + * Bump back the current status to less completed + * @returns {number} + */ + private bumpBack():boolean|number { + + let currentProgress = this.status(), + fallBackTo = currentProgress - currentProgress * (currentProgress/120); + + this.set(fallBackTo); + return this.status(); } - complete():boolean { - return undefined; + /** + * Halt the progress bar + * @returns {IPromise} + */ + public stop():ng.IPromise { + let completionPromise = this.currentProgressDeferred.promise; + this.currentProgressDeferred.notify(false); + return completionPromise; } - reset():boolean { - return undefined; + /** + * Complete the progress + * @returns {IPromise} + */ + public complete():ng.IPromise { + + let completionPromise = this.currentProgressDeferred.promise; + this.currentProgressDeferred.resolve(); + return completionPromise; } - status():number { - return undefined; + /** + * Reset the progress bar to zero + * @returns {IPromise} + */ + public reset():ng.IPromise { + let completionPromise = this.currentProgressDeferred.promise; + this.currentProgressDeferred.reject(); + return completionPromise; } - set():boolean { - return undefined; + /** + * Get the status of the progress bar + * @returns {number} + */ + public status():number { + return this.ngProgress.status(); } + /** + * Set the status of the progress bar + * @param percentage + */ + public set(percentage:number):void { + return this.ngProgress.set(percentage); + } + + /** + * Finish the progress of the promise + * @returns {IPromise} + */ + private finish():ng.IPromise { + let finishStatus = this.status(); + this.ngProgress.complete(); + return this.$timeout(function () { //wait for the animation to finish before setting status + return finishStatus; + }, NgHttpProgressService.ngProgressFinishTime); + } + + /** + * Intialise the progress deferred promise + * @returns {IPromise} + */ + private initDeferred():ng.IPromise { + + if (!this.currentProgressDeferred){ + throw new NgHttpProgress.NgHttpProgressException("No deferred site progress registered"); + } + + return this.currentProgressDeferred.promise + .then(() => { //success + return this.finish(); + }, () => { //error + this.ngProgress.reset(); + }, (bumpBack:boolean) => { //notify + if (bumpBack) { + this.bumpBack(); + } else { + this.stop(); + } + }) + .finally(() => { + this.currentProgressDeferred = null; //clear the current progress + }); + + } } } diff --git a/src/ngHttpProgressServiceProvider.ts b/src/ngHttpProgressServiceProvider.ts index 5cba6d3..931cfdf 100644 --- a/src/ngHttpProgressServiceProvider.ts +++ b/src/ngHttpProgressServiceProvider.ts @@ -53,15 +53,15 @@ module NgHttpProgress { return this; } - public $get = ['$http', '$q', '$window', '$interval', function ngHttpProgressServiceFactory($http, $q, $window, $interval) { - return new NgHttpProgressService(this.config, $http, $q, $window, $interval); + public $get = ['$http', '$q', '$window', '$interval', 'ngProgress', function ngHttpProgressServiceFactory($http, $q, $window, $interval, ngProgress) { + return new NgHttpProgressService(this.config, $http, $q, $window, $interval, ngProgress); }]; } - angular.module('ngHttpProgress', []) + angular.module('ngHttpProgress', ['ngProgress']) .provider('ngHttpProgress', NgHttpProgressServiceProvider) .service('ngHttpProgressInterceptor', NgHttpProgressInterceptor) .config(['$httpProvider', '$injector', ($httpProvider:ng.IHttpProvider) => { From 9f3146cd325209627b13fa7fa062b6a04ec2ccd8 Mon Sep 17 00:00:00 2001 From: Zak Henry Date: Tue, 7 Jul 2015 12:14:26 +1000 Subject: [PATCH 2/8] Extended promise functionality, added interceptor methods, added tests --- dist/ngHttpProgress.d.ts | 27 ++++--- dist/ngHttpProgress.js | 86 +++++++++++++---------- dist/ngHttpProgress.js.map | 2 +- src/ngHttpProgressInterceptor.ts | 24 +++---- src/ngHttpProgressInterfaces.ts | 2 +- src/ngHttpProgressService.ts | 79 ++++++++++++++------- src/ngHttpProgressServiceProvider.ts | 4 +- test/test.ts | 101 ++++++++++++++++++++++++++- 8 files changed, 231 insertions(+), 94 deletions(-) diff --git a/dist/ngHttpProgress.d.ts b/dist/ngHttpProgress.d.ts index 8f94011..b589b23 100644 --- a/dist/ngHttpProgress.d.ts +++ b/dist/ngHttpProgress.d.ts @@ -16,7 +16,7 @@ declare module NgHttpProgress { start(): ng.IPromise; stop(): ng.IPromise; complete(): ng.IPromise; - reset(): ng.IPromise; + rewind(): ng.IPromise; status(): number; set(percentage: number): void; } @@ -39,7 +39,7 @@ declare module NgHttpProgress { * @param _$injector */ static $inject: string[]; - constructor(_$q: ng.IQService, _$injector: ng.auto.IInjectorService); + constructor($q: ng.IQService, $injector: ng.auto.IInjectorService); private getNgHttpProgressService; request: (config: any) => any; response: (response: any) => any; @@ -49,23 +49,22 @@ declare module NgHttpProgress { declare module NgHttpProgress { class NgHttpProgressService implements INgHttpProgressService { private config; - private $http; private $q; - private $window; private $timeout; private ngProgress; private currentProgressDeferred; + private progressPromise; static ngProgressFinishTime: number; + private pendingDelays; + private stopped; /** * Construct the service with dependencies injected * @param config - * @param $http * @param $q - * @param $window * @param $timeout * @param ngProgress */ - constructor(config: INgHttpProgressServiceConfig, $http: ng.IHttpService, $q: ng.IQService, $window: ng.IWindowService, $timeout: ng.ITimeoutService, ngProgress: ngProgress); + constructor(config: INgHttpProgressServiceConfig, $q: ng.IQService, $timeout: ng.ITimeoutService, ngProgress: ngProgress); /** * Start the progress bar running * @returns {any} @@ -90,27 +89,33 @@ declare module NgHttpProgress { * Reset the progress bar to zero * @returns {IPromise} */ - reset(): ng.IPromise; + rewind(): ng.IPromise; /** * Get the status of the progress bar * @returns {number} */ status(): number; + progressStatus(): ng.IPromise; /** * Set the status of the progress bar * @param percentage */ - set(percentage: number): void; + set(percentage: number): ng.IPromise; /** * Finish the progress of the promise * @returns {IPromise} */ private finish(); + /** + * Handle the reset. Immediately invoke as the ngProgress service executes immediately + * @returns {IPromise} + */ + private reset(); /** * Intialise the progress deferred promise * @returns {IPromise} */ - private initDeferred(); + private initProgressMeter(); } } declare module NgHttpProgress { @@ -137,6 +142,6 @@ declare module NgHttpProgress { * @returns {NgHttpProgress.NgHttpProgressServiceProvider} */ configure(config: INgHttpProgressServiceConfig): NgHttpProgressServiceProvider; - $get: (string | (($http: any, $q: any, $window: any, $interval: any, ngProgress: any) => NgHttpProgressService))[]; + $get: (string | (($q: any, $timeout: any, ngProgress: any) => NgHttpProgressService))[]; } } diff --git a/dist/ngHttpProgress.js b/dist/ngHttpProgress.js index e9c6bab..2c62a46 100644 --- a/dist/ngHttpProgress.js +++ b/dist/ngHttpProgress.js @@ -4,31 +4,31 @@ var NgHttpProgress; (function (NgHttpProgress) { var NgHttpProgressInterceptor = (function () { - function NgHttpProgressInterceptor(_$q, _$injector) { + function NgHttpProgressInterceptor($q, $injector) { var _this = this; + this.$q = $q; + this.$injector = $injector; this.getNgHttpProgressService = function () { if (_this.ngHttpProgressService == null) { - _this.ngHttpProgressService = _this.$injector.get('ngHttpProgressService'); + _this.ngHttpProgressService = _this.$injector.get('ngHttpProgress'); } return _this.ngHttpProgressService; }; this.request = function (config) { - var ngHttpProgressService = _this.getNgHttpProgressService(); - //@todo start progress bar + var progress = _this.getNgHttpProgressService(); + progress.start(); return config; }; this.response = function (response) { - var ngHttpProgressService = _this.getNgHttpProgressService(); - //@todo advance progress bar to end + var progress = _this.getNgHttpProgressService(); + progress.complete(); return response; }; this.responseError = function (response) { - var ngHttpProgressService = _this.getNgHttpProgressService(); - //@todo rewind progress bar + var progress = _this.getNgHttpProgressService(); + progress.rewind(); return response; }; - this.$q = _$q; - this.$injector = _$injector; } /** * Construct the service with dependencies injected @@ -49,19 +49,17 @@ var NgHttpProgress; /** * Construct the service with dependencies injected * @param config - * @param $http * @param $q - * @param $window * @param $timeout * @param ngProgress */ - function NgHttpProgressService(config, $http, $q, $window, $timeout, ngProgress) { + function NgHttpProgressService(config, $q, $timeout, ngProgress) { this.config = config; - this.$http = $http; this.$q = $q; - this.$window = $window; this.$timeout = $timeout; this.ngProgress = ngProgress; + this.pendingDelays = 0; + this.stopped = false; this.ngProgress.color(this.config.color); this.ngProgress.height(this.config.height); } @@ -70,12 +68,13 @@ var NgHttpProgress; * @returns {any} */ NgHttpProgressService.prototype.start = function () { + this.pendingDelays++; if (this.currentProgressDeferred) { this.currentProgressDeferred.notify(true); - return this.currentProgressDeferred.promise; + return this.progressPromise; } - this.currentProgressDeferred = this.$q.defer(); - return this.initDeferred(); + console.log('progress starting'); + return this.initProgressMeter(); }; /** * Bump back the current status to less completed @@ -84,34 +83,33 @@ var NgHttpProgress; NgHttpProgressService.prototype.bumpBack = function () { var currentProgress = this.status(), fallBackTo = currentProgress - currentProgress * (currentProgress / 120); this.set(fallBackTo); - return this.status(); + return this.progressPromise; }; /** * Halt the progress bar * @returns {IPromise} */ NgHttpProgressService.prototype.stop = function () { - var completionPromise = this.currentProgressDeferred.promise; this.currentProgressDeferred.notify(false); - return completionPromise; + return this.progressPromise; }; /** * Complete the progress * @returns {IPromise} */ NgHttpProgressService.prototype.complete = function () { - var completionPromise = this.currentProgressDeferred.promise; - this.currentProgressDeferred.resolve(); - return completionPromise; + if (this.pendingDelays === 1) { + this.currentProgressDeferred.resolve(); + } + return this.progressPromise; }; /** * Reset the progress bar to zero * @returns {IPromise} */ - NgHttpProgressService.prototype.reset = function () { - var completionPromise = this.currentProgressDeferred.promise; + NgHttpProgressService.prototype.rewind = function () { this.currentProgressDeferred.reject(); - return completionPromise; + return this.progressPromise; }; /** * Get the status of the progress bar @@ -120,12 +118,16 @@ var NgHttpProgress; NgHttpProgressService.prototype.status = function () { return this.ngProgress.status(); }; + NgHttpProgressService.prototype.progressStatus = function () { + return this.progressPromise; + }; /** * Set the status of the progress bar * @param percentage */ NgHttpProgressService.prototype.set = function (percentage) { - return this.ngProgress.set(percentage); + this.ngProgress.set(percentage); + return this.progressPromise; }; /** * Finish the progress of the promise @@ -138,30 +140,42 @@ var NgHttpProgress; return finishStatus; }, NgHttpProgressService.ngProgressFinishTime); }; + /** + * Handle the reset. Immediately invoke as the ngProgress service executes immediately + * @returns {IPromise} + */ + NgHttpProgressService.prototype.reset = function () { + this.ngProgress.reset(); + return this.$q.when(this.status()); + }; /** * Intialise the progress deferred promise * @returns {IPromise} */ - NgHttpProgressService.prototype.initDeferred = function () { + NgHttpProgressService.prototype.initProgressMeter = function () { var _this = this; - if (!this.currentProgressDeferred) { - throw new NgHttpProgress.NgHttpProgressException("No deferred site progress registered"); - } - return this.currentProgressDeferred.promise + this.currentProgressDeferred = this.$q.defer(); + this.ngProgress.start(); + return this.progressPromise = this.currentProgressDeferred.promise .then(function () { return _this.finish(); }, function () { - _this.ngProgress.reset(); + return _this.reset(); }, function (bumpBack) { if (bumpBack) { _this.bumpBack(); } + else if (_this.stopped) { + _this.ngProgress.start(); + } else { _this.stop(); } }) .finally(function () { _this.currentProgressDeferred = null; //clear the current progress + _this.progressPromise = null; //clear the current progress + _this.pendingDelays = 0; //reset }); }; NgHttpProgressService.ngProgressFinishTime = 1600; //time for finish to complete @@ -202,8 +216,8 @@ var NgHttpProgress; * Initialise the service provider */ function NgHttpProgressServiceProvider() { - this.$get = ['$http', '$q', '$window', '$interval', 'ngProgress', function ngHttpProgressServiceFactory($http, $q, $window, $interval, ngProgress) { - return new NgHttpProgress.NgHttpProgressService(this.config, $http, $q, $window, $interval, ngProgress); + this.$get = ['$q', '$timeout', 'ngProgress', function ngHttpProgressServiceFactory($q, $timeout, ngProgress) { + return new NgHttpProgress.NgHttpProgressService(this.config, $q, $timeout, ngProgress); }]; //initialise service config this.config = { diff --git a/dist/ngHttpProgress.js.map b/dist/ngHttpProgress.js.map index 7513973..fc6c0d4 100644 --- a/dist/ngHttpProgress.js.map +++ b/dist/ngHttpProgress.js.map @@ -1 +1 @@ -{"version":3,"file":"ngHttpProgress.js","sourceRoot":"/Users/zak/sites/spira/angular-http-progress/src/","sources":["ngHttpProgressInterfaces.ts","ngHttpProgressInterceptor.ts","ngHttpProgressService.ts","ngHttpProgressServiceProvider.ts"],"names":["NgHttpProgress","NgHttpProgress.NgHttpProgressInterceptor","NgHttpProgress.NgHttpProgressInterceptor.constructor","NgHttpProgress.NgHttpProgressService","NgHttpProgress.NgHttpProgressService.constructor","NgHttpProgress.NgHttpProgressService.start","NgHttpProgress.NgHttpProgressService.bumpBack","NgHttpProgress.NgHttpProgressService.stop","NgHttpProgress.NgHttpProgressService.complete","NgHttpProgress.NgHttpProgressService.reset","NgHttpProgress.NgHttpProgressService.status","NgHttpProgress.NgHttpProgressService.set","NgHttpProgress.NgHttpProgressService.finish","NgHttpProgress.NgHttpProgressService.initDeferred","NgHttpProgress.NgHttpProgressException","NgHttpProgress.NgHttpProgressException.constructor","NgHttpProgress.NgHttpProgressException.toString","NgHttpProgress.NgHttpProgressServiceProvider","NgHttpProgress.NgHttpProgressServiceProvider.constructor","NgHttpProgress.NgHttpProgressServiceProvider.constructor.ngHttpProgressServiceFactory","NgHttpProgress.NgHttpProgressServiceProvider.configure"],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"ngHttpProgress.js","sourceRoot":"/Users/zak/sites/spira/angular-http-progress/src/","sources":["ngHttpProgressInterfaces.ts","ngHttpProgressInterceptor.ts","ngHttpProgressService.ts","ngHttpProgressServiceProvider.ts"],"names":["NgHttpProgress","NgHttpProgress.NgHttpProgressInterceptor","NgHttpProgress.NgHttpProgressInterceptor.constructor","NgHttpProgress.NgHttpProgressService","NgHttpProgress.NgHttpProgressService.constructor","NgHttpProgress.NgHttpProgressService.start","NgHttpProgress.NgHttpProgressService.bumpBack","NgHttpProgress.NgHttpProgressService.stop","NgHttpProgress.NgHttpProgressService.complete","NgHttpProgress.NgHttpProgressService.rewind","NgHttpProgress.NgHttpProgressService.status","NgHttpProgress.NgHttpProgressService.progressStatus","NgHttpProgress.NgHttpProgressService.set","NgHttpProgress.NgHttpProgressService.finish","NgHttpProgress.NgHttpProgressService.reset","NgHttpProgress.NgHttpProgressService.initProgressMeter","NgHttpProgress.NgHttpProgressException","NgHttpProgress.NgHttpProgressException.constructor","NgHttpProgress.NgHttpProgressException.toString","NgHttpProgress.NgHttpProgressServiceProvider","NgHttpProgress.NgHttpProgressServiceProvider.constructor","NgHttpProgress.NgHttpProgressServiceProvider.constructor.ngHttpProgressServiceFactory","NgHttpProgress.NgHttpProgressServiceProvider.configure"],"mappings":"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"} \ No newline at end of file diff --git a/src/ngHttpProgressInterceptor.ts b/src/ngHttpProgressInterceptor.ts index ed6e760..d36f1dd 100644 --- a/src/ngHttpProgressInterceptor.ts +++ b/src/ngHttpProgressInterceptor.ts @@ -5,9 +5,6 @@ module NgHttpProgress { export class NgHttpProgressInterceptor { - //list injected dependencies - private $q: ng.IQService; - private $injector: ng.auto.IInjectorService; private ngHttpProgressService: NgHttpProgressService; @@ -17,39 +14,40 @@ module NgHttpProgress { * @param _$injector */ static $inject = ['$q', '$injector']; - constructor(_$q: ng.IQService, _$injector: ng.auto.IInjectorService) { + constructor( + private $q: ng.IQService, + private $injector: ng.auto.IInjectorService) { - this.$q = _$q; - this.$injector = _$injector; } private getNgHttpProgressService = (): NgHttpProgressService=> { if (this.ngHttpProgressService == null) { - this.ngHttpProgressService = this.$injector.get('ngHttpProgressService'); + this.ngHttpProgressService = this.$injector.get('ngHttpProgress'); } return this.ngHttpProgressService; }; public request = (config):any => { - let ngHttpProgressService = this.getNgHttpProgressService(); - //@todo start progress bar + let progress = this.getNgHttpProgressService(); + + progress.start(); return config; }; public response = (response):any => { - let ngHttpProgressService = this.getNgHttpProgressService(); - //@todo advance progress bar to end + let progress = this.getNgHttpProgressService(); + progress.complete(); return response; }; public responseError = (response):any => { - let ngHttpProgressService = this.getNgHttpProgressService(); - //@todo rewind progress bar + let progress = this.getNgHttpProgressService(); + progress.rewind(); return response; }; diff --git a/src/ngHttpProgressInterfaces.ts b/src/ngHttpProgressInterfaces.ts index 0299623..d7db563 100644 --- a/src/ngHttpProgressInterfaces.ts +++ b/src/ngHttpProgressInterfaces.ts @@ -17,7 +17,7 @@ module NgHttpProgress { start(): ng.IPromise; stop(): ng.IPromise; complete(): ng.IPromise; - reset(): ng.IPromise; + rewind(): ng.IPromise; status(): number; set(percentage:number):void; } diff --git a/src/ngHttpProgressService.ts b/src/ngHttpProgressService.ts index 95c3d99..7c92c37 100644 --- a/src/ngHttpProgressService.ts +++ b/src/ngHttpProgressService.ts @@ -7,23 +7,23 @@ module NgHttpProgress { export class NgHttpProgressService implements INgHttpProgressService { private currentProgressDeferred:ng.IDeferred; + private progressPromise:ng.IPromise; static ngProgressFinishTime = 1600; //time for finish to complete + private pendingDelays = 0; + + private stopped:boolean = false; /** * Construct the service with dependencies injected * @param config - * @param $http * @param $q - * @param $window * @param $timeout * @param ngProgress */ constructor( private config:INgHttpProgressServiceConfig, - private $http: ng.IHttpService, private $q: ng.IQService, - private $window: ng.IWindowService, private $timeout: ng.ITimeoutService, private ngProgress: ngProgress ) { @@ -39,15 +39,17 @@ module NgHttpProgress { */ public start():ng.IPromise { + this.pendingDelays ++; + if (this.currentProgressDeferred){ //exists this.currentProgressDeferred.notify(true); - return this.currentProgressDeferred.promise; + return this.progressPromise; } - this.currentProgressDeferred = this.$q.defer(); + console.log('progress starting'); - return this.initDeferred(); + return this.initProgressMeter(); } @@ -55,13 +57,13 @@ module NgHttpProgress { * Bump back the current status to less completed * @returns {number} */ - private bumpBack():boolean|number { + private bumpBack():ng.IPromise { let currentProgress = this.status(), fallBackTo = currentProgress - currentProgress * (currentProgress/120); this.set(fallBackTo); - return this.status(); + return this.progressPromise; } /** @@ -69,9 +71,8 @@ module NgHttpProgress { * @returns {IPromise} */ public stop():ng.IPromise { - let completionPromise = this.currentProgressDeferred.promise; this.currentProgressDeferred.notify(false); - return completionPromise; + return this.progressPromise; } /** @@ -80,19 +81,20 @@ module NgHttpProgress { */ public complete():ng.IPromise { - let completionPromise = this.currentProgressDeferred.promise; - this.currentProgressDeferred.resolve(); - return completionPromise; + if (this.pendingDelays === 1){ //the last delay + this.currentProgressDeferred.resolve(); + } + + return this.progressPromise; } /** * Reset the progress bar to zero * @returns {IPromise} */ - public reset():ng.IPromise { - let completionPromise = this.currentProgressDeferred.promise; + public rewind():ng.IPromise { this.currentProgressDeferred.reject(); - return completionPromise; + return this.progressPromise; } /** @@ -103,12 +105,17 @@ module NgHttpProgress { return this.ngProgress.status(); } + public progressStatus():ng.IPromise { + return this.progressPromise; + } + /** * Set the status of the progress bar * @param percentage */ - public set(percentage:number):void { - return this.ngProgress.set(percentage); + public set(percentage:number):ng.IPromise { + this.ngProgress.set(percentage); + return this.progressPromise; } /** @@ -118,35 +125,53 @@ module NgHttpProgress { private finish():ng.IPromise { let finishStatus = this.status(); this.ngProgress.complete(); - return this.$timeout(function () { //wait for the animation to finish before setting status + + return this.$timeout(() => { //wait for the animation to finish before setting status return finishStatus; }, NgHttpProgressService.ngProgressFinishTime); } + /** + * Handle the reset. Immediately invoke as the ngProgress service executes immediately + * @returns {IPromise} + */ + private reset():ng.IPromise { + + this.ngProgress.reset(); + + return this.$q.when(this.status()); + } + /** * Intialise the progress deferred promise * @returns {IPromise} */ - private initDeferred():ng.IPromise { + private initProgressMeter():ng.IPromise { - if (!this.currentProgressDeferred){ - throw new NgHttpProgress.NgHttpProgressException("No deferred site progress registered"); - } + this.currentProgressDeferred = this.$q.defer(); + + this.ngProgress.start(); - return this.currentProgressDeferred.promise + return this.progressPromise = this.currentProgressDeferred.promise .then(() => { //success return this.finish(); }, () => { //error - this.ngProgress.reset(); + return this.reset(); }, (bumpBack:boolean) => { //notify if (bumpBack) { this.bumpBack(); - } else { + } else if (this.stopped){ + + this.ngProgress.start(); + }else{ + this.stop(); } }) .finally(() => { this.currentProgressDeferred = null; //clear the current progress + this.progressPromise = null; //clear the current progress + this.pendingDelays = 0; //reset }); } diff --git a/src/ngHttpProgressServiceProvider.ts b/src/ngHttpProgressServiceProvider.ts index 931cfdf..cf34ef2 100644 --- a/src/ngHttpProgressServiceProvider.ts +++ b/src/ngHttpProgressServiceProvider.ts @@ -53,8 +53,8 @@ module NgHttpProgress { return this; } - public $get = ['$http', '$q', '$window', '$interval', 'ngProgress', function ngHttpProgressServiceFactory($http, $q, $window, $interval, ngProgress) { - return new NgHttpProgressService(this.config, $http, $q, $window, $interval, ngProgress); + public $get = ['$q', '$timeout', 'ngProgress', function ngHttpProgressServiceFactory($q, $timeout, ngProgress) { + return new NgHttpProgressService(this.config, $q, $timeout, ngProgress); }]; } diff --git a/test/test.ts b/test/test.ts index a11ccff..aadcb87 100644 --- a/test/test.ts +++ b/test/test.ts @@ -13,22 +13,44 @@ let fixtures = { }; +let $http:ng.IHttpService; +let $q:ng.IQService; +let $interval:ng.IIntervalService; +let $timeout:ng.ITimeoutService; +let clock:Sinon.SinonFakeTimers = sinon.useFakeTimers(); + +//we need to both tick setInterval and $interval as for some reason ngProgress uses both +let tickTime = (seconds) => { + + let millis = seconds * 1000; + + clock.tick(millis); + $interval.flush(millis); + $timeout.flush(millis); + +}; describe('Service tests', () => { let $httpBackend:ng.IHttpBackendService; let ngHttpProgressService:NgHttpProgress.NgHttpProgressService; + beforeEach(()=>{ module('ngHttpProgress'); - inject((_$httpBackend_, _ngHttpProgress_) => { + inject((_$httpBackend_, _ngHttpProgress_, _$http_, _$q_, _$interval_, _$timeout_) => { - if (!ngHttpProgressService){ //dont rebind, so each test gets the singleton + if (!ngHttpProgressService){ $httpBackend = _$httpBackend_; - ngHttpProgressService = _ngHttpProgress_; //register injected of service provider + ngHttpProgressService = _ngHttpProgress_; //register injected service provider + $http = _$http_; + $q = _$q_; + $interval = _$interval_; + $timeout = _$timeout_; } + }); }); @@ -48,4 +70,77 @@ describe('Service tests', () => { }); + describe('$http interceptor', () => { + + it('should start the progress bar when called directly', () => { + + let completionPromise = ngHttpProgressService.start(); + + expect(completionPromise).eventually.to.be.within(0, 100); + + tickTime(2); //fast forward intervals by 2 seconds + + expect(ngHttpProgressService.status()).to.be.greaterThan(0); + + }); + + it('should complete the progress bar when called', () => { + + expect(ngHttpProgressService.status()).to.be.greaterThan(0); + + let completionPromise = ngHttpProgressService.complete(); + + expect(completionPromise).eventually.to.be.greaterThan(0); //status when the progress bar was completed + + tickTime(2); //fast forward intervals by 2 seconds + + completionPromise.then(() => { + expect(ngHttpProgressService.status()).to.equal(100); + }) + }); + + + it('should start the progress bar when an $http request starts', () => { + + $httpBackend.expectGET('/any').respond('foobar'); + + expect((ngHttpProgressService).progressPromise).not.to.be.ok; + + $http.get('/any'); + tickTime(2); //wait for the request to get to the interceptor + + let progressPromise = ngHttpProgressService.progressStatus(); + + expect(progressPromise).to.be.ok; + expect(progressPromise.then).to.be.instanceOf(Function); + + $httpBackend.flush(); + + expect(progressPromise).eventually.to.be.greaterThan(0); + + }); + + + it('should be able to handle multiple http requests', () => { + + $httpBackend.whenGET('/any').respond('foobar'); + + $http.get('/any'); + tickTime(0.5); //delay dispatching the next request + $http.get('/any'); + tickTime(0.5); //delay dispatching the next request + $http.get('/any'); + tickTime(0.5); //delay dispatching the next request + + let progressPromise = ngHttpProgressService.progressStatus(); + + expect(progressPromise).eventually.to.be.greaterThan(0); + + $httpBackend.flush(); + + }) + + }); + + }); From 134f4b3c33b444d44569cb07e9c2856e7a24322f Mon Sep 17 00:00:00 2001 From: Zak Henry Date: Tue, 7 Jul 2015 12:35:58 +1000 Subject: [PATCH 3/8] Added tests for configuration. --- bower.json | 43 +++++++++++++++-------------- dist/ngHttpProgress.d.ts | 1 + dist/ngHttpProgress.js | 1 - dist/ngHttpProgress.js.map | 2 +- src/ngHttpProgressInterfaces.ts | 1 + src/ngHttpProgressService.ts | 2 -- test/test.ts | 49 +++++++++++++++++++++++++++++++-- 7 files changed, 71 insertions(+), 28 deletions(-) diff --git a/bower.json b/bower.json index 646c879..0f4eda8 100644 --- a/bower.json +++ b/bower.json @@ -1,23 +1,24 @@ { - "name": "ng-jwt-auth", - "version": "0.0.0", - "description": "Angular JSON Web Token Authentication Module", - "main": "dist/ngHttpProgress.js", - "dependencies": { - "lodash": "~3.9.3", - "moment": "~2.10.3", - "angular": "~1.4.1", - "ngprogress": "1.0.7" - }, - "devDependencies": { - "angular-mocks": "~1.4.1" - }, - "resolutions": { - "angular": "~1.4.1" - }, - "ignore": [ - "**/.*", - "typings", - "test" - ] + "name": "ng-jwt-auth", + "version": "0.0.0", + "description": "Angular JSON Web Token Authentication Module", + "main": "dist/ngHttpProgress.js", + "dependencies": { + "lodash": "~3.9.3", + "moment": "~2.10.3", + "angular": "~1.4.1", + "ngprogress": "1.0.7" + }, + "devDependencies": { + "angular-mocks": "~1.4.1", + "jquery": "~2.1.4" + }, + "resolutions": { + "angular": "~1.4.1" + }, + "ignore": [ + "**/.*", + "typings", + "test" + ] } diff --git a/dist/ngHttpProgress.d.ts b/dist/ngHttpProgress.d.ts index b589b23..a95770d 100644 --- a/dist/ngHttpProgress.d.ts +++ b/dist/ngHttpProgress.d.ts @@ -11,6 +11,7 @@ declare module NgHttpProgress { set(percentage: number): void; reset(): void; complete(): void; + getDomElement(): Element; } interface INgHttpProgressService { start(): ng.IPromise; diff --git a/dist/ngHttpProgress.js b/dist/ngHttpProgress.js index 2c62a46..05f093e 100644 --- a/dist/ngHttpProgress.js +++ b/dist/ngHttpProgress.js @@ -73,7 +73,6 @@ var NgHttpProgress; this.currentProgressDeferred.notify(true); return this.progressPromise; } - console.log('progress starting'); return this.initProgressMeter(); }; /** diff --git a/dist/ngHttpProgress.js.map b/dist/ngHttpProgress.js.map index fc6c0d4..e81308c 100644 --- a/dist/ngHttpProgress.js.map +++ b/dist/ngHttpProgress.js.map @@ -1 +1 @@ -{"version":3,"file":"ngHttpProgress.js","sourceRoot":"/Users/zak/sites/spira/angular-http-progress/src/","sources":["ngHttpProgressInterfaces.ts","ngHttpProgressInterceptor.ts","ngHttpProgressService.ts","ngHttpProgressServiceProvider.ts"],"names":["NgHttpProgress","NgHttpProgress.NgHttpProgressInterceptor","NgHttpProgress.NgHttpProgressInterceptor.constructor","NgHttpProgress.NgHttpProgressService","NgHttpProgress.NgHttpProgressService.constructor","NgHttpProgress.NgHttpProgressService.start","NgHttpProgress.NgHttpProgressService.bumpBack","NgHttpProgress.NgHttpProgressService.stop","NgHttpProgress.NgHttpProgressService.complete","NgHttpProgress.NgHttpProgressService.rewind","NgHttpProgress.NgHttpProgressService.status","NgHttpProgress.NgHttpProgressService.progressStatus","NgHttpProgress.NgHttpProgressService.set","NgHttpProgress.NgHttpProgressService.finish","NgHttpProgress.NgHttpProgressService.reset","NgHttpProgress.NgHttpProgressService.initProgressMeter","NgHttpProgress.NgHttpProgressException","NgHttpProgress.NgHttpProgressException.constructor","NgHttpProgress.NgHttpProgressException.toString","NgHttpProgress.NgHttpProgressServiceProvider","NgHttpProgress.NgHttpProgressServiceProvider.constructor","NgHttpProgress.NgHttpProgressServiceProvider.constructor.ngHttpProgressServiceFactory","NgHttpProgress.NgHttpProgressServiceProvider.configure"],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"ngHttpProgress.js","sourceRoot":"/Users/zak/sites/spira/angular-http-progress/src/","sources":["ngHttpProgressInterfaces.ts","ngHttpProgressInterceptor.ts","ngHttpProgressService.ts","ngHttpProgressServiceProvider.ts"],"names":["NgHttpProgress","NgHttpProgress.NgHttpProgressInterceptor","NgHttpProgress.NgHttpProgressInterceptor.constructor","NgHttpProgress.NgHttpProgressService","NgHttpProgress.NgHttpProgressService.constructor","NgHttpProgress.NgHttpProgressService.start","NgHttpProgress.NgHttpProgressService.bumpBack","NgHttpProgress.NgHttpProgressService.stop","NgHttpProgress.NgHttpProgressService.complete","NgHttpProgress.NgHttpProgressService.rewind","NgHttpProgress.NgHttpProgressService.status","NgHttpProgress.NgHttpProgressService.progressStatus","NgHttpProgress.NgHttpProgressService.set","NgHttpProgress.NgHttpProgressService.finish","NgHttpProgress.NgHttpProgressService.reset","NgHttpProgress.NgHttpProgressService.initProgressMeter","NgHttpProgress.NgHttpProgressException","NgHttpProgress.NgHttpProgressException.constructor","NgHttpProgress.NgHttpProgressException.toString","NgHttpProgress.NgHttpProgressServiceProvider","NgHttpProgress.NgHttpProgressServiceProvider.constructor","NgHttpProgress.NgHttpProgressServiceProvider.constructor.ngHttpProgressServiceFactory","NgHttpProgress.NgHttpProgressServiceProvider.configure"],"mappings":"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"} \ No newline at end of file diff --git a/src/ngHttpProgressInterfaces.ts b/src/ngHttpProgressInterfaces.ts index d7db563..9613858 100644 --- a/src/ngHttpProgressInterfaces.ts +++ b/src/ngHttpProgressInterfaces.ts @@ -11,6 +11,7 @@ module NgHttpProgress { set(percentage:number):void; reset():void; complete():void; + getDomElement():Element; } export interface INgHttpProgressService { diff --git a/src/ngHttpProgressService.ts b/src/ngHttpProgressService.ts index 7c92c37..40f5734 100644 --- a/src/ngHttpProgressService.ts +++ b/src/ngHttpProgressService.ts @@ -47,8 +47,6 @@ module NgHttpProgress { return this.progressPromise; } - console.log('progress starting'); - return this.initProgressMeter(); } diff --git a/test/test.ts b/test/test.ts index aadcb87..e86777d 100644 --- a/test/test.ts +++ b/test/test.ts @@ -7,8 +7,11 @@ let expect = chai.expect; let fixtures = { - get foo(){ - return 'bar'; + get customConfig():NgHttpProgress.INgHttpProgressServiceConfig{ + return { + color: 'rgb(255, 0, 255)', + height: '2px' + }; }, }; @@ -30,6 +33,42 @@ let tickTime = (seconds) => { }; + + +describe('Custom configuration', function () { + + let ngHttpProgressProvider:NgHttpProgress.NgHttpProgressServiceProvider; + let customProgressService:NgHttpProgress.NgHttpProgressService; + + beforeEach(() => { + + module('ngHttpProgress', (_ngHttpProgressProvider_) => { + ngHttpProgressProvider = _ngHttpProgressProvider_; //register injection of service provider + + ngHttpProgressProvider.configure(fixtures.customConfig); + + }); + + }); + + beforeEach(()=>{ + inject((_ngHttpProgress_) => { + customProgressService = _ngHttpProgress_; + }) + }); + + it('should have the configured color and height', function() { + + let element:Element = (customProgressService).ngProgress.getDomElement(), + styledElement = jQuery(element).find('#ngProgress') + ; + expect(styledElement.css('backgroundColor')).to.equal(fixtures.customConfig.color); + expect(styledElement.css('height')).to.equal(fixtures.customConfig.height); + }); + + +}); + describe('Service tests', () => { let $httpBackend:ng.IHttpBackendService; @@ -70,7 +109,7 @@ describe('Service tests', () => { }); - describe('$http interceptor', () => { + describe('direct api call', () => { it('should start the progress bar when called directly', () => { @@ -99,6 +138,10 @@ describe('Service tests', () => { }) }); + }); + + describe('$http interceptor', () => { + it('should start the progress bar when an $http request starts', () => { From f980403278cf2c522e5c764706df0170f86f9499 Mon Sep 17 00:00:00 2001 From: Zak Henry Date: Tue, 7 Jul 2015 13:56:27 +1000 Subject: [PATCH 4/8] Fixed async tests --- dist/ngHttpProgress.js | 13 ++++++++++--- dist/ngHttpProgress.js.map | 2 +- src/ngHttpProgressService.ts | 16 +++++++++++++--- test/test.ts | 26 ++++++++++++++++++++------ 4 files changed, 44 insertions(+), 13 deletions(-) diff --git a/dist/ngHttpProgress.js b/dist/ngHttpProgress.js index 05f093e..e4e60c5 100644 --- a/dist/ngHttpProgress.js +++ b/dist/ngHttpProgress.js @@ -97,7 +97,8 @@ var NgHttpProgress; * @returns {IPromise} */ NgHttpProgressService.prototype.complete = function () { - if (this.pendingDelays === 1) { + this.pendingDelays--; + if (this.pendingDelays === 0) { this.currentProgressDeferred.resolve(); } return this.progressPromise; @@ -125,7 +126,10 @@ var NgHttpProgress; * @param percentage */ NgHttpProgressService.prototype.set = function (percentage) { - this.ngProgress.set(percentage); + var _this = this; + this.$timeout(function () { + _this.ngProgress.set(percentage); + }); return this.progressPromise; }; /** @@ -133,8 +137,11 @@ var NgHttpProgress; * @returns {IPromise} */ NgHttpProgressService.prototype.finish = function () { + var _this = this; var finishStatus = this.status(); - this.ngProgress.complete(); + this.$timeout(function () { + _this.ngProgress.complete(); + }); return this.$timeout(function () { return finishStatus; }, NgHttpProgressService.ngProgressFinishTime); diff --git a/dist/ngHttpProgress.js.map b/dist/ngHttpProgress.js.map index e81308c..41e5756 100644 --- a/dist/ngHttpProgress.js.map +++ b/dist/ngHttpProgress.js.map @@ -1 +1 @@ -{"version":3,"file":"ngHttpProgress.js","sourceRoot":"/Users/zak/sites/spira/angular-http-progress/src/","sources":["ngHttpProgressInterfaces.ts","ngHttpProgressInterceptor.ts","ngHttpProgressService.ts","ngHttpProgressServiceProvider.ts"],"names":["NgHttpProgress","NgHttpProgress.NgHttpProgressInterceptor","NgHttpProgress.NgHttpProgressInterceptor.constructor","NgHttpProgress.NgHttpProgressService","NgHttpProgress.NgHttpProgressService.constructor","NgHttpProgress.NgHttpProgressService.start","NgHttpProgress.NgHttpProgressService.bumpBack","NgHttpProgress.NgHttpProgressService.stop","NgHttpProgress.NgHttpProgressService.complete","NgHttpProgress.NgHttpProgressService.rewind","NgHttpProgress.NgHttpProgressService.status","NgHttpProgress.NgHttpProgressService.progressStatus","NgHttpProgress.NgHttpProgressService.set","NgHttpProgress.NgHttpProgressService.finish","NgHttpProgress.NgHttpProgressService.reset","NgHttpProgress.NgHttpProgressService.initProgressMeter","NgHttpProgress.NgHttpProgressException","NgHttpProgress.NgHttpProgressException.constructor","NgHttpProgress.NgHttpProgressException.toString","NgHttpProgress.NgHttpProgressServiceProvider","NgHttpProgress.NgHttpProgressServiceProvider.constructor","NgHttpProgress.NgHttpProgressServiceProvider.constructor.ngHttpProgressServiceFactory","NgHttpProgress.NgHttpProgressServiceProvider.configure"],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"ngHttpProgress.js","sourceRoot":"/Users/zak/sites/spira/angular-http-progress/src/","sources":["ngHttpProgressInterfaces.ts","ngHttpProgressInterceptor.ts","ngHttpProgressService.ts","ngHttpProgressServiceProvider.ts"],"names":["NgHttpProgress","NgHttpProgress.NgHttpProgressInterceptor","NgHttpProgress.NgHttpProgressInterceptor.constructor","NgHttpProgress.NgHttpProgressService","NgHttpProgress.NgHttpProgressService.constructor","NgHttpProgress.NgHttpProgressService.start","NgHttpProgress.NgHttpProgressService.bumpBack","NgHttpProgress.NgHttpProgressService.stop","NgHttpProgress.NgHttpProgressService.complete","NgHttpProgress.NgHttpProgressService.rewind","NgHttpProgress.NgHttpProgressService.status","NgHttpProgress.NgHttpProgressService.progressStatus","NgHttpProgress.NgHttpProgressService.set","NgHttpProgress.NgHttpProgressService.finish","NgHttpProgress.NgHttpProgressService.reset","NgHttpProgress.NgHttpProgressService.initProgressMeter","NgHttpProgress.NgHttpProgressException","NgHttpProgress.NgHttpProgressException.constructor","NgHttpProgress.NgHttpProgressException.toString","NgHttpProgress.NgHttpProgressServiceProvider","NgHttpProgress.NgHttpProgressServiceProvider.constructor","NgHttpProgress.NgHttpProgressServiceProvider.constructor.ngHttpProgressServiceFactory","NgHttpProgress.NgHttpProgressServiceProvider.configure"],"mappings":"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"} \ No newline at end of file diff --git a/src/ngHttpProgressService.ts b/src/ngHttpProgressService.ts index 40f5734..46271ed 100644 --- a/src/ngHttpProgressService.ts +++ b/src/ngHttpProgressService.ts @@ -47,6 +47,7 @@ module NgHttpProgress { return this.progressPromise; } + return this.initProgressMeter(); } @@ -79,7 +80,8 @@ module NgHttpProgress { */ public complete():ng.IPromise { - if (this.pendingDelays === 1){ //the last delay + this.pendingDelays --; + if (this.pendingDelays === 0){ //no more delays remaining this.currentProgressDeferred.resolve(); } @@ -112,7 +114,11 @@ module NgHttpProgress { * @param percentage */ public set(percentage:number):ng.IPromise { - this.ngProgress.set(percentage); + + this.$timeout(() => { //immediately invoke timeout in case a $digest cycle is busy + this.ngProgress.set(percentage); + }); + return this.progressPromise; } @@ -122,7 +128,10 @@ module NgHttpProgress { */ private finish():ng.IPromise { let finishStatus = this.status(); - this.ngProgress.complete(); + + this.$timeout(() => { //wrap in $timeout to allow $digest to have a cycle + this.ngProgress.complete(); + }); return this.$timeout(() => { //wait for the animation to finish before setting status return finishStatus; @@ -156,6 +165,7 @@ module NgHttpProgress { }, () => { //error return this.reset(); }, (bumpBack:boolean) => { //notify + if (bumpBack) { this.bumpBack(); } else if (this.stopped){ diff --git a/test/test.ts b/test/test.ts index e86777d..60d11d6 100644 --- a/test/test.ts +++ b/test/test.ts @@ -123,7 +123,7 @@ describe('Service tests', () => { }); - it('should complete the progress bar when called', () => { + it('should complete the progress bar when called', function(done) { expect(ngHttpProgressService.status()).to.be.greaterThan(0); @@ -131,11 +131,13 @@ describe('Service tests', () => { expect(completionPromise).eventually.to.be.greaterThan(0); //status when the progress bar was completed - tickTime(2); //fast forward intervals by 2 seconds - completionPromise.then(() => { expect(ngHttpProgressService.status()).to.equal(100); - }) + done(); + }); + + tickTime(2); //fast forward intervals by 2 seconds + }); }); @@ -143,7 +145,7 @@ describe('Service tests', () => { describe('$http interceptor', () => { - it('should start the progress bar when an $http request starts', () => { + it('should start the progress bar when an $http request starts', (done) => { $httpBackend.expectGET('/any').respond('foobar'); @@ -161,10 +163,16 @@ describe('Service tests', () => { expect(progressPromise).eventually.to.be.greaterThan(0); + progressPromise.then(() => { + done(); + }); + + tickTime(2); //flush the timeouts + }); - it('should be able to handle multiple http requests', () => { + it('should be able to handle multiple http requests', (done) => { $httpBackend.whenGET('/any').respond('foobar'); @@ -181,6 +189,12 @@ describe('Service tests', () => { $httpBackend.flush(); + progressPromise.then(() => { + done(); + }); + + tickTime(2); //flush the completion timeout + }) }); From 6d8b7e8180a59db1d53cd50cbdf33683d5fe02af Mon Sep 17 00:00:00 2001 From: Zak Henry Date: Tue, 7 Jul 2015 17:21:05 +1000 Subject: [PATCH 5/8] Added tests for request failure --- dist/ngHttpProgress.js | 8 ++++++-- dist/ngHttpProgress.js.map | 2 +- src/ngHttpProgressService.ts | 7 +++++-- test/test.ts | 24 ++++++++++++++++++++++++ 4 files changed, 36 insertions(+), 5 deletions(-) diff --git a/dist/ngHttpProgress.js b/dist/ngHttpProgress.js index e4e60c5..c2a96e0 100644 --- a/dist/ngHttpProgress.js +++ b/dist/ngHttpProgress.js @@ -151,8 +151,12 @@ var NgHttpProgress; * @returns {IPromise} */ NgHttpProgressService.prototype.reset = function () { - this.ngProgress.reset(); - return this.$q.when(this.status()); + var _this = this; + return this.$timeout(function () { + var finishStatus = _this.status(); + _this.ngProgress.reset(); + return finishStatus; + }); }; /** * Intialise the progress deferred promise diff --git a/dist/ngHttpProgress.js.map b/dist/ngHttpProgress.js.map index 41e5756..7fa7ffd 100644 --- a/dist/ngHttpProgress.js.map +++ b/dist/ngHttpProgress.js.map @@ -1 +1 @@ -{"version":3,"file":"ngHttpProgress.js","sourceRoot":"/Users/zak/sites/spira/angular-http-progress/src/","sources":["ngHttpProgressInterfaces.ts","ngHttpProgressInterceptor.ts","ngHttpProgressService.ts","ngHttpProgressServiceProvider.ts"],"names":["NgHttpProgress","NgHttpProgress.NgHttpProgressInterceptor","NgHttpProgress.NgHttpProgressInterceptor.constructor","NgHttpProgress.NgHttpProgressService","NgHttpProgress.NgHttpProgressService.constructor","NgHttpProgress.NgHttpProgressService.start","NgHttpProgress.NgHttpProgressService.bumpBack","NgHttpProgress.NgHttpProgressService.stop","NgHttpProgress.NgHttpProgressService.complete","NgHttpProgress.NgHttpProgressService.rewind","NgHttpProgress.NgHttpProgressService.status","NgHttpProgress.NgHttpProgressService.progressStatus","NgHttpProgress.NgHttpProgressService.set","NgHttpProgress.NgHttpProgressService.finish","NgHttpProgress.NgHttpProgressService.reset","NgHttpProgress.NgHttpProgressService.initProgressMeter","NgHttpProgress.NgHttpProgressException","NgHttpProgress.NgHttpProgressException.constructor","NgHttpProgress.NgHttpProgressException.toString","NgHttpProgress.NgHttpProgressServiceProvider","NgHttpProgress.NgHttpProgressServiceProvider.constructor","NgHttpProgress.NgHttpProgressServiceProvider.constructor.ngHttpProgressServiceFactory","NgHttpProgress.NgHttpProgressServiceProvider.configure"],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"ngHttpProgress.js","sourceRoot":"/Users/zak/sites/spira/angular-http-progress/src/","sources":["ngHttpProgressInterfaces.ts","ngHttpProgressInterceptor.ts","ngHttpProgressService.ts","ngHttpProgressServiceProvider.ts"],"names":["NgHttpProgress","NgHttpProgress.NgHttpProgressInterceptor","NgHttpProgress.NgHttpProgressInterceptor.constructor","NgHttpProgress.NgHttpProgressService","NgHttpProgress.NgHttpProgressService.constructor","NgHttpProgress.NgHttpProgressService.start","NgHttpProgress.NgHttpProgressService.bumpBack","NgHttpProgress.NgHttpProgressService.stop","NgHttpProgress.NgHttpProgressService.complete","NgHttpProgress.NgHttpProgressService.rewind","NgHttpProgress.NgHttpProgressService.status","NgHttpProgress.NgHttpProgressService.progressStatus","NgHttpProgress.NgHttpProgressService.set","NgHttpProgress.NgHttpProgressService.finish","NgHttpProgress.NgHttpProgressService.reset","NgHttpProgress.NgHttpProgressService.initProgressMeter","NgHttpProgress.NgHttpProgressException","NgHttpProgress.NgHttpProgressException.constructor","NgHttpProgress.NgHttpProgressException.toString","NgHttpProgress.NgHttpProgressServiceProvider","NgHttpProgress.NgHttpProgressServiceProvider.constructor","NgHttpProgress.NgHttpProgressServiceProvider.constructor.ngHttpProgressServiceFactory","NgHttpProgress.NgHttpProgressServiceProvider.configure"],"mappings":"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"} \ No newline at end of file diff --git a/src/ngHttpProgressService.ts b/src/ngHttpProgressService.ts index 46271ed..f5bfd16 100644 --- a/src/ngHttpProgressService.ts +++ b/src/ngHttpProgressService.ts @@ -144,9 +144,12 @@ module NgHttpProgress { */ private reset():ng.IPromise { - this.ngProgress.reset(); + return this.$timeout(() => { //wrap in $timeout to allow $digest to have a cycle + let finishStatus = this.status(); + this.ngProgress.reset(); + return finishStatus; + }); - return this.$q.when(this.status()); } /** diff --git a/test/test.ts b/test/test.ts index 60d11d6..32ad877 100644 --- a/test/test.ts +++ b/test/test.ts @@ -164,6 +164,30 @@ describe('Service tests', () => { expect(progressPromise).eventually.to.be.greaterThan(0); progressPromise.then(() => { + expect(ngHttpProgressService.status()).to.equal(0); + done(); + }); + + tickTime(2); //flush the timeouts + + }); + + it('should rewind the progress bar when an $http request fails', (done) => { + + $httpBackend.expectGET('/any').respond(500, 'foobar'); + + $http.get('/any'); + tickTime(2); //wait for the request to get to the interceptor + + let progressPromise = ngHttpProgressService.progressStatus(); + + $httpBackend.flush(); + + expect(progressPromise).eventually.to.be.fulfilled; + expect(progressPromise).eventually.to.be.greaterThan(0); + + progressPromise.then(() => { + expect(ngHttpProgressService.status()).to.equal(0); done(); }); From deb46ad49147bc315e53983baaffc0a96e91c58c Mon Sep 17 00:00:00 2001 From: Zak Henry Date: Tue, 7 Jul 2015 17:42:10 +1000 Subject: [PATCH 6/8] Added tests for invalid configuration --- dist/ngHttpProgress.js | 4 ++++ dist/ngHttpProgress.js.map | 2 +- src/ngHttpProgressServiceProvider.ts | 6 ++++++ test/test.ts | 10 ++++++++++ 4 files changed, 21 insertions(+), 1 deletion(-) diff --git a/dist/ngHttpProgress.js b/dist/ngHttpProgress.js index c2a96e0..33ec66d 100644 --- a/dist/ngHttpProgress.js +++ b/dist/ngHttpProgress.js @@ -241,6 +241,10 @@ var NgHttpProgress; * @returns {NgHttpProgress.NgHttpProgressServiceProvider} */ NgHttpProgressServiceProvider.prototype.configure = function (config) { + var mismatchedConfig = _.xor(_.keys(config), _.keys(this.config)); + if (mismatchedConfig.length > 0) { + throw new NgHttpProgressException("Invalid properties [" + mismatchedConfig.join(',') + "] passed to config)"); + } this.config = _.defaults(config, this.config); return this; }; diff --git a/dist/ngHttpProgress.js.map b/dist/ngHttpProgress.js.map index 7fa7ffd..a8e1beb 100644 --- a/dist/ngHttpProgress.js.map +++ b/dist/ngHttpProgress.js.map @@ -1 +1 @@ -{"version":3,"file":"ngHttpProgress.js","sourceRoot":"/Users/zak/sites/spira/angular-http-progress/src/","sources":["ngHttpProgressInterfaces.ts","ngHttpProgressInterceptor.ts","ngHttpProgressService.ts","ngHttpProgressServiceProvider.ts"],"names":["NgHttpProgress","NgHttpProgress.NgHttpProgressInterceptor","NgHttpProgress.NgHttpProgressInterceptor.constructor","NgHttpProgress.NgHttpProgressService","NgHttpProgress.NgHttpProgressService.constructor","NgHttpProgress.NgHttpProgressService.start","NgHttpProgress.NgHttpProgressService.bumpBack","NgHttpProgress.NgHttpProgressService.stop","NgHttpProgress.NgHttpProgressService.complete","NgHttpProgress.NgHttpProgressService.rewind","NgHttpProgress.NgHttpProgressService.status","NgHttpProgress.NgHttpProgressService.progressStatus","NgHttpProgress.NgHttpProgressService.set","NgHttpProgress.NgHttpProgressService.finish","NgHttpProgress.NgHttpProgressService.reset","NgHttpProgress.NgHttpProgressService.initProgressMeter","NgHttpProgress.NgHttpProgressException","NgHttpProgress.NgHttpProgressException.constructor","NgHttpProgress.NgHttpProgressException.toString","NgHttpProgress.NgHttpProgressServiceProvider","NgHttpProgress.NgHttpProgressServiceProvider.constructor","NgHttpProgress.NgHttpProgressServiceProvider.constructor.ngHttpProgressServiceFactory","NgHttpProgress.NgHttpProgressServiceProvider.configure"],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"ngHttpProgress.js","sourceRoot":"/Users/zak/sites/spira/angular-http-progress/src/","sources":["ngHttpProgressInterfaces.ts","ngHttpProgressInterceptor.ts","ngHttpProgressService.ts","ngHttpProgressServiceProvider.ts"],"names":["NgHttpProgress","NgHttpProgress.NgHttpProgressInterceptor","NgHttpProgress.NgHttpProgressInterceptor.constructor","NgHttpProgress.NgHttpProgressService","NgHttpProgress.NgHttpProgressService.constructor","NgHttpProgress.NgHttpProgressService.start","NgHttpProgress.NgHttpProgressService.bumpBack","NgHttpProgress.NgHttpProgressService.stop","NgHttpProgress.NgHttpProgressService.complete","NgHttpProgress.NgHttpProgressService.rewind","NgHttpProgress.NgHttpProgressService.status","NgHttpProgress.NgHttpProgressService.progressStatus","NgHttpProgress.NgHttpProgressService.set","NgHttpProgress.NgHttpProgressService.finish","NgHttpProgress.NgHttpProgressService.reset","NgHttpProgress.NgHttpProgressService.initProgressMeter","NgHttpProgress.NgHttpProgressException","NgHttpProgress.NgHttpProgressException.constructor","NgHttpProgress.NgHttpProgressException.toString","NgHttpProgress.NgHttpProgressServiceProvider","NgHttpProgress.NgHttpProgressServiceProvider.constructor","NgHttpProgress.NgHttpProgressServiceProvider.constructor.ngHttpProgressServiceFactory","NgHttpProgress.NgHttpProgressServiceProvider.configure"],"mappings":"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"} \ No newline at end of file diff --git a/src/ngHttpProgressServiceProvider.ts b/src/ngHttpProgressServiceProvider.ts index cf34ef2..f3d35e5 100644 --- a/src/ngHttpProgressServiceProvider.ts +++ b/src/ngHttpProgressServiceProvider.ts @@ -49,6 +49,12 @@ module NgHttpProgress { * @returns {NgHttpProgress.NgHttpProgressServiceProvider} */ public configure(config:INgHttpProgressServiceConfig) : NgHttpProgressServiceProvider { + + let mismatchedConfig = _.xor(_.keys(config), _.keys(this.config)); + if (mismatchedConfig.length > 0){ + throw new NgHttpProgressException("Invalid properties ["+mismatchedConfig.join(',')+"] passed to config)"); + } + this.config = _.defaults(config, this.config); return this; } diff --git a/test/test.ts b/test/test.ts index 32ad877..664db09 100644 --- a/test/test.ts +++ b/test/test.ts @@ -51,6 +51,16 @@ describe('Custom configuration', function () { }); + it('should throw an exception when invalid configuration is passed', () => { + + let testInvalidConfigurationFn = () => { + ngHttpProgressProvider.configure({invalid:'config'}); + }; + + expect(testInvalidConfigurationFn).to.throw(NgHttpProgress.NgHttpProgressException); + + }); + beforeEach(()=>{ inject((_ngHttpProgress_) => { customProgressService = _ngHttpProgress_; From 2167069fd8e9bb288921899ab9bc3b29463202bb Mon Sep 17 00:00:00 2001 From: Zak Henry Date: Tue, 7 Jul 2015 18:25:32 +1000 Subject: [PATCH 7/8] Added still failing test for checking start/stop functionality --- dist/ngHttpProgress.d.ts | 5 ++++ dist/ngHttpProgress.js | 44 +++++++++++++++++++++++-------- dist/ngHttpProgress.js.map | 2 +- src/ngHttpProgressService.ts | 50 +++++++++++++++++++++++++++--------- test/test.ts | 29 +++++++++++++++++++++ 5 files changed, 106 insertions(+), 24 deletions(-) diff --git a/dist/ngHttpProgress.d.ts b/dist/ngHttpProgress.d.ts index a95770d..efa371c 100644 --- a/dist/ngHttpProgress.d.ts +++ b/dist/ngHttpProgress.d.ts @@ -112,6 +112,11 @@ declare module NgHttpProgress { * @returns {IPromise} */ private reset(); + /** + * Handle the stopping. + * @returns {IPromise} + */ + private halt(); /** * Intialise the progress deferred promise * @returns {IPromise} diff --git a/dist/ngHttpProgress.js b/dist/ngHttpProgress.js index 33ec66d..fa38414 100644 --- a/dist/ngHttpProgress.js +++ b/dist/ngHttpProgress.js @@ -70,7 +70,13 @@ var NgHttpProgress; NgHttpProgressService.prototype.start = function () { this.pendingDelays++; if (this.currentProgressDeferred) { - this.currentProgressDeferred.notify(true); + if (this.stopped) { + this.stopped = false; + this.currentProgressDeferred.notify('start'); + } + else { + this.currentProgressDeferred.notify('bumpback'); + } return this.progressPromise; } return this.initProgressMeter(); @@ -89,7 +95,7 @@ var NgHttpProgress; * @returns {IPromise} */ NgHttpProgressService.prototype.stop = function () { - this.currentProgressDeferred.notify(false); + this.currentProgressDeferred.notify('stop'); return this.progressPromise; }; /** @@ -158,6 +164,19 @@ var NgHttpProgress; return finishStatus; }); }; + /** + * Handle the stopping. + * @returns {IPromise} + */ + NgHttpProgressService.prototype.halt = function () { + var _this = this; + this.stopped = true; + return this.$timeout(function () { + var currentStatus = _this.status(); + _this.ngProgress.stop(); + return currentStatus; + }); + }; /** * Intialise the progress deferred promise * @returns {IPromise} @@ -170,16 +189,19 @@ var NgHttpProgress; .then(function () { return _this.finish(); }, function () { + console.log('reset'); return _this.reset(); - }, function (bumpBack) { - if (bumpBack) { - _this.bumpBack(); - } - else if (_this.stopped) { - _this.ngProgress.start(); - } - else { - _this.stop(); + }, function (action) { + switch (action) { + case 'start': + _this.ngProgress.start(); + break; + case 'stop': + _this.halt(); + break; + case 'bumpback': + _this.bumpBack(); + break; } }) .finally(function () { diff --git a/dist/ngHttpProgress.js.map b/dist/ngHttpProgress.js.map index a8e1beb..e3eb4e3 100644 --- a/dist/ngHttpProgress.js.map +++ b/dist/ngHttpProgress.js.map @@ -1 +1 @@ -{"version":3,"file":"ngHttpProgress.js","sourceRoot":"/Users/zak/sites/spira/angular-http-progress/src/","sources":["ngHttpProgressInterfaces.ts","ngHttpProgressInterceptor.ts","ngHttpProgressService.ts","ngHttpProgressServiceProvider.ts"],"names":["NgHttpProgress","NgHttpProgress.NgHttpProgressInterceptor","NgHttpProgress.NgHttpProgressInterceptor.constructor","NgHttpProgress.NgHttpProgressService","NgHttpProgress.NgHttpProgressService.constructor","NgHttpProgress.NgHttpProgressService.start","NgHttpProgress.NgHttpProgressService.bumpBack","NgHttpProgress.NgHttpProgressService.stop","NgHttpProgress.NgHttpProgressService.complete","NgHttpProgress.NgHttpProgressService.rewind","NgHttpProgress.NgHttpProgressService.status","NgHttpProgress.NgHttpProgressService.progressStatus","NgHttpProgress.NgHttpProgressService.set","NgHttpProgress.NgHttpProgressService.finish","NgHttpProgress.NgHttpProgressService.reset","NgHttpProgress.NgHttpProgressService.initProgressMeter","NgHttpProgress.NgHttpProgressException","NgHttpProgress.NgHttpProgressException.constructor","NgHttpProgress.NgHttpProgressException.toString","NgHttpProgress.NgHttpProgressServiceProvider","NgHttpProgress.NgHttpProgressServiceProvider.constructor","NgHttpProgress.NgHttpProgressServiceProvider.constructor.ngHttpProgressServiceFactory","NgHttpProgress.NgHttpProgressServiceProvider.configure"],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"ngHttpProgress.js","sourceRoot":"/Users/zak/sites/spira/angular-http-progress/src/","sources":["ngHttpProgressInterfaces.ts","ngHttpProgressInterceptor.ts","ngHttpProgressService.ts","ngHttpProgressServiceProvider.ts"],"names":["NgHttpProgress","NgHttpProgress.NgHttpProgressInterceptor","NgHttpProgress.NgHttpProgressInterceptor.constructor","NgHttpProgress.NgHttpProgressService","NgHttpProgress.NgHttpProgressService.constructor","NgHttpProgress.NgHttpProgressService.start","NgHttpProgress.NgHttpProgressService.bumpBack","NgHttpProgress.NgHttpProgressService.stop","NgHttpProgress.NgHttpProgressService.complete","NgHttpProgress.NgHttpProgressService.rewind","NgHttpProgress.NgHttpProgressService.status","NgHttpProgress.NgHttpProgressService.progressStatus","NgHttpProgress.NgHttpProgressService.set","NgHttpProgress.NgHttpProgressService.finish","NgHttpProgress.NgHttpProgressService.reset","NgHttpProgress.NgHttpProgressService.halt","NgHttpProgress.NgHttpProgressService.initProgressMeter","NgHttpProgress.NgHttpProgressException","NgHttpProgress.NgHttpProgressException.constructor","NgHttpProgress.NgHttpProgressException.toString","NgHttpProgress.NgHttpProgressServiceProvider","NgHttpProgress.NgHttpProgressServiceProvider.constructor","NgHttpProgress.NgHttpProgressServiceProvider.constructor.ngHttpProgressServiceFactory","NgHttpProgress.NgHttpProgressServiceProvider.configure"],"mappings":"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"} \ No newline at end of file diff --git a/src/ngHttpProgressService.ts b/src/ngHttpProgressService.ts index f5bfd16..3bde9b6 100644 --- a/src/ngHttpProgressService.ts +++ b/src/ngHttpProgressService.ts @@ -42,7 +42,13 @@ module NgHttpProgress { this.pendingDelays ++; if (this.currentProgressDeferred){ //exists - this.currentProgressDeferred.notify(true); + + if (this.stopped){ + this.stopped = false; + this.currentProgressDeferred.notify('start'); + }else{ + this.currentProgressDeferred.notify('bumpback'); + } return this.progressPromise; } @@ -70,7 +76,7 @@ module NgHttpProgress { * @returns {IPromise} */ public stop():ng.IPromise { - this.currentProgressDeferred.notify(false); + this.currentProgressDeferred.notify('stop'); return this.progressPromise; } @@ -152,6 +158,22 @@ module NgHttpProgress { } + /** + * Handle the stopping. + * @returns {IPromise} + */ + private halt():ng.IPromise { + + this.stopped = true; + + return this.$timeout(() => { //wrap in $timeout to allow $digest to have a cycle + let currentStatus = this.status(); + this.ngProgress.stop(); + return currentStatus; + }); + + } + /** * Intialise the progress deferred promise * @returns {IPromise} @@ -166,18 +188,22 @@ module NgHttpProgress { .then(() => { //success return this.finish(); }, () => { //error + console.log('reset'); return this.reset(); - }, (bumpBack:boolean) => { //notify - - if (bumpBack) { - this.bumpBack(); - } else if (this.stopped){ - - this.ngProgress.start(); - }else{ - - this.stop(); + }, (action:string) => { //notify + + switch(action){ + case 'start': + this.ngProgress.start(); + break; + case 'stop': + this.halt(); + break; + case 'bumpback': + this.bumpBack(); + break; } + }) .finally(() => { this.currentProgressDeferred = null; //clear the current progress diff --git a/test/test.ts b/test/test.ts index 664db09..863864d 100644 --- a/test/test.ts +++ b/test/test.ts @@ -150,6 +150,35 @@ describe('Service tests', () => { }); + it.skip('should stop the progress bar when called', function(done){ + + ngHttpProgressService.start(); + + tickTime(0.5); //fast forward intervals by 2 seconds + + ngHttpProgressService.stop(); + + tickTime(0.5); //let more time elapse + + expect((ngHttpProgressService).stopped).to.be.true; + + ngHttpProgressService.start(); //restart + + tickTime(0.5); //let more time elapse + + let completionPromise = ngHttpProgressService.complete(); //resume and finish + + tickTime(2); //let more time elapse + + completionPromise.then(() => { + expect(ngHttpProgressService.status()).to.equal(100); + done(); + }); + + tickTime(2); //fast forward intervals by 2 seconds + + }); + }); describe('$http interceptor', () => { From d063ae4ee89edbf4da32a3a33baba6e37ea18a46 Mon Sep 17 00:00:00 2001 From: Zak Henry Date: Thu, 9 Jul 2015 10:25:17 +1000 Subject: [PATCH 8/8] Dropped comments, fixed bower name. Test still failing. --- bower.json | 4 ++-- dist/ngHttpProgress.js | 1 - dist/ngHttpProgress.js.map | 2 +- src/ngHttpProgressService.ts | 1 - 4 files changed, 3 insertions(+), 5 deletions(-) diff --git a/bower.json b/bower.json index 0f4eda8..3df1a86 100644 --- a/bower.json +++ b/bower.json @@ -1,7 +1,7 @@ { - "name": "ng-jwt-auth", + "name": "angular-http-progress", "version": "0.0.0", - "description": "Angular JSON Web Token Authentication Module", + "description": "Wrapper for https://github.com/victorbjelkholm/ngprogress - automatically handles http progress with interceptor", "main": "dist/ngHttpProgress.js", "dependencies": { "lodash": "~3.9.3", diff --git a/dist/ngHttpProgress.js b/dist/ngHttpProgress.js index fa38414..a06f80a 100644 --- a/dist/ngHttpProgress.js +++ b/dist/ngHttpProgress.js @@ -189,7 +189,6 @@ var NgHttpProgress; .then(function () { return _this.finish(); }, function () { - console.log('reset'); return _this.reset(); }, function (action) { switch (action) { diff --git a/dist/ngHttpProgress.js.map b/dist/ngHttpProgress.js.map index e3eb4e3..f7913c5 100644 --- a/dist/ngHttpProgress.js.map +++ b/dist/ngHttpProgress.js.map @@ -1 +1 @@ -{"version":3,"file":"ngHttpProgress.js","sourceRoot":"/Users/zak/sites/spira/angular-http-progress/src/","sources":["ngHttpProgressInterfaces.ts","ngHttpProgressInterceptor.ts","ngHttpProgressService.ts","ngHttpProgressServiceProvider.ts"],"names":["NgHttpProgress","NgHttpProgress.NgHttpProgressInterceptor","NgHttpProgress.NgHttpProgressInterceptor.constructor","NgHttpProgress.NgHttpProgressService","NgHttpProgress.NgHttpProgressService.constructor","NgHttpProgress.NgHttpProgressService.start","NgHttpProgress.NgHttpProgressService.bumpBack","NgHttpProgress.NgHttpProgressService.stop","NgHttpProgress.NgHttpProgressService.complete","NgHttpProgress.NgHttpProgressService.rewind","NgHttpProgress.NgHttpProgressService.status","NgHttpProgress.NgHttpProgressService.progressStatus","NgHttpProgress.NgHttpProgressService.set","NgHttpProgress.NgHttpProgressService.finish","NgHttpProgress.NgHttpProgressService.reset","NgHttpProgress.NgHttpProgressService.halt","NgHttpProgress.NgHttpProgressService.initProgressMeter","NgHttpProgress.NgHttpProgressException","NgHttpProgress.NgHttpProgressException.constructor","NgHttpProgress.NgHttpProgressException.toString","NgHttpProgress.NgHttpProgressServiceProvider","NgHttpProgress.NgHttpProgressServiceProvider.constructor","NgHttpProgress.NgHttpProgressServiceProvider.constructor.ngHttpProgressServiceFactory","NgHttpProgress.NgHttpProgressServiceProvider.configure"],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"ngHttpProgress.js","sourceRoot":"/Users/zak/sites/spira/angular-http-progress/src/","sources":["ngHttpProgressInterfaces.ts","ngHttpProgressInterceptor.ts","ngHttpProgressService.ts","ngHttpProgressServiceProvider.ts"],"names":["NgHttpProgress","NgHttpProgress.NgHttpProgressInterceptor","NgHttpProgress.NgHttpProgressInterceptor.constructor","NgHttpProgress.NgHttpProgressService","NgHttpProgress.NgHttpProgressService.constructor","NgHttpProgress.NgHttpProgressService.start","NgHttpProgress.NgHttpProgressService.bumpBack","NgHttpProgress.NgHttpProgressService.stop","NgHttpProgress.NgHttpProgressService.complete","NgHttpProgress.NgHttpProgressService.rewind","NgHttpProgress.NgHttpProgressService.status","NgHttpProgress.NgHttpProgressService.progressStatus","NgHttpProgress.NgHttpProgressService.set","NgHttpProgress.NgHttpProgressService.finish","NgHttpProgress.NgHttpProgressService.reset","NgHttpProgress.NgHttpProgressService.halt","NgHttpProgress.NgHttpProgressService.initProgressMeter","NgHttpProgress.NgHttpProgressException","NgHttpProgress.NgHttpProgressException.constructor","NgHttpProgress.NgHttpProgressException.toString","NgHttpProgress.NgHttpProgressServiceProvider","NgHttpProgress.NgHttpProgressServiceProvider.constructor","NgHttpProgress.NgHttpProgressServiceProvider.constructor.ngHttpProgressServiceFactory","NgHttpProgress.NgHttpProgressServiceProvider.configure"],"mappings":"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"} \ No newline at end of file diff --git a/src/ngHttpProgressService.ts b/src/ngHttpProgressService.ts index 3bde9b6..18342c1 100644 --- a/src/ngHttpProgressService.ts +++ b/src/ngHttpProgressService.ts @@ -188,7 +188,6 @@ module NgHttpProgress { .then(() => { //success return this.finish(); }, () => { //error - console.log('reset'); return this.reset(); }, (action:string) => { //notify