seriesOverridesCtrl-specs.js 1.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  1. define([
  2. './helpers',
  3. 'app/panels/graph/seriesOverridesCtrl'
  4. ], function(helpers) {
  5. 'use strict';
  6. describe('SeriesOverridesCtrl', function() {
  7. var ctx = new helpers.ControllerTestContext();
  8. var popoverSrv = {};
  9. beforeEach(module('grafana.services'));
  10. beforeEach(module('grafana.panels.graph'));
  11. beforeEach(ctx.providePhase({
  12. popoverSrv: popoverSrv
  13. }));
  14. beforeEach(ctx.createControllerPhase('SeriesOverridesCtrl'));
  15. beforeEach(function() {
  16. ctx.scope.render = function() {};
  17. });
  18. describe('When setting an override', function() {
  19. beforeEach(function() {
  20. ctx.scope.setOverride({propertyName: 'lines'}, {value: true});
  21. });
  22. it('should set override property', function() {
  23. expect(ctx.scope.override.lines).to.be(true);
  24. });
  25. it('should update view model', function() {
  26. expect(ctx.scope.currentOverrides[0].name).to.be('Lines');
  27. expect(ctx.scope.currentOverrides[0].value).to.be('true');
  28. });
  29. });
  30. describe('When removing overide', function() {
  31. it('click should include option and value index', function() {
  32. ctx.scope.setOverride(1,0);
  33. ctx.scope.removeOverride({ propertyName: 'lines' });
  34. expect(ctx.scope.currentOverrides.length).to.be(0);
  35. });
  36. });
  37. });
  38. });