📄 dm6430-test-lib-errors.c
字号:
expect_success(status); descriptors[0] = status; status = InitBoard6430(descriptors[0]); expect_success(status); status = CloseBoard6430(descriptors[0]); expect_success(status); /* * Test EnableIRQ6430() error checking. */ fprintf(stdout, "## Testing EnableIRQ6430() ...\n"); fprintf(stdout, " On bad file descriptor ...\n"); status = EnableIRQ6430(descriptors[0], DM6430HR_INT1); expect_failure_and_check(status, EBADF); status = OpenBoard6430(0); expect_success(status); descriptors[0] = status; fprintf(stdout, " On invalid interrupt circuit ...\n"); status = EnableIRQ6430(descriptors[0], (DM6430HR_INT2 + 1)); expect_failure_and_check(status, EINVAL); fprintf(stdout, " On another invalid interrupt circuit ...\n"); status = EnableIRQ6430(descriptors[0], -1); expect_failure_and_check(status, EINVAL); fprintf(stdout, " On valid descriptor ...\n"); status = EnableIRQ6430(descriptors[0], DM6430HR_INT2); expect_success(status); status = CloseBoard6430(descriptors[0]); expect_success(status); /* * Test DisableIRQ6430() error checking. */ fprintf(stdout, "## Testing DisableIRQ6430() ...\n"); fprintf(stdout, " On bad file descriptor ...\n"); status = DisableIRQ6430(descriptors[0], DM6430HR_INT1); expect_failure_and_check(status, EBADF); status = OpenBoard6430(0); expect_success(status); descriptors[0] = status; fprintf(stdout, " On invalid interrupt circuit ...\n"); status = DisableIRQ6430(descriptors[0], (DM6430HR_INT2 + 1)); expect_failure_and_check(status, EINVAL); fprintf(stdout, " On another invalid interrupt circuit ...\n"); status = DisableIRQ6430(descriptors[0], -1); expect_failure_and_check(status, EINVAL); fprintf(stdout, " On valid descriptor ...\n"); status = DisableIRQ6430(descriptors[0], DM6430HR_INT1); expect_success(status); status = CloseBoard6430(descriptors[0]); expect_success(status); /* * Test GetIRQCounter6430() error checking. */ fprintf(stdout, "## Testing GetIRQCounter6430() ...\n"); fprintf(stdout, " On bad file descriptor ...\n"); status = GetIRQCounter6430(descriptors[0], DM6430HR_INT2, &counter_value); expect_failure_and_check(status, EBADF); status = OpenBoard6430(0); expect_success(status); descriptors[0] = status; fprintf(stdout, " On invalid interrupt circuit ...\n"); status = GetIRQCounter6430( descriptors[0], (DM6430HR_INT2 + 1), &counter_value ); expect_failure_and_check(status, EINVAL); fprintf(stdout, " On another invalid interrupt circuit ...\n"); status = GetIRQCounter6430(descriptors[0], -3, &counter_value); expect_failure_and_check(status, EINVAL); fprintf(stdout, " On valid descriptor ...\n"); status = GetIRQCounter6430(descriptors[0], DM6430HR_INT1, &counter_value); expect_success(status); status = CloseBoard6430(descriptors[0]); expect_success(status); /* * Test InstallDMA6430() error checking. */ fprintf(stdout, "## Testing InstallDMA6430() ...\n"); fprintf(stdout, " On bad file descriptor ...\n"); status = InstallDMA6430(descriptors[0], DM6430HR_DMA1); expect_failure_and_check(status, EBADF); status = OpenBoard6430(0); expect_success(status); descriptors[0] = status; fprintf(stdout, " On bad dma circuit ...\n"); status = InstallDMA6430(descriptors[0], (DM6430HR_DMA2 + 1)); expect_failure_and_check(status, EINVAL); fprintf(stdout, " On another bad dma circuit ...\n"); status = InstallDMA6430(descriptors[0], -99); expect_failure_and_check(status, EINVAL); fprintf(stdout, " On valid descriptor ...\n"); status = InstallDMA6430(descriptors[0], DM6430HR_DMA2); expect_success(status); status = CloseBoard6430(descriptors[0]); expect_success(status); /* * Test DeInstallDMA6430() error checking. */ fprintf(stdout, "## Testing DeInstallDMA6430() ...\n"); fprintf(stdout, " On bad file descriptor ...\n"); status = DeInstallDMA6430(descriptors[0], DM6430HR_DMA1); expect_failure_and_check(status, EBADF); status = OpenBoard6430(0); expect_success(status); descriptors[0] = status; fprintf(stdout, " On bad dma circuit ...\n"); status = DeInstallDMA6430(descriptors[0], (DM6430HR_DMA2 + 2)); expect_failure_and_check(status, EINVAL); fprintf(stdout, " On another bad dma circuit ...\n"); status = DeInstallDMA6430(descriptors[0], -2); expect_failure_and_check(status, EINVAL); fprintf(stdout, " On valid descriptor ...\n"); status = DeInstallDMA6430(descriptors[0], DM6430HR_DMA1); expect_success(status); status = CloseBoard6430(descriptors[0]); expect_success(status); /* * Test GetDmaData6430() error checking. */ fprintf(stdout, "## Testing GetDmaData6430() ...\n"); fprintf(stdout, " On bad file descriptor ...\n"); status = GetDmaData6430( descriptors[0], (void *) &dma_buffer[0], DM6430HR_DMA1, 4096, 0, &dma_bytes ); expect_failure_and_check(status, EBADF); status = OpenBoard6430(0); expect_success(status); descriptors[0] = status; fprintf(stdout, " On valid descriptor without DMA enabled ...\n"); status = GetDmaData6430( descriptors[0], (void *) &dma_buffer[0], DM6430HR_DMA1, 4096, 0, &dma_bytes ); expect_failure_and_check(status, EINVAL); status = InstallDMA6430(descriptors[0], DM6430HR_DMA1); expect_success(status); fprintf(stdout, " On bad DMA circuit ...\n"); status = GetDmaData6430( descriptors[0], (void *) &dma_buffer[0], 999, 4096, 0, &dma_bytes ); expect_failure_and_check(status, EINVAL); fprintf(stdout, " On another bad DMA circuit ...\n"); status = GetDmaData6430( descriptors[0], (void *) &dma_buffer[0], -11, 4096, 0, &dma_bytes ); expect_failure_and_check(status, EINVAL); fprintf(stdout, " On valid descriptor with bad length ...\n"); status = GetDmaData6430( descriptors[0], (void *) &dma_buffer[0], DM6430HR_DMA1, 0x100000, 0, &dma_bytes ); expect_failure_and_check(status, EINVAL); fprintf(stdout, " On valid descriptor and length but bad offset ...\n"); status = GetDmaData6430( descriptors[0], (void *) &dma_buffer[0], DM6430HR_DMA1, 4096, 0x100000, &dma_bytes ); expect_failure_and_check(status, EINVAL); fprintf(stdout, " Valid descriptor/length/offset bad address ...\n"); status = GetDmaData6430( descriptors[0], (void *) 0x00000100, DM6430HR_DMA1, 4096, 0, &dma_bytes ); expect_failure_and_check(status, EFAULT); fprintf(stdout, " Another bad address ...\n"); status = GetDmaData6430( descriptors[0], (void *) 0xffff0000, DM6430HR_DMA1, 4096, 0, &dma_bytes ); expect_failure_and_check(status, EFAULT); fprintf(stdout, " Yet another bad address ...\n"); status = GetDmaData6430( descriptors[0], (void *) usage, DM6430HR_DMA1, 4096, 0, &dma_bytes ); expect_failure_and_check(status, EFAULT); fprintf(stdout, " Valid descriptor/length/offset/address ...\n"); status = GetDmaData6430( descriptors[0], (void *) &dma_buffer[0], DM6430HR_DMA1, 4096, 0, &dma_bytes ); expect_success(status); status = CloseBoard6430(descriptors[0]); expect_success(status); /* * Test StartDMA6430() error checking. */ fprintf(stdout, "## Testing StartDMA6430() ...\n"); fprintf(stdout, " On bad file descriptor ...\n"); status = StartDMA6430(descriptors[0], DM6430HR_DMA1, 4096); expect_failure_and_check(status, EBADF); status = OpenBoard6430(0); expect_success(status); descriptors[0] = status; fprintf(stdout, " On valid descriptor without DMA enabled ...\n"); status = StartDMA6430(descriptors[0], DM6430HR_DMA1, 4096); expect_failure_and_check(status, EINVAL); status = InstallDMA6430(descriptors[0], DM6430HR_DMA1); expect_success(status); fprintf(stdout, " On bad DMA circuit ...\n"); status = StartDMA6430(descriptors[0], 15, 4096); expect_failure_and_check(status, EINVAL); fprintf(stdout, " On another bad DMA circuit ...\n"); status = StartDMA6430(descriptors[0], -2, 4096); expect_failure_and_check(status, EINVAL); fprintf(stdout, " On valid descriptor with odd length ...\n"); status = StartDMA6430(descriptors[0], DM6430HR_DMA1, 1); expect_failure_and_check(status, EINVAL); fprintf(stdout, " On valid descriptor with bad length ...\n"); status = StartDMA6430(descriptors[0], DM6430HR_DMA1, 0x100000); expect_failure_and_check(status, EINVAL); fprintf(stdout, " On valid descriptor and length ...\n"); status = StartDMA6430(descriptors[0], DM6430HR_DMA1, 4096); expect_success(status); status = CloseBoard6430(descriptors[0]); expect_success(status); /* * Test StopDMA6430() error checking. */ fprintf(stdout, "## Testing StopDMA6430() ...\n"); fprintf(stdout, " On bad file descriptor ...\n"); status = StopDMA6430(descriptors[0], DM6430HR_DMA1); expect_failure_and_check(status, EBADF); status = OpenBoard6430(0); expect_success(status); descriptors[0] = status; fprintf(stdout, " On bad DMA circuit ...\n"); status = StopDMA6430(descriptors[0], 7); expect_failure_and_check(status, EINVAL); fprintf(stdout, " On another bad DMA circuit ...\n"); status = StopDMA6430(descriptors[0], -7); expect_failure_and_check(status, EINVAL); fprintf(stdout, " On valid descriptor ...\n"); status = InstallDMA6430(descriptors[0], DM6430HR_DMA1); expect_success(status); status = StartDMA6430(descriptors[0], DM6430HR_DMA1, 4096); expect_success(status); status = StopDMA6430(descriptors[0], DM6430HR_DMA1); expect_success(status); status = CloseBoard6430(descriptors[0]); expect_success(status); /* * Test GetAutoincData6430() error checking. */ fprintf(stdout, "## Testing GetAutoincData6430() ...\n"); fprintf(stdout, " On bad file descriptor ...\n"); status = GetAutoincData6430( descriptors[0], rSTR_AD_6430, DM6430HR_STR_TYPE_WORD, (void *) &dma_buffer[0], 100 ); expect_failure_and_check(status, EBADF); status = OpenBoard6430(0); expect_success(status); descriptors[0] = status; fprintf(stdout, " On invalid number of elements ...\n"); status = GetAutoincData6430( descriptors[0], rSTR_AD_6430, DM6430HR_STR_TYPE_WORD, (void *) &dma_buffer[0], 1025 ); expect_failure_and_check(status, EINVAL); fprintf(stdout, " On bad stream register ...\n"); status = GetAutoincData6430( descriptors[0], 40, DM6430HR_STR_TYPE_BYTE, (void *) &dma_buffer[0], 100 ); expect_failure_and_check(status, EINVAL); fprintf(stdout, " On another bad stream register ...\n"); status = GetAutoincData6430( descriptors[0], -1, DM6430HR_STR_TYPE_BYTE, (void *) &dma_buffer[0], 100 ); expect_failure_and_check(status, EINVAL); fprintf(stdout, " On bad stream type ...\n"); status = GetAutoincData6430( descriptors[0], rSTR_AD_6430, (DM6430HR_STR_TYPE_WORD + 1), (void *) &dma_buffer[0], 100 ); expect_failure_and_check(status, EINVAL); fprintf(stdout, " On another bad stream type ...\n"); status = GetAutoincData6430( descriptors[0], rSTR_DIN_FIFO_6430, -22, (void *) &dma_buffer[0], 100 ); expect_failure_and_check(status, EINVAL); fprintf(stdout, " On bad address ...\n"); status = GetAutoincData6430( descriptors[0], rSTR_AD_6430, DM6430HR_STR_TYPE_WORD, (void *) usage, 100 ); expect_failure_and_check(status, EFAULT); fprintf(stdout, " On another bad address ...\n"); status = GetAutoincData6430( descriptors[0], rSTR_AD_6430, DM6430HR_STR_TYPE_WORD, (void *) 0x00000100, 100 ); expect_failure_and_check(status, EFAULT); fprintf(stdout, " On yet another bad address ...\n"); status = GetAutoincData6430( descriptors[0], rSTR_AD_6430, DM6430HR_STR_TYPE_WORD, (void *) 0xffff0000, 100 ); expect_failure_and_check(status, EFAULT); fprintf(stdout, " On A/D FIFO, byte transfer ...\n"); status = GetAutoincData6430( descriptors[0], rSTR_AD_6430, DM6430HR_STR_TYPE_BYTE, (void *) &dma_buffer[0], 100 );
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -