123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123 |
- import utils from 'app/utils/queryString';
- describe('getQueryEnvironment()', function() {
- it('returns environment name', function() {
- const qs = 'is:unresolved is:unassigned environment:production';
- expect(utils.getQueryEnvironment(qs)).toBe('production');
- });
-
- it('returns empty string environment (the empty environment case)', function() {
- const qs = 'is:unresolved is:unassigned environment:';
- expect(utils.getQueryEnvironment(qs)).toBe('');
- });
- it('returns null if no environment specified in query', function() {
- const qs = 'is:unresolved is:unassigned';
- expect(utils.getQueryEnvironment(qs)).toBe(null);
- });
- it('handles environment with non word characters', function() {
- const qs = 'is:unresolved is:unassigned environment:something.com';
- expect(utils.getQueryEnvironment(qs)).toBe('something.com');
- });
- it('handles environment provided with quote marks', function() {
- const qs = 'is:unresolved is:unassigned environment:"production"';
- expect(utils.getQueryEnvironment(qs)).toBe('production');
- });
- it('handles environment names with space and quote marks', function() {
- const qs = 'is:unresolved is:unassigned environment:"my environment"';
- expect(utils.getQueryEnvironment(qs)).toBe('my environment');
- });
- it('handles query property similar to `environment`', function() {
- const qs = 'test_environment:development';
- expect(utils.getQueryEnvironment(qs)).toBe(null);
- });
- });
- describe('getQueryStringWithEnvironment', function() {
- it('replaces environment in query string', function() {
- const qs = 'is:unresolved environment:development is:unassigned';
- expect(utils.getQueryStringWithEnvironment(qs, 'staging')).toBe(
- 'is:unresolved is:unassigned environment:staging'
- );
- });
- it('handles empty string environment', function() {
- const qs = 'is:unresolved environment:development is:unassigned';
- expect(utils.getQueryStringWithEnvironment(qs, '')).toBe(
- 'is:unresolved is:unassigned environment:'
- );
- });
- it('handles null environment', function() {
- const qs = 'is:unresolved environment:development is:unassigned';
- expect(utils.getQueryStringWithEnvironment(qs, null)).toBe(
- 'is:unresolved is:unassigned'
- );
- });
- it('handles environment with non word characters', function() {
- const qs = 'is:unresolved environment:something.com is:unassigned';
- expect(utils.getQueryStringWithEnvironment(qs, 'test.com')).toBe(
- 'is:unresolved is:unassigned environment:test.com'
- );
- });
- it('handles query property similar to `environment`', function() {
- const qs = 'test_environment:development';
- expect(utils.getQueryStringWithEnvironment(qs, 'test.com')).toBe(
- 'test_environment:development environment:test.com'
- );
- });
- });
- describe('getQueryStringWithoutEnvironment', function() {
- it('removes environment from querystring', function() {
- const qs = 'is:unresolved environment:development is:unassigned';
- expect(utils.getQueryStringWithoutEnvironment(qs)).toBe(
- 'is:unresolved is:unassigned'
- );
- });
- it('removes empty environment from querystring', function() {
- const qs = 'is:unresolved environment: is:unassigned';
- expect(utils.getQueryStringWithoutEnvironment(qs)).toBe(
- 'is:unresolved is:unassigned'
- );
- });
- it('handles query property similar to `environment`', function() {
- const qs = 'test_environment:development';
- expect(utils.getQueryStringWithoutEnvironment(qs)).toBe(
- 'test_environment:development'
- );
- });
- });
- describe('addQueryParamsToExistingUrl', function() {
- it('adds new query params to existing query params', function() {
- const url = 'https://example.com?value=3';
- const newParams = {id: 4};
- expect(utils.addQueryParamsToExistingUrl(url, newParams)).toBe(
- 'https://example.com/?id=4&value=3'
- );
- });
- it('adds new query params without existing query params', function() {
- const url = 'https://example.com';
- const newParams = {id: 4};
- expect(utils.addQueryParamsToExistingUrl(url, newParams)).toBe(
- 'https://example.com/?id=4'
- );
- });
- it('returns empty string no url is passed', function() {
- let url;
- const newParams = {id: 4};
- expect(utils.addQueryParamsToExistingUrl(url, newParams)).toBe('');
- });
- });
|