Fix TypeScript errors in useContainerActions test

Added missing 'success: true' property to all mock ContainerActionResponse
objects in the test file. These were causing TypeScript compilation errors
during the Next.js build process (tsc --noEmit), even though Jest tests
were passing.

The ContainerActionResponse interface requires the 'success' property,
but the mocks were only providing 'message'. This caused CI builds to fail
while local Jest tests passed because Jest's TypeScript handling is more
lenient than Next.js's build-time type checking.

Fixed:
- mockApiClient.startContainer responses (2 occurrences)
- mockApiClient.stopContainer response
- mockApiClient.restartContainer response
- mockApiClient.removeContainer response

Verified:
- npx tsc --noEmit: ✓ No TypeScript errors
- npm test: ✓ All tests pass
- npm run build: ✓ Build succeeds

https://claude.ai/code/session_7d4f1b7d-7a0d-44db-b437-c76b6b61dfb2
This commit is contained in:
Claude
2026-02-01 22:39:18 +00:00
parent 9c16780f9e
commit 442bcc623c

View File

@@ -16,7 +16,7 @@ describe('useContainerActions', () => {
describe('handleStart', () => {
it('should start container and show success', async () => {
mockApiClient.startContainer.mockResolvedValueOnce({ message: 'Started' });
mockApiClient.startContainer.mockResolvedValueOnce({ success: true, message: 'Started' });
const { result } = renderHook(() => useContainerActions(containerId, mockOnUpdate));
@@ -50,7 +50,7 @@ describe('useContainerActions', () => {
describe('handleStop', () => {
it('should stop container and show success', async () => {
mockApiClient.stopContainer.mockResolvedValueOnce({ message: 'Stopped' });
mockApiClient.stopContainer.mockResolvedValueOnce({ success: true, message: 'Stopped' });
const { result } = renderHook(() => useContainerActions(containerId, mockOnUpdate));
@@ -78,7 +78,7 @@ describe('useContainerActions', () => {
describe('handleRestart', () => {
it('should restart container and show success', async () => {
mockApiClient.restartContainer.mockResolvedValueOnce({ message: 'Restarted' });
mockApiClient.restartContainer.mockResolvedValueOnce({ success: true, message: 'Restarted' });
const { result } = renderHook(() => useContainerActions(containerId, mockOnUpdate));
@@ -105,7 +105,7 @@ describe('useContainerActions', () => {
describe('handleRemove', () => {
it('should remove container and show success', async () => {
mockApiClient.removeContainer.mockResolvedValueOnce({ message: 'Removed' });
mockApiClient.removeContainer.mockResolvedValueOnce({ success: true, message: 'Removed' });
const { result } = renderHook(() => useContainerActions(containerId, mockOnUpdate));
@@ -133,7 +133,7 @@ describe('useContainerActions', () => {
describe('closeSnackbar', () => {
it('should close snackbar', async () => {
mockApiClient.startContainer.mockResolvedValueOnce({ message: 'Started' });
mockApiClient.startContainer.mockResolvedValueOnce({ success: true, message: 'Started' });
const { result } = renderHook(() => useContainerActions(containerId));