/**
 * (createNavigation exports: Link, redirect, hooks — contract surface).
 */
jest.mock('next-intl/navigation', () => ({
  createNavigation: jest.fn(() => ({
    Link: 'Link',
    redirect: jest.fn(),
    usePathname: jest.fn(),
    useRouter: jest.fn(),
    getPathname: jest.fn(),
  })),
}))

jest.mock('../routing', () => ({ routing: { locales: ['vi', 'en'], defaultLocale: 'vi' } }))

import { Link, redirect, usePathname, useRouter, getPathname } from '../navigation'

describe('[i18n/navigation]', () => {
  describe('exports from createNavigation', () => {
    it('exports Link component token', () => {
      expect(Link).toBe('Link')
    })

    it('exports redirect', () => {
      expect(typeof redirect).toBe('function')
    })

    it('exports usePathname', () => {
      expect(typeof usePathname).toBe('function')
    })

    it('exports useRouter', () => {
      expect(typeof useRouter).toBe('function')
    })

    it('exports getPathname', () => {
      expect(typeof getPathname).toBe('function')
    })
  })
})
