jobid format and parse
This commit is contained in:
parent
26e3c21c87
commit
3488b62716
6 changed files with 212 additions and 15 deletions
|
|
@ -99,6 +99,43 @@ void test_roundup(void)
|
|||
TEST_ASSERT_TRUE(ROUNDUP(31, 5) == 32);
|
||||
}
|
||||
|
||||
void test_extract_bits(void) {
|
||||
uint64_t id = 0xfefefefeffff;
|
||||
|
||||
TEST_ASSERT_TRUE(EXTRACT_BITS(id, 0, 4) == 0xf);
|
||||
TEST_ASSERT_TRUE(EXTRACT_BITS(id, 16, 4) == 0xe);
|
||||
TEST_ASSERT_TRUE(EXTRACT_BITS(id, 16, 8) == 0xfe);
|
||||
TEST_ASSERT_TRUE(EXTRACT_BITS(id, 20, 12) == 0xfef);
|
||||
TEST_ASSERT_TRUE(EXTRACT_BITS(id, 44, 4) == 0xf);
|
||||
TEST_ASSERT_TRUE(EXTRACT_BITS(id, 40, 8) == 0xfe);
|
||||
}
|
||||
|
||||
static void do_parse_jobid_test(uint64_t jobid) {
|
||||
uint64_t jobid2;
|
||||
int rc;
|
||||
char buf[256];
|
||||
|
||||
rc = fmt_jobid(buf, sizeof(buf), jobid);
|
||||
printf("\t\tCheck jobid %s\n", buf);
|
||||
|
||||
TEST_ASSERT_TRUE(rc > 0);
|
||||
rc = parse_jobid(&jobid2, buf);
|
||||
TEST_ASSERT_TRUE(rc >= 0);
|
||||
TEST_ASSERT_TRUE(jobid == jobid2);
|
||||
}
|
||||
|
||||
void test_parse_jobid1(void) {
|
||||
uint64_t jobid = 0x400691c2fd498003;
|
||||
|
||||
do_parse_jobid_test(jobid);
|
||||
}
|
||||
|
||||
void test_parse_jobid2(void) {
|
||||
uint64_t jobid = 0x691d3c1d00013;
|
||||
|
||||
do_parse_jobid_test(jobid);
|
||||
}
|
||||
|
||||
void test_utils(void)
|
||||
{
|
||||
printf("\n>> utils test\n\n");
|
||||
|
|
@ -106,4 +143,7 @@ void test_utils(void)
|
|||
RUN_TEST(test_timewindow_config_dup);
|
||||
RUN_TEST(test_dup_threshold);
|
||||
RUN_TEST(test_roundup);
|
||||
RUN_TEST(test_extract_bits);
|
||||
RUN_TEST(test_parse_jobid1);
|
||||
RUN_TEST(test_parse_jobid2);
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue