Make the version number clickable for the SNAPSHOT version in development docker build (#843)
* Make the version number clickable for the SNAPSHOT version while using development docker build * Update the snapshot version link in to view list of commits since the release * Create a new component for the link to the version * Add tests and refactored a bit Co-authored-by: Deluan <deluan@navidrome.org>
This commit is contained in:
@@ -0,0 +1,54 @@
|
||||
import * as React from 'react'
|
||||
import { cleanup, render } from '@testing-library/react'
|
||||
import { LinkToVersion } from './AboutDialog'
|
||||
import TableBody from '@material-ui/core/TableBody'
|
||||
import TableRow from '@material-ui/core/TableRow'
|
||||
import Table from '@material-ui/core/Table'
|
||||
|
||||
const Wrapper = ({ version }) => (
|
||||
<Table>
|
||||
<TableBody>
|
||||
<TableRow>
|
||||
<LinkToVersion version={version} />
|
||||
</TableRow>
|
||||
</TableBody>
|
||||
</Table>
|
||||
)
|
||||
|
||||
describe('<LinkToVersion />', () => {
|
||||
afterEach(cleanup)
|
||||
|
||||
it('should not render any link for "dev" version', () => {
|
||||
const version = 'dev'
|
||||
const { queryByRole } = render(<Wrapper version={version} />)
|
||||
expect(queryByRole('link')).toBeNull()
|
||||
})
|
||||
|
||||
it('should render link to GH tag page for full releases', () => {
|
||||
const version = '0.40.0 (300a0292)'
|
||||
const { queryByRole } = render(<Wrapper version={version} />)
|
||||
|
||||
const link = queryByRole('link')
|
||||
expect(link.href).toBe(
|
||||
'https://github.com/navidrome/navidrome/releases/tag/v0.40.0'
|
||||
)
|
||||
expect(link.textContent).toBe('0.40.0')
|
||||
|
||||
const cell = queryByRole('cell')
|
||||
expect(cell.textContent).toBe('0.40.0 (300a0292)')
|
||||
})
|
||||
|
||||
it('should render link to GH comparison page for snapshot releases', () => {
|
||||
const version = '0.40.0-SNAPSHOT (300a0292)'
|
||||
const { queryByRole } = render(<Wrapper version={version} />)
|
||||
|
||||
const link = queryByRole('link')
|
||||
expect(link.href).toBe(
|
||||
'https://github.com/navidrome/navidrome/compare/v0.40.0...300a0292'
|
||||
)
|
||||
expect(link.textContent).toBe('0.40.0-SNAPSHOT')
|
||||
|
||||
const cell = queryByRole('cell')
|
||||
expect(cell.textContent).toBe('0.40.0-SNAPSHOT (300a0292)')
|
||||
})
|
||||
})
|
||||
Reference in New Issue
Block a user