adhoc_variable.jest.ts 1.4 KB

123456789101112131415161718192021222324252627282930313233343536
  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 separated 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. });