mirror of
https://github.com/pacnpal/Roo-Code.git
synced 2025-12-20 12:21:13 -05:00
add volume slider tests
This commit is contained in:
@@ -104,6 +104,9 @@ describe('SettingsView - Sound Settings', () => {
|
|||||||
name: /Enable sound effects/i
|
name: /Enable sound effects/i
|
||||||
})
|
})
|
||||||
expect(soundCheckbox).not.toBeChecked()
|
expect(soundCheckbox).not.toBeChecked()
|
||||||
|
|
||||||
|
// Volume slider should not be visible when sound is disabled
|
||||||
|
expect(screen.queryByRole('slider')).not.toBeInTheDocument()
|
||||||
})
|
})
|
||||||
|
|
||||||
it('toggles sound setting and sends message to VSCode', () => {
|
it('toggles sound setting and sends message to VSCode', () => {
|
||||||
@@ -128,6 +131,50 @@ describe('SettingsView - Sound Settings', () => {
|
|||||||
})
|
})
|
||||||
)
|
)
|
||||||
})
|
})
|
||||||
|
|
||||||
|
it('shows volume slider when sound is enabled', () => {
|
||||||
|
renderSettingsView()
|
||||||
|
|
||||||
|
// Enable sound
|
||||||
|
const soundCheckbox = screen.getByRole('checkbox', {
|
||||||
|
name: /Enable sound effects/i
|
||||||
|
})
|
||||||
|
fireEvent.click(soundCheckbox)
|
||||||
|
|
||||||
|
// Volume slider should be visible
|
||||||
|
const volumeSlider = screen.getByRole('slider')
|
||||||
|
expect(volumeSlider).toBeInTheDocument()
|
||||||
|
expect(volumeSlider).toHaveValue('0.5') // Default value
|
||||||
|
})
|
||||||
|
|
||||||
|
it('updates volume and sends message to VSCode when slider changes', () => {
|
||||||
|
renderSettingsView()
|
||||||
|
|
||||||
|
// Enable sound
|
||||||
|
const soundCheckbox = screen.getByRole('checkbox', {
|
||||||
|
name: /Enable sound effects/i
|
||||||
|
})
|
||||||
|
fireEvent.click(soundCheckbox)
|
||||||
|
|
||||||
|
// Change volume
|
||||||
|
const volumeSlider = screen.getByRole('slider')
|
||||||
|
fireEvent.change(volumeSlider, { target: { value: '0.75' } })
|
||||||
|
|
||||||
|
// Verify volume display updates
|
||||||
|
expect(screen.getByText('75%')).toBeInTheDocument()
|
||||||
|
|
||||||
|
// Click Done to save settings
|
||||||
|
const doneButton = screen.getByText('Done')
|
||||||
|
fireEvent.click(doneButton)
|
||||||
|
|
||||||
|
// Verify message sent to VSCode
|
||||||
|
expect(vscode.postMessage).toHaveBeenCalledWith(
|
||||||
|
expect.objectContaining({
|
||||||
|
type: 'soundVolume',
|
||||||
|
value: 0.75
|
||||||
|
})
|
||||||
|
)
|
||||||
|
})
|
||||||
})
|
})
|
||||||
|
|
||||||
describe('SettingsView - Allowed Commands', () => {
|
describe('SettingsView - Allowed Commands', () => {
|
||||||
|
|||||||
Reference in New Issue
Block a user