diff --git a/src/apps/golf/components/PermalinkDisplay.module.css b/src/apps/golf/components/PermalinkDisplay.module.css
index 701e1fd..c59b99b 100644
--- a/src/apps/golf/components/PermalinkDisplay.module.css
+++ b/src/apps/golf/components/PermalinkDisplay.module.css
@@ -1,7 +1,4 @@
.permalinkDisplay {
- background: rgba(255, 255, 255, 0.1);
- border: 1px solid rgba(255, 255, 255, 0.2);
- border-radius: 8px;
padding: 12px;
margin: 8px 0;
}
diff --git a/src/apps/golf/components/PermalinkDisplay.tsx b/src/apps/golf/components/PermalinkDisplay.tsx
index 719627c..b178537 100644
--- a/src/apps/golf/components/PermalinkDisplay.tsx
+++ b/src/apps/golf/components/PermalinkDisplay.tsx
@@ -62,7 +62,7 @@ const PermalinkDisplay = ({ label, url, onCopy }: PermalinkDisplayProps) => {
case 'error':
return 'Failed'
default:
- return 'Copy Link'
+ return label
}
}
@@ -81,26 +81,14 @@ const PermalinkDisplay = ({ label, url, onCopy }: PermalinkDisplayProps) => {
return (
-
- {label}
-
-
-
- e.currentTarget.select()}
- />
-
+
)
}
diff --git a/src/apps/golf/components/__tests__/PermalinkDisplay.test.tsx b/src/apps/golf/components/__tests__/PermalinkDisplay.test.tsx
index 6040458..a676f45 100644
--- a/src/apps/golf/components/__tests__/PermalinkDisplay.test.tsx
+++ b/src/apps/golf/components/__tests__/PermalinkDisplay.test.tsx
@@ -46,9 +46,8 @@ describe('PermalinkDisplay', () => {
describe('Rendering', () => {
it('renders the component with label and URL', () => {
render()
-
+
expect(screen.getByText('Share Room')).toBeInTheDocument()
- expect(screen.getByDisplayValue('https://example.com/golf/room/ABC123')).toBeInTheDocument()
expect(screen.getByRole('button', { name: /copy share room/i })).toBeInTheDocument()
})
@@ -57,26 +56,18 @@ describe('PermalinkDisplay', () => {
label: 'Share Game',
url: 'https://example.com/golf/room/ABC123/game/XYZ789'
}
-
+
render()
-
+
expect(screen.getByText('Share Game')).toBeInTheDocument()
- expect(screen.getByDisplayValue('https://example.com/golf/room/ABC123/game/XYZ789')).toBeInTheDocument()
expect(screen.getByRole('button', { name: /copy share game/i })).toBeInTheDocument()
})
it('renders copy button with initial text', () => {
render()
-
- const copyButton = screen.getByRole('button', { name: /copy share room/i })
- expect(copyButton).toHaveTextContent('Copy Link')
- })
- it('renders URL input as readonly', () => {
- render()
-
- const urlInput = screen.getByDisplayValue(defaultProps.url)
- expect(urlInput).toHaveAttribute('readonly')
+ const copyButton = screen.getByRole('button', { name: /copy share room/i })
+ expect(copyButton).toHaveTextContent('Share Room')
})
})
@@ -100,7 +91,7 @@ describe('PermalinkDisplay', () => {
// Wait for reset
await waitFor(() => {
- expect(copyButton).toHaveTextContent('Copy Link')
+ expect(copyButton).toHaveTextContent('Share Room')
}, { timeout: 3000 })
})
@@ -132,7 +123,7 @@ describe('PermalinkDisplay', () => {
// Wait for reset
await waitFor(() => {
- expect(copyButton).toHaveTextContent('Copy Link')
+ expect(copyButton).toHaveTextContent('Share Room')
}, { timeout: 3000 })
})
})
@@ -261,24 +252,11 @@ describe('PermalinkDisplay', () => {
// Wait for the timeout to reset the button
await waitFor(() => {
- expect(copyButton).toHaveTextContent('Copy Link')
+ expect(copyButton).toHaveTextContent('Share Room')
}, { timeout: 3000 })
})
})
- describe('URL Input Interactions', () => {
- it('selects all text when URL input is clicked', () => {
- render()
-
- const urlInput = screen.getByDisplayValue(defaultProps.url) as HTMLInputElement
- const selectSpy = vi.spyOn(urlInput, 'select')
-
- fireEvent.click(urlInput)
-
- expect(selectSpy).toHaveBeenCalled()
- })
- })
-
describe('Accessibility', () => {
it('has proper aria-label for copy button', () => {
render()