adhoc_variable.jest.ts 1.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. import {AdhocVariable} from '../adhoc_variable';
  2. describe('AdhocVariable', function() {
  3. describe('when serializing to url', function() {
  4. it('should set return key value and op seperated by pipe', function() {
  5. var variable = new AdhocVariable({
  6. filters: [
  7. {key: 'key1', operator: '=', value: 'value1'},
  8. {key: 'key2', operator: '!=', value: 'value2'},
  9. {key: 'key3', operator: '=', value: 'value3a|value3b|value3c'},
  10. ]
  11. });
  12. var urlValue = variable.getValueForUrl();
  13. expect(urlValue).toMatchObject(["key1|=|value1", "key2|!=|value2", "key3|=|value3a__gfp__value3b__gfp__value3c"]);
  14. });
  15. });
  16. describe('when deserializing from url', function() {
  17. it('should restore filters', function() {
  18. var variable = new AdhocVariable({});
  19. variable.setValueFromUrl(["key1|=|value1", "key2|!=|value2", "key3|=|value3a__gfp__value3b__gfp__value3c"]);
  20. expect(variable.filters[0].key).toBe('key1');
  21. expect(variable.filters[0].operator).toBe('=');
  22. expect(variable.filters[0].value).toBe('value1');
  23. expect(variable.filters[1].key).toBe('key2');
  24. expect(variable.filters[1].operator).toBe('!=');
  25. expect(variable.filters[1].value).toBe('value2');
  26. expect(variable.filters[2].key).toBe('key3');
  27. expect(variable.filters[2].operator).toBe('=');
  28. expect(variable.filters[2].value).toBe('value3a|value3b|value3c');
  29. });
  30. });
  31. });