Skip to content
GitLab
Explore
Sign in
Primary navigation
Search or go to…
Project
C
cmp_tool
Manage
Activity
Members
Labels
Plan
Issues
Issue boards
Milestones
Wiki
Code
Merge requests
Repository
Branches
Commits
Tags
Repository graph
Compare revisions
Snippets
Deploy
Releases
Package registry
Model registry
Operate
Terraform modules
Monitor
Incidents
Service Desk
Analyze
Value stream analytics
Contributor analytics
Repository analytics
Model experiments
Help
Help
Support
GitLab documentation
Compare GitLab plans
GitLab community forum
Contribute to GitLab
Provide feedback
Terms and privacy
Keyboard shortcuts
?
Snippets
Groups
Projects
Show more breadcrumbs
Dominik Loidolt
cmp_tool
Commits
af1bc585
Commit
af1bc585
authored
2 years ago
by
Dominik Loidolt
Browse files
Options
Downloads
Patches
Plain Diff
add tests for cmp_max_used_bits
parent
0f868ed3
No related branches found
No related tags found
1 merge request
!24
Rework max used bits
Changes
3
Show whitespace changes
Inline
Side-by-side
Showing
3 changed files
test/cmp_max_used_bits/meson.build
+12
-0
12 additions, 0 deletions
test/cmp_max_used_bits/meson.build
test/cmp_max_used_bits/test_cmp_max_used_bits_list.c
+153
-0
153 additions, 0 deletions
test/cmp_max_used_bits/test_cmp_max_used_bits_list.c
test/meson.build
+1
-0
1 addition, 0 deletions
test/meson.build
with
166 additions
and
0 deletions
test/cmp_max_used_bits/meson.build
0 → 100644
+
12
−
0
View file @
af1bc585
test_case
=
files
(
'test_cmp_max_used_bits_list.c'
)
test_runner
=
test_runner_generator
.
process
(
test_case
)
test_cmp_max_used_bits_list
=
executable
(
'test_cmp_max_used_bits_list'
,
test_case
,
test_runner
,
include_directories
:
incdir
,
link_with
:
cmp_lib
,
dependencies
:
unity_dep
,
build_by_default
:
false
)
test
(
'max_used_bits List Unit Tests'
,
test_cmp_max_used_bits_list
)
This diff is collapsed.
Click to expand it.
test/cmp_max_used_bits/test_cmp_max_used_bits_list.c
0 → 100644
+
153
−
0
View file @
af1bc585
/**
* @file test_cmp_max_used_bits_list.c
* @author Dominik Loidolt (dominik.loidolt@univie.ac.at)
* @date 2023
*
* @copyright GPLv2
* This program is free software; you can redistribute it and/or modify it
* under the terms and conditions of the GNU General Public License,
* version 2, as published by the Free Software Foundation.
*
* This program is distributed in the hope it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
* more details.
*
* @brief max_used_bits list tests
*/
#include
<string.h>
#include
<unity.h>
#include
<cmp_max_used_bits_list.h>
/**
* @test cmp_max_used_bits_list_add
* @test cmp_max_used_bits_list_get
* @test cmp_max_used_bits_list_delet
* @test cmp_max_used_bits_list_empty
*/
void
test_cmp_max_used_bits_list
(
void
)
{
struct
cmp_max_used_bits
i_17
,
i_21
,
i_22
,
i_23
,
i_255
,
i_0
;
struct
cmp_max_used_bits
*
p
;
int
return_val
;
/* set up max_used_bits item */
memset
(
&
i_17
,
17
,
sizeof
(
struct
cmp_max_used_bits
));
i_17
.
version
=
17
;
memset
(
&
i_21
,
21
,
sizeof
(
struct
cmp_max_used_bits
));
i_21
.
version
=
21
;
memset
(
&
i_22
,
22
,
sizeof
(
struct
cmp_max_used_bits
));
i_22
.
version
=
22
;
memset
(
&
i_23
,
23
,
sizeof
(
struct
cmp_max_used_bits
));
i_23
.
version
=
23
;
memset
(
&
i_255
,
0xFF
,
sizeof
(
struct
cmp_max_used_bits
));
i_255
.
version
=
255
;
memset
(
&
i_0
,
0
,
sizeof
(
struct
cmp_max_used_bits
));
i_0
.
version
=
0
;
return_val
=
cmp_max_used_bits_list_add
(
&
i_17
);
TEST_ASSERT_EQUAL_INT
(
return_val
,
0
);
return_val
=
cmp_max_used_bits_list_add
(
&
i_21
);
TEST_ASSERT_EQUAL_INT
(
return_val
,
0
);
return_val
=
cmp_max_used_bits_list_add
(
&
i_22
);
TEST_ASSERT_EQUAL_INT
(
return_val
,
0
);
return_val
=
cmp_max_used_bits_list_add
(
&
i_23
);
TEST_ASSERT_EQUAL_INT
(
return_val
,
0
);
return_val
=
cmp_max_used_bits_list_add
(
&
i_255
);
TEST_ASSERT_EQUAL_INT
(
return_val
,
0
);
/* error cases */
return_val
=
cmp_max_used_bits_list_add
(
NULL
);
TEST_ASSERT_EQUAL_INT
(
return_val
,
-
1
);
return_val
=
cmp_max_used_bits_list_add
(
&
i_0
);
TEST_ASSERT_EQUAL_INT
(
return_val
,
-
1
);
i_0
.
version
=
16
;
return_val
=
cmp_max_used_bits_list_add
(
&
i_0
);
TEST_ASSERT_EQUAL_INT
(
return_val
,
-
1
);
p
=
cmp_max_used_bits_list_get
(
17
);
TEST_ASSERT_EQUAL_INT
(
p
->
version
,
17
);
TEST_ASSERT
(
!
memcmp
(
p
,
&
i_17
,
sizeof
(
struct
cmp_max_used_bits
)));
p
=
cmp_max_used_bits_list_get
(
23
);
TEST_ASSERT_EQUAL_INT
(
p
->
version
,
23
);
TEST_ASSERT
(
!
memcmp
(
p
,
&
i_23
,
sizeof
(
struct
cmp_max_used_bits
)));
p
=
cmp_max_used_bits_list_get
(
22
);
TEST_ASSERT_EQUAL_INT
(
p
->
version
,
22
);
TEST_ASSERT
(
!
memcmp
(
p
,
&
i_22
,
sizeof
(
struct
cmp_max_used_bits
)));
p
=
cmp_max_used_bits_list_get
(
255
);
TEST_ASSERT_EQUAL_INT
(
p
->
version
,
255
);
TEST_ASSERT
(
!
memcmp
(
p
,
&
i_255
,
sizeof
(
struct
cmp_max_used_bits
)));
p
=
cmp_max_used_bits_list_get
(
21
);
TEST_ASSERT_EQUAL_INT
(
p
->
version
,
21
);
TEST_ASSERT
(
!
memcmp
(
p
,
&
i_21
,
sizeof
(
struct
cmp_max_used_bits
)));
p
=
cmp_max_used_bits_list_get
(
0
);
TEST_ASSERT_EQUAL_INT
(
p
->
version
,
0
);
TEST_ASSERT
(
!
memcmp
(
p
,
&
MAX_USED_BITS_SAFE
,
sizeof
(
struct
cmp_max_used_bits
)));
p
=
cmp_max_used_bits_list_get
(
1
);
TEST_ASSERT_EQUAL_INT
(
p
->
version
,
1
);
TEST_ASSERT
(
!
memcmp
(
p
,
&
MAX_USED_BITS_V1
,
sizeof
(
struct
cmp_max_used_bits
)));
/* Try to get an element that is not in the list */
p
=
cmp_max_used_bits_list_get
(
42
);
TEST_ASSERT_NULL
(
p
);
p
=
cmp_max_used_bits_list_get
(
3
);
TEST_ASSERT_NULL
(
p
);
/* overwrite a list item */
memset
(
&
i_22
,
0x42
,
sizeof
(
struct
cmp_max_used_bits
));
i_22
.
version
=
22
;
return_val
=
cmp_max_used_bits_list_add
(
&
i_22
);
TEST_ASSERT_EQUAL_INT
(
return_val
,
1
);
p
=
cmp_max_used_bits_list_get
(
22
);
TEST_ASSERT_EQUAL_INT
(
p
->
version
,
22
);
TEST_ASSERT
(
!
memcmp
(
p
,
&
i_22
,
sizeof
(
struct
cmp_max_used_bits
)));
/* delete item */
cmp_max_used_bits_list_delet
(
22
);
p
=
cmp_max_used_bits_list_get
(
22
);
TEST_ASSERT_NULL
(
p
);
cmp_max_used_bits_list_delet
(
21
);
p
=
cmp_max_used_bits_list_get
(
21
);
TEST_ASSERT_NULL
(
p
);
/* empty item */
cmp_max_used_bits_list_empty
();
p
=
cmp_max_used_bits_list_get
(
23
);
TEST_ASSERT_NULL
(
p
);
cmp_max_used_bits_list_empty
();
p
=
cmp_max_used_bits_list_get
(
21
);
TEST_ASSERT_NULL
(
p
);
p
=
cmp_max_used_bits_list_get
(
0
);
TEST_ASSERT_EQUAL_INT
(
p
->
version
,
0
);
TEST_ASSERT
(
!
memcmp
(
p
,
&
MAX_USED_BITS_SAFE
,
sizeof
(
struct
cmp_max_used_bits
)));
p
=
cmp_max_used_bits_list_get
(
1
);
TEST_ASSERT_EQUAL_INT
(
p
->
version
,
1
);
TEST_ASSERT
(
!
memcmp
(
p
,
&
MAX_USED_BITS_V1
,
sizeof
(
struct
cmp_max_used_bits
)));
return_val
=
cmp_max_used_bits_list_add
(
&
i_23
);
TEST_ASSERT_EQUAL_INT
(
return_val
,
0
);
p
=
cmp_max_used_bits_list_get
(
23
);
TEST_ASSERT_EQUAL_INT
(
p
->
version
,
23
);
TEST_ASSERT
(
!
memcmp
(
p
,
&
i_23
,
sizeof
(
struct
cmp_max_used_bits
)));
cmp_max_used_bits_list_empty
();
}
This diff is collapsed.
Click to expand it.
test/meson.build
+
1
−
0
View file @
af1bc585
...
...
@@ -38,3 +38,4 @@ subdir('cmp_decmp')
subdir
(
'cmp_data_types'
)
subdir
(
'cmp_entity'
)
subdir
(
'cmp_rdcu_cfg'
)
subdir
(
'cmp_max_used_bits'
)
This diff is collapsed.
Click to expand it.
Preview
0%
Loading
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Save comment
Cancel
Please
register
or
sign in
to comment