You've already forked tf2wikipricing
29 lines
1.0 KiB
TypeScript
29 lines
1.0 KiB
TypeScript
import { extractPageTitleFromURL } from '../src/content/utils/url';
|
|
|
|
describe('extractPageTitleFromURL', () => {
|
|
it('extracts simple title from URL', () => {
|
|
const url = 'https://wiki.teamfortress.com/wiki/Scattergun';
|
|
expect(extractPageTitleFromURL(url)).toBe('Scattergun');
|
|
});
|
|
|
|
it('replaces underscores with spaces', () => {
|
|
const url = 'https://wiki.teamfortress.com/wiki/Flame_Thrower';
|
|
expect(extractPageTitleFromURL(url)).toBe('Flame Thrower');
|
|
});
|
|
|
|
it('decodes URI components', () => {
|
|
const url = 'https://wiki.teamfortress.com/wiki/Dragon%27s_Fury';
|
|
expect(extractPageTitleFromURL(url)).toBe("Dragon's Fury");
|
|
});
|
|
|
|
it('handles special characters', () => {
|
|
const url = 'https://wiki.teamfortress.com/wiki/Ze_%C3%9Cbermensch';
|
|
expect(extractPageTitleFromURL(url)).toBe("Ze Übermensch");
|
|
});
|
|
|
|
it('removes language suffix', () => {
|
|
const url = 'https://wiki.teamfortress.com/wiki/Ze_%C3%9Cbermensch/pt-br';
|
|
expect(extractPageTitleFromURL(url)).toBe('Ze Übermensch');
|
|
});
|
|
});
|