Refactor code structure for improved readability and maintainability
This commit is contained in:
@@ -1,6 +1,11 @@
|
||||
import { describe, it, expect } from 'vitest';
|
||||
import { getStateInfoClient } from '@/lib/getStateInfoClient';
|
||||
import { buildCanonicalUrl, buildCanonicalPath, normalizeHost } from '@/lib/getCanonicalUrl';
|
||||
import {
|
||||
buildCanonicalUrl,
|
||||
buildCanonicalPath,
|
||||
buildMainCanonicalUrl,
|
||||
normalizeHost,
|
||||
} from '@/lib/getCanonicalUrl';
|
||||
|
||||
function setLocation(loc) {
|
||||
Object.defineProperty(window, 'location', { value: loc, writable: true, configurable: true });
|
||||
@@ -56,3 +61,18 @@ describe('buildCanonicalUrl (self-canonical per-host)', () => {
|
||||
expect(buildCanonicalUrl(null, '/x')).toBe('https://nobat724.com/x');
|
||||
});
|
||||
});
|
||||
|
||||
describe('buildMainCanonicalUrl (canonical متادیتا → دامنهی اصلی)', () => {
|
||||
it('هر مسیری → همان مسیر روی nobat724.com', () => {
|
||||
expect(buildMainCanonicalUrl('/doctors')).toBe('https://nobat724.com/doctors');
|
||||
expect(buildMainCanonicalUrl('/doctor/abc-123')).toBe('https://nobat724.com/doctor/abc-123');
|
||||
});
|
||||
|
||||
it('ریشه → با trailing slash', () => {
|
||||
expect(buildMainCanonicalUrl('/')).toBe('https://nobat724.com/');
|
||||
});
|
||||
|
||||
it('query و trailing slash حذف میشوند', () => {
|
||||
expect(buildMainCanonicalUrl('/doctors/?specialty=قلب')).toBe('https://nobat724.com/doctors');
|
||||
});
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user