diff --git a/public/app/features/dashboard/shareModalCtrl.js b/public/app/features/dashboard/shareModalCtrl.js index 1dd99dbb126..55ec0c8a410 100644 --- a/public/app/features/dashboard/shareModalCtrl.js +++ b/public/app/features/dashboard/shareModalCtrl.js @@ -43,9 +43,9 @@ function (angular, _, require, config) { var params = angular.copy($location.search()); - var range = timeSrv.timeRangeForUrl(); - params.from = range.from; - params.to = range.to; + var range = timeSrv.timeRange(); + params.from = range.from.getTime(); + params.to = range.to.getTime(); if ($scope.options.includeTemplateVars) { templateSrv.fillVariableValuesForUrl(params); diff --git a/public/test/specs/shareModalCtrl-specs.js b/public/test/specs/shareModalCtrl-specs.js index d0d69479a13..c9d5131d11a 100644 --- a/public/test/specs/shareModalCtrl-specs.js +++ b/public/test/specs/shareModalCtrl-specs.js @@ -9,10 +9,10 @@ define([ var ctx = new helpers.ControllerTestContext(); function setTime(range) { - ctx.timeSrv.timeRangeForUrl = sinon.stub().returns(range); + ctx.timeSrv.timeRange = sinon.stub().returns(range); } - setTime({ from: 'now-1h', to: 'now' }); + setTime({ from: new Date(1000), to: new Date(2000) }); beforeEach(module('grafana.controllers')); beforeEach(module('grafana.services')); @@ -23,57 +23,43 @@ define([ describe('shareUrl with current time range and panel', function() { - it('should generate share url relative time', function() { - ctx.$location.path('/test'); - ctx.scope.panel = { id: 22 }; - - setTime({ from: 'now-1h', to: 'now' }); - - ctx.scope.init(); - expect(ctx.scope.shareUrl).to.be('http://server/#/test?from=now-1h&to=now&panelId=22&fullscreen'); - }); - it('should generate share url absolute time', function() { ctx.$location.path('/test'); ctx.scope.panel = { id: 22 }; - setTime({ from: 1362178800000, to: 1396648800000 }); ctx.scope.init(); - expect(ctx.scope.shareUrl).to.be('http://server/#/test?from=1362178800000&to=1396648800000&panelId=22&fullscreen'); + expect(ctx.scope.shareUrl).to.be('http://server/#/test?from=1000&to=2000&panelId=22&fullscreen'); }); it('should remove panel id when no panel in scope', function() { ctx.$location.path('/test'); ctx.scope.options.forCurrent = true; ctx.scope.panel = null; - setTime({ from: 'now-1h', to: 'now' }); ctx.scope.init(); - expect(ctx.scope.shareUrl).to.be('http://server/#/test?from=now-1h&to=now'); + expect(ctx.scope.shareUrl).to.be('http://server/#/test?from=1000&to=2000'); }); it('should add theme when specified', function() { ctx.$location.path('/test'); ctx.scope.options.theme = 'light'; ctx.scope.panel = null; - setTime({ from: 'now-1h', to: 'now' }); ctx.scope.init(); - expect(ctx.scope.shareUrl).to.be('http://server/#/test?from=now-1h&to=now&theme=light'); + expect(ctx.scope.shareUrl).to.be('http://server/#/test?from=1000&to=2000&theme=light'); }); it('should include template variables in url', function() { ctx.$location.path('/test'); ctx.scope.options.includeTemplateVars = true; - setTime({ from: 'now-1h', to: 'now' }); ctx.templateSrv.fillVariableValuesForUrl = function(params) { params['var-app'] = 'mupp'; params['var-server'] = 'srv-01'; }; ctx.scope.buildUrl(); - expect(ctx.scope.shareUrl).to.be('http://server/#/test?from=now-1h&to=now&var-app=mupp&var-server=srv-01'); + expect(ctx.scope.shareUrl).to.be('http://server/#/test?from=1000&to=2000&var-app=mupp&var-server=srv-01'); }); });