📄 dm6430-test-lib-errors.c
字号:
expect_success(status); descriptors[0] = status; fprintf(stdout, " Disable pause ...\n"); status = SetPauseEnable6430(descriptors[0], 0x13000000); expect_success(status); fprintf(stdout, " Enable pause ...\n"); status = SetPauseEnable6430(descriptors[0], 0); expect_success(status); status = CloseBoard6430(descriptors[0]); expect_success(status); /* * Test ReadADData6430() error checking. */ fprintf(stdout, "## Testing ReadADData6430() ...\n"); fprintf(stdout, " On bad file descriptor ...\n"); status = ReadADData6430(descriptors[0], &short_int); expect_failure_and_check(status, EBADF); status = OpenBoard6430(0); expect_success(status); descriptors[0] = status; fprintf(stdout, " On valid descriptor ...\n"); status = ReadADData6430(descriptors[0], &short_int); expect_success(status); status = CloseBoard6430(descriptors[0]); expect_success(status); /* * Test ReadChannelGainDataStore6430() error checking. */ fprintf(stdout, "## Testing ReadChannelGainDataStore6430() ...\n"); fprintf(stdout, " On bad file descriptor ...\n"); status = ReadChannelGainDataStore6430(descriptors[0], &u_short_int); expect_failure_and_check(status, EBADF); status = OpenBoard6430(0); expect_success(status); descriptors[0] = status; fprintf(stdout, " On valid descriptor ...\n"); status = ReadChannelGainDataStore6430(descriptors[0], &u_short_int); expect_success(status); status = CloseBoard6430(descriptors[0]); expect_success(status); /* * Test SetChannelGain6430() error checking. */ fprintf(stdout, "## Testing SetChannelGain6430() ...\n"); fprintf(stdout, " On bad file descriptor ...\n"); status = SetChannelGain6430( descriptors[0], DM6430HR_AIN1, DM6430HR_GAINx1, DM6430HR_SE_SE ); expect_failure_and_check(status, EBADF); status = OpenBoard6430(0); expect_success(status); descriptors[0] = status; fprintf(stdout, " On bad channel ...\n"); status = SetChannelGain6430( descriptors[0], (DM6430HR_AIN16 + 1), DM6430HR_GAINx1, DM6430HR_SE_SE ); expect_failure_and_check(status, EINVAL); fprintf(stdout, " On another bad channel ...\n"); status = SetChannelGain6430( descriptors[0], -8, DM6430HR_GAINx1, DM6430HR_SE_SE ); expect_failure_and_check(status, EINVAL); fprintf(stdout, " On bad gain ...\n"); status = SetChannelGain6430( descriptors[0], DM6430HR_AIN16, (DM6430HR_GAINx8 + 1), DM6430HR_SE_SE ); expect_failure_and_check(status, EINVAL); fprintf(stdout, " On another bad gain ...\n"); status = SetChannelGain6430( descriptors[0], DM6430HR_AIN16, -4, DM6430HR_SE_SE ); expect_failure_and_check(status, EINVAL); fprintf(stdout, " On bad mode ...\n"); status = SetChannelGain6430( descriptors[0], DM6430HR_AIN16, DM6430HR_GAINx1, -10 ); expect_failure_and_check(status, EINVAL); fprintf(stdout, " On another bad mode ...\n"); status = SetChannelGain6430( descriptors[0], DM6430HR_AIN16, DM6430HR_GAINx1, (DM6430HR_SE_DIFF + 1) ); expect_failure_and_check(status, EINVAL); fprintf(stdout, " On valid descriptor (all channels) ...\n"); for ( loop_count = DM6430HR_AIN1; loop_count <= DM6430HR_AIN16; loop_count++ ){ fprintf(stdout, " Channel %d ...\n", loop_count); status = SetChannelGain6430( descriptors[0], loop_count, DM6430HR_GAINx1, DM6430HR_SE_SE ); expect_success(status); } fprintf(stdout, " On valid descriptor (all gains) ...\n"); for ( loop_count = DM6430HR_GAINx1; loop_count <= DM6430HR_GAINx8; loop_count++ ){ fprintf(stdout, " Gain %d ...\n", loop_count); status = SetChannelGain6430( descriptors[0], DM6430HR_AIN1, loop_count, DM6430HR_SE_SE ); expect_success(status); } fprintf(stdout, " On valid descriptor (all modes) ...\n"); for ( loop_count = DM6430HR_SE_SE; loop_count <= DM6430HR_SE_DIFF; loop_count++ ){ fprintf(stdout, " Mode %d ...\n", loop_count); status = SetChannelGain6430( descriptors[0], DM6430HR_AIN1, DM6430HR_GAINx1, loop_count ); expect_success(status); } status = CloseBoard6430(descriptors[0]); expect_success(status); /* * Test LoadADTable6430() error checking. */ fprintf(stdout, "## Testing LoadADTable6430() ...\n"); fprintf(stdout, " Allocating table memory ...\n"); ad_table_p = calloc(1, sizeof(ADTableRow)); if (ad_table_p == NULL) { fprintf(stderr, "FAILED: Could not allocate memory.\n"); exit(1); } ad_table_p->Channel = DM6430HR_AIN1; ad_table_p->Gain = DM6430HR_GAINx2; ad_table_p->Se_Diff = DM6430HR_SE_DIFF; ad_table_p->Pause = 0; ad_table_p->Skip = 1; fprintf(stdout, " On bad file descriptor ...\n"); status = LoadADTable6430(descriptors[0], 1, ad_table_p); expect_failure_and_check(status, EBADF); status = OpenBoard6430(0); expect_success(status); descriptors[0] = status; fprintf(stdout, " Table size of 0 ...\n"); status = LoadADTable6430(descriptors[0], 0, ad_table_p); expect_failure_and_check(status, EINVAL); fprintf(stdout, " Table size > 1024 ...\n"); status = LoadADTable6430(descriptors[0], 1025, ad_table_p); expect_failure_and_check(status, EINVAL); fprintf(stdout, " On valid descriptor ...\n"); status = LoadADTable6430(descriptors[0], 1, ad_table_p); expect_success(status); status = CloseBoard6430(descriptors[0]); expect_success(status); free(ad_table_p); /* * Test LoadDigitalTable6430() error checking. */ fprintf(stdout, "## Testing LoadDigitalTable6430() ...\n"); fprintf(stdout, " Allocating table memory ...\n"); digital_table_p = calloc(2, sizeof(*digital_table_p)); if (digital_table_p == NULL) { fprintf(stderr, "FAILED: Could not allocate memory.\n"); exit(1); } digital_table_p[0] = 0x1234; digital_table_p[1] = 0x5678; fprintf(stdout, " On bad file descriptor ...\n"); status = LoadDigitalTable6430(descriptors[0], 1, digital_table_p); expect_failure_and_check(status, EBADF); status = OpenBoard6430(0); expect_success(status); descriptors[0] = status; fprintf(stdout, " Table size of 0 ...\n"); status = LoadDigitalTable6430(descriptors[0], 0, digital_table_p); expect_failure_and_check(status, EINVAL); fprintf(stdout, " Table size > 1024 ...\n"); status = LoadDigitalTable6430(descriptors[0], 1025, digital_table_p); expect_failure_and_check(status, EINVAL); fprintf(stdout, " On valid descriptor ...\n"); status = LoadDigitalTable6430(descriptors[0], 1, digital_table_p); expect_success(status); status = CloseBoard6430(descriptors[0]); expect_success(status); free(digital_table_p); /* * Test StartConversion6430() error checking. */ fprintf(stdout, "## Testing StartConversion6430() ...\n"); fprintf(stdout, " On bad file descriptor ...\n"); status = StartConversion6430(descriptors[0]); expect_failure_and_check(status, EBADF); status = OpenBoard6430(0); expect_success(status); descriptors[0] = status; fprintf(stdout, " On valid descriptor ...\n"); status = StartConversion6430(descriptors[0]); expect_success(status); status = CloseBoard6430(descriptors[0]); expect_success(status); /* * Test LoadTriggerRegister6430() error checking. */ fprintf(stdout, "## Testing LoadTriggerRegister6430() ...\n"); fprintf(stdout, " On bad file descriptor ...\n"); status = LoadTriggerRegister6430(descriptors[0], 3419); expect_failure_and_check(status, EBADF); status = OpenBoard6430(0); expect_success(status); descriptors[0] = status; fprintf(stdout, " On valid descriptor ...\n"); status = LoadTriggerRegister6430(descriptors[0], 0xabcd); expect_success(status); status = CloseBoard6430(descriptors[0]); expect_success(status); /* * Test SetConversionSelect6430() error checking. */ fprintf(stdout, "## Testing SetConversionSelect6430() ...\n"); fprintf(stdout, " On bad file descriptor ...\n"); status = SetConversionSelect6430( descriptors[0], DM6430HR_CONV_SOFT_TRIGGER ); expect_failure_and_check(status, EBADF); status = OpenBoard6430(0); expect_success(status); descriptors[0] = status; fprintf(stdout, " On bad conversion type ...\n"); status = SetConversionSelect6430( descriptors[0], (DM6430HR_CONV_DIGITAL_INT + 1) ); expect_failure_and_check(status, EINVAL); fprintf(stdout, " On another bad conversion type ...\n"); status = SetConversionSelect6430( descriptors[0], -33 ); expect_failure_and_check(status, EINVAL); fprintf(stdout, " On valid descriptor (all types) ...\n"); for ( loop_count = DM6430HR_CONV_SOFT_TRIGGER; loop_count <= DM6430HR_CONV_DIGITAL_INT; loop_count++ ) { fprintf(stdout, " Type %d\n", loop_count); status = SetConversionSelect6430( descriptors[0], loop_count ); expect_success(status); } status = CloseBoard6430(descriptors[0]); expect_success(status); /* * Test SetStartTrigger6430() error checking. */ fprintf(stdout, "## Testing SetStartTrigger6430() ...\n"); fprintf(stdout, " On bad file descriptor ...\n"); status = SetStartTrigger6430(descriptors[0], DM6430HR_START_TRIG_GATE); expect_failure_and_check(status, EBADF); status = OpenBoard6430(0); expect_success(status); descriptors[0] = status; fprintf(stdout, " On bad trigger start ...\n"); status = SetStartTrigger6430( descriptors[0], (DM6430HR_START_TRIG_GATE + 1) ); expect_failure_and_check(status, EINVAL); fprintf(stdout, " On another bad trigger start ...\n"); status = SetStartTrigger6430(descriptors[0], -13); expect_failure_and_check(status, EINVAL); fprintf(stdout, " On DM6430HR_START_TRIG_RES1 ...\n"); status = SetStartTrigger6430(descriptors[0], DM6430HR_START_TRIG_RES1); expect_failure_and_check(status, EOPNOTSUPP); fprintf(stdout, " On DM6430HR_START_TRIG_RES2 ...\n"); status = SetStartTrigger6430(descriptors[0], DM6430HR_START_TRIG_RES2); expect_failure_and_check(status, EOPNOTSUPP); fprintf(stdout, " On DM6430HR_START_TRIG_RES3 ...\n"); status = SetStartTrigger6430(descriptors[0], DM6430HR_START_TRIG_RES3); expect_failure_and_check(status, EOPNOTSUPP); fprintf(stdout, " On valid descriptor ...\n"); status = SetStartTrigger6430(descriptors[0], DM6430HR_START_TRIG_USER_TC1); expect_success(status); status = CloseBoard6430(descriptors[0]); expect_success(status); /* * Test SetStopTrigger6430() error checking. */ fprintf(stdout, "## Testing SetStopTrigger6430() ...\n"); fprintf(stdout, " On bad file descriptor ...\n"); status = SetStopTrigger6430(descriptors[0], DM6430HR_STOP_TRIG_SOFTWARE); expect_failure_and_check(status, EBADF); status = OpenBoard6430(0); expect_success(status); descriptors[0] = status; fprintf(stdout, " On bad stop source ...\n"); status = SetStopTrigger6430( descriptors[0], (DM6430HR_STOP_TRIG_ABOUT_USER_TC1 + 1) ); expect_failure_and_check(status, EINVAL); fprintf(stdout, " On another bad stop source ...\n"); status = SetStopTrigger6430(descriptors[0], -21); expect_failure_and_check(status, EINVAL); fprintf(stdout, " On valid descriptor (all sources) ...\n"); for ( loop_count = DM6430HR_STOP_TRIG_SOFTWARE; loop_count <= DM6430HR_STOP_TRIG_ABOUT_USER_TC1; loop_count++ ) { fprintf(stdout, " Source %d\n", loop_count); status = SetStopTrigger6430(descriptors[0], loop_count); expect_success(status); } status = CloseBoard6430(descriptors[0]); expect_success(status); /* * Test SetPacerClockSource6430() error checking. */ fprintf(stdout, "## Testing SetPacerClockSource6430() ...\n"); fprintf(stdout, " On bad file descriptor ...\n"); status = SetPacerClockSource6430( descriptors[0], DM6430HR_PACER_CLK_INTERNAL ); expect_failure_and_check(status, EBADF); status = OpenBoard6430(0); expect_success(status); descriptors[0] = status; fprintf(stdout, " On bad source ...\n"); status = SetPacerClockSource6430( descriptors[0], (DM6430HR_PACER_CLK_EXTERNAL + 1) ); expect_failure_and_check(status, EINVAL); fprintf(stdout, " On another bad source ...\n"); status = SetPacerClockSource6430(descriptors[0], -100); expect_failure_and_check(status, EINVAL); fprintf(stdout, " On valid descriptor (all sources) ...\n"); for (
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -