Dmitrii Filippov | 06117e8 | 2020-06-25 13:26:55 +0200 | [diff] [blame] | 1 | /** |
| 2 | * @license |
Ben Rohlfs | 94fcbbc | 2022-05-27 10:45:03 +0200 | [diff] [blame] | 3 | * Copyright 2019 Google LLC |
| 4 | * SPDX-License-Identifier: Apache-2.0 |
Dmitrii Filippov | 06117e8 | 2020-06-25 13:26:55 +0200 | [diff] [blame] | 5 | */ |
Frank Borden | be9451a | 2022-09-12 15:44:29 +0200 | [diff] [blame] | 6 | import '../../../test/common-test-setup'; |
frankborden2@gmail.com | c7b7743 | 2021-09-03 17:05:24 +0200 | [diff] [blame] | 7 | import './gr-js-api-interface'; |
| 8 | import {getPluginNameFromUrl} from './gr-api-utils'; |
Frank Borden | e1ba821 | 2022-08-29 15:20:01 +0200 | [diff] [blame] | 9 | import {assert} from '@open-wc/testing'; |
Dmitrii Filippov | 4235b43 | 2020-04-06 17:21:09 +0200 | [diff] [blame] | 10 | |
Dmitrii Filippov | daf0ec9 | 2020-03-17 11:27:28 +0100 | [diff] [blame] | 11 | suite('gr-api-utils tests', () => { |
| 12 | suite('test getPluginNameFromUrl', () => { |
Dmitrii Filippov | daf0ec9 | 2020-03-17 11:27:28 +0100 | [diff] [blame] | 13 | test('with empty string', () => { |
| 14 | assert.equal(getPluginNameFromUrl(''), null); |
| 15 | }); |
Tao Zhou | c1d182d | 2019-10-15 10:23:22 +0200 | [diff] [blame] | 16 | |
Dmitrii Filippov | daf0ec9 | 2020-03-17 11:27:28 +0100 | [diff] [blame] | 17 | test('with invalid url', () => { |
| 18 | assert.equal(getPluginNameFromUrl('test'), null); |
| 19 | }); |
Tao Zhou | c1d182d | 2019-10-15 10:23:22 +0200 | [diff] [blame] | 20 | |
Dmitrii Filippov | daf0ec9 | 2020-03-17 11:27:28 +0100 | [diff] [blame] | 21 | test('with random invalid url', () => { |
| 22 | assert.equal(getPluginNameFromUrl('http://example.com'), null); |
| 23 | assert.equal( |
frankborden2@gmail.com | c7b7743 | 2021-09-03 17:05:24 +0200 | [diff] [blame] | 24 | getPluginNameFromUrl('http://example.com/static/a.js'), |
| 25 | null |
Dmitrii Filippov | daf0ec9 | 2020-03-17 11:27:28 +0100 | [diff] [blame] | 26 | ); |
| 27 | }); |
Tao Zhou | c1d182d | 2019-10-15 10:23:22 +0200 | [diff] [blame] | 28 | |
Dmitrii Filippov | daf0ec9 | 2020-03-17 11:27:28 +0100 | [diff] [blame] | 29 | test('with valid urls', () => { |
| 30 | assert.equal( |
frankborden2@gmail.com | c7b7743 | 2021-09-03 17:05:24 +0200 | [diff] [blame] | 31 | getPluginNameFromUrl('http://example.com/plugins/a.js'), |
| 32 | 'a' |
Dmitrii Filippov | daf0ec9 | 2020-03-17 11:27:28 +0100 | [diff] [blame] | 33 | ); |
| 34 | assert.equal( |
frankborden2@gmail.com | c7b7743 | 2021-09-03 17:05:24 +0200 | [diff] [blame] | 35 | getPluginNameFromUrl('http://example.com/plugins/a/static/t.js'), |
| 36 | 'a' |
Dmitrii Filippov | daf0ec9 | 2020-03-17 11:27:28 +0100 | [diff] [blame] | 37 | ); |
| 38 | }); |
Tao Zhou | c1d182d | 2019-10-15 10:23:22 +0200 | [diff] [blame] | 39 | |
Dmitrii Filippov | daf0ec9 | 2020-03-17 11:27:28 +0100 | [diff] [blame] | 40 | test('with gerrit-theme override', () => { |
| 41 | assert.equal( |
frankborden2@gmail.com | c7b7743 | 2021-09-03 17:05:24 +0200 | [diff] [blame] | 42 | getPluginNameFromUrl('http://example.com/static/gerrit-theme.js'), |
| 43 | 'gerrit-theme' |
Dmitrii Filippov | daf0ec9 | 2020-03-17 11:27:28 +0100 | [diff] [blame] | 44 | ); |
| 45 | }); |
Tao Zhou | 542096e | 2019-11-29 15:34:26 +0100 | [diff] [blame] | 46 | |
Dmitrii Filippov | daf0ec9 | 2020-03-17 11:27:28 +0100 | [diff] [blame] | 47 | test('with ASSETS_PATH', () => { |
| 48 | window.ASSETS_PATH = 'http://cdn.com/2'; |
| 49 | assert.equal( |
frankborden2@gmail.com | c7b7743 | 2021-09-03 17:05:24 +0200 | [diff] [blame] | 50 | getPluginNameFromUrl(`${window.ASSETS_PATH}/plugins/a.js`), |
| 51 | 'a' |
Dmitrii Filippov | daf0ec9 | 2020-03-17 11:27:28 +0100 | [diff] [blame] | 52 | ); |
| 53 | window.ASSETS_PATH = undefined; |
Tao Zhou | c1d182d | 2019-10-15 10:23:22 +0200 | [diff] [blame] | 54 | }); |
| 55 | }); |
Dmitrii Filippov | daf0ec9 | 2020-03-17 11:27:28 +0100 | [diff] [blame] | 56 | }); |