dashboardViewStateSrv-specs.js 1.2 KB

123456789101112131415161718192021222324252627282930313233343536373839
  1. define([
  2. 'app/features/dashboard/viewStateSrv'
  3. ], function() {
  4. 'use strict';
  5. describe('when updating view state', function() {
  6. var viewState, location;
  7. beforeEach(module('grafana.services'));
  8. beforeEach(inject(function(dashboardViewStateSrv, $location, $rootScope) {
  9. $rootScope.onAppEvent = function(){};
  10. viewState = dashboardViewStateSrv.create($rootScope);
  11. location = $location;
  12. }));
  13. describe('to fullscreen true and edit true', function() {
  14. it('should update querystring and view state', function() {
  15. var updateState = { fullscreen: true, edit: true, panelId: 1 };
  16. viewState.update(updateState);
  17. expect(location.search()).to.eql(updateState);
  18. expect(viewState.fullscreen).to.be(true);
  19. expect(viewState.state.fullscreen).to.be(true);
  20. });
  21. });
  22. describe('to fullscreen false', function() {
  23. it('should remove params from query string', function() {
  24. viewState.update({fullscreen: true, panelId: 1, edit: true});
  25. viewState.update({fullscreen: false});
  26. expect(location.search()).to.eql({});
  27. expect(viewState.fullscreen).to.be(false);
  28. expect(viewState.state.fullscreen).to.be(null);
  29. });
  30. });
  31. });
  32. });