ui: fix tests
This commit is contained in:
parent
155d7bb876
commit
7e1aa8d7e2
4 changed files with 23 additions and 3 deletions
|
@ -1,3 +1,5 @@
|
||||||
|
import { describe, expect, it } from 'vitest';
|
||||||
|
|
||||||
import extractSearchFilters from '@/helpers/extractSearchFilters';
|
import extractSearchFilters from '@/helpers/extractSearchFilters';
|
||||||
|
|
||||||
type TestCase = [string, 0 | Record<string, string[]>];
|
type TestCase = [string, 0 | Record<string, string[]>];
|
||||||
|
|
|
@ -1,3 +1,5 @@
|
||||||
|
import { describe, expect, it } from 'vitest';
|
||||||
|
|
||||||
import splitStringWhitespace from '@/helpers/splitStringWhitespace';
|
import splitStringWhitespace from '@/helpers/splitStringWhitespace';
|
||||||
|
|
||||||
describe('@/helpers/splitStringWhitespace.ts', function () {
|
describe('@/helpers/splitStringWhitespace.ts', function () {
|
||||||
|
|
|
@ -49,15 +49,27 @@ describe('@/lib/formatters.ts', () => {
|
||||||
expect(ip('127.0.0.1')).equals('127.0.0.1');
|
expect(ip('127.0.0.1')).equals('127.0.0.1');
|
||||||
});
|
});
|
||||||
|
|
||||||
|
it('should format an IPv4 address with a port', () => {
|
||||||
|
expect(ip('127.0.0.1:25565')).equals('[127.0.0.1:25565]');
|
||||||
|
});
|
||||||
|
|
||||||
it('should format an IPv6 address', () => {
|
it('should format an IPv6 address', () => {
|
||||||
|
expect(ip('::1')).equals('[::1]');
|
||||||
expect(ip(':::1')).equals('[:::1]');
|
expect(ip(':::1')).equals('[:::1]');
|
||||||
expect(ip('2001:db8::')).equals('[2001:db8::]');
|
expect(ip('2001:db8::')).equals('[2001:db8::]');
|
||||||
|
|
||||||
|
expect(ip('[::1]')).equals('[::1]');
|
||||||
|
expect(ip('[2001:db8::]')).equals('[2001:db8::]');
|
||||||
|
});
|
||||||
|
|
||||||
|
it('should format an IPv6 address with a port', () => {
|
||||||
|
expect(ip('[::1]:25565')).equals('[::1]:25565');
|
||||||
|
expect(ip('[2001:db8::]:25565')).equals('[2001:db8::]:25565');
|
||||||
});
|
});
|
||||||
|
|
||||||
it('should handle random inputs', () => {
|
it('should handle random inputs', () => {
|
||||||
expect(ip('1')).equals('1');
|
expect(ip('1')).equals('1');
|
||||||
expect(ip('foobar')).equals('foobar');
|
expect(ip('foobar')).equals('foobar');
|
||||||
expect(ip('127.0.0.1:25565')).equals('[127.0.0.1:25565]');
|
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
|
@ -27,8 +27,12 @@ function bytesToString(bytes: number, decimals = 2): string {
|
||||||
* Formats an IPv4 or IPv6 address.
|
* Formats an IPv4 or IPv6 address.
|
||||||
*/
|
*/
|
||||||
function ip(value: string): string {
|
function ip(value: string): string {
|
||||||
// noinspection RegExpSimplifiable
|
// Check if the value is already formatted.
|
||||||
return /^([a-f0-9:]+:+)+[a-f0-9]+$/.test(value) ? `[${value}]` : value;
|
if (value.length > 0 && value[0] === '[') {
|
||||||
|
return value;
|
||||||
|
}
|
||||||
|
|
||||||
|
return /([a-f0-9:]+:+)+[a-f0-9]+/.test(value) ? `[${value}]` : value;
|
||||||
}
|
}
|
||||||
|
|
||||||
export { ip, mbToBytes, bytesToString };
|
export { ip, mbToBytes, bytesToString };
|
||||||
|
|
Loading…
Reference in a new issue