You've already forked tf2wikipricing
refactor: move extractPageTitleFromURL to module, add tests
This commit is contained in:
28
__tests__/url.test.ts
Normal file
28
__tests__/url.test.ts
Normal file
@@ -0,0 +1,28 @@
|
||||
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');
|
||||
});
|
||||
});
|
||||
Reference in New Issue
Block a user