File tree Expand file tree Collapse file tree 1 file changed +33
-0
lines changed
unit/java_bytecode/java_types Expand file tree Collapse file tree 1 file changed +33
-0
lines changed Original file line number Diff line number Diff line change 1+ /* ******************************************************************\
2+
3+ Module: Unit tests for java_types
4+
5+ Author: Diffblue Ltd.
6+
7+ \*******************************************************************/
8+
9+ #include < testing-utils/catch.hpp>
10+ #include < java_types.h>
11+
12+ SCENARIO (" generic_type_index" , " [core][java_types]" )
13+ {
14+ // Arrange
15+ const auto symbol_type = symbol_typet (" MyType" );
16+ const auto generic_symbol_type = java_generic_symbol_typet (
17+ symbol_type, " LGenericClass<TX;TY;>;" , " PrefixClassName" );
18+ java_generic_parametert paramX (" PrefixClassName::X" , symbol_typet ());
19+ java_generic_parametert paramY (" PrefixClassName::Y" , symbol_typet ());
20+ java_generic_parametert paramZ (" PrefixClassName::Z" , symbol_typet ());
21+
22+ // Act
23+ const auto indexX = generic_symbol_type.generic_type_index (paramX);
24+ const auto indexY = generic_symbol_type.generic_type_index (paramY);
25+ const auto indexZ = generic_symbol_type.generic_type_index (paramZ);
26+
27+ // Assert
28+ REQUIRE (indexX.has_value ());
29+ REQUIRE (indexX.value () == 0 );
30+ REQUIRE (indexY.has_value ());
31+ REQUIRE (indexY.value () == 1 );
32+ REQUIRE (!indexZ.has_value ());
33+ }
You can’t perform that action at this time.
0 commit comments