13 #include <stk_util/unit_test_support/stk_utest_macros.hpp> 15 #include <stk_mesh/base/FieldRestriction.hpp> 16 #include <stk_mesh/base/Types.hpp> 21 STKUNIT_UNIT_TEST( UnitTestFieldRestriction, defaultConstruct )
24 STKUNIT_EXPECT_EQ( fr.part_ordinal(), stk_classic::mesh::InvalidPartOrdinal );
25 for (stk_classic::mesh::Ordinal i = 0 ; i < stk_classic::mesh::MaximumFieldDimension ; ++i) {
26 STKUNIT_EXPECT_EQ( fr.stride(i), 0 );
28 STKUNIT_EXPECT_EQ( fr.dimension(), 0 );
32 STKUNIT_UNIT_TEST( UnitTestFieldRestriction, construct )
35 for (stk_classic::mesh::Ordinal i = 0 ; i < stk_classic::mesh::MaximumFieldDimension ; ++i) {
39 STKUNIT_EXPECT_EQ( fr.entity_rank(), 1u );
40 STKUNIT_EXPECT_EQ( fr.part_ordinal(), 2u );
41 const int max_field_dimension = stk_classic::mesh::MaximumFieldDimension;
42 for (
int i = 0 ; i < max_field_dimension ; ++i) {
43 STKUNIT_EXPECT_EQ( fr.stride(i), i+1 );
45 STKUNIT_EXPECT_EQ( fr.dimension(), 1 );
49 STKUNIT_UNIT_TEST( UnitTestFieldRestriction, copyConstruct )
52 for (stk_classic::mesh::Ordinal i = 0 ; i < stk_classic::mesh::MaximumFieldDimension ; ++i) {
57 STKUNIT_EXPECT_EQ( tmpfr.entity_rank(), 1u );
58 STKUNIT_EXPECT_EQ( tmpfr.part_ordinal(), 2u );
59 const int max_field_dimension = stk_classic::mesh::MaximumFieldDimension;
60 for (
int i = 0 ; i < max_field_dimension ; ++i) {
61 STKUNIT_EXPECT_EQ( tmpfr.stride(i), i+1 );
63 STKUNIT_EXPECT_EQ( tmpfr.dimension(), 1 );
67 STKUNIT_UNIT_TEST( UnitTestFieldRestriction, operatorEqual )
70 for (stk_classic::mesh::Ordinal i = 0 ; i < stk_classic::mesh::MaximumFieldDimension ; ++i) {
74 for (stk_classic::mesh::Ordinal i = 0 ; i < stk_classic::mesh::MaximumFieldDimension ; ++i) {
75 tmpfr.stride(i) = i+10;
79 STKUNIT_EXPECT_EQ( tmpfr.entity_rank(), 1u );
80 STKUNIT_EXPECT_EQ( tmpfr.part_ordinal(), 2u );
81 const int max_field_dimension = stk_classic::mesh::MaximumFieldDimension;
82 for (
int i = 0 ; i < max_field_dimension ; ++i) {
83 STKUNIT_EXPECT_EQ( tmpfr.stride(i), i+1 );
85 STKUNIT_EXPECT_EQ( tmpfr.dimension(), 1 );
89 STKUNIT_UNIT_TEST( UnitTestFieldRestriction, operatorLess )
94 STKUNIT_EXPECT_EQ( frA < frB,
true );
95 STKUNIT_EXPECT_EQ( frB < frA,
false );
100 STKUNIT_EXPECT_EQ( frA < frB,
true );
101 STKUNIT_EXPECT_EQ( frB < frA,
false );
106 STKUNIT_EXPECT_EQ( frA < frB,
true );
107 STKUNIT_EXPECT_EQ( frB < frA,
false );
112 STKUNIT_UNIT_TEST( UnitTestFieldRestriction, operatorLessInvalid )
116 STKUNIT_EXPECT_EQ( frA < frB,
true );
117 STKUNIT_EXPECT_EQ( frB < frA,
false );
121 STKUNIT_UNIT_TEST( UnitTestFieldRestriction, operatorEqualEqual_and_NotEqual )
128 STKUNIT_EXPECT_EQ( frA == frB,
true );
129 STKUNIT_EXPECT_EQ( frA != frB,
false );
136 STKUNIT_EXPECT_EQ( frA == frB,
false );
137 STKUNIT_EXPECT_EQ( frA != frB,
true );
142 STKUNIT_EXPECT_EQ( frA == frB,
false );
143 STKUNIT_EXPECT_EQ( frA != frB,
true );
148 STKUNIT_EXPECT_EQ( frA == frB,
true );
149 STKUNIT_EXPECT_EQ( frA != frB,
false );
154 STKUNIT_UNIT_TEST( UnitTestFieldRestriction, not_equal_stride )
161 STKUNIT_EXPECT_EQ( frA.not_equal_stride(frB), true );
162 STKUNIT_EXPECT_EQ( frB.not_equal_stride(frA), true );
166 for (stk_classic::mesh::Ordinal i=0 ; i < stk_classic::mesh::MaximumFieldDimension ; ++i ) {
170 for (stk_classic::mesh::Ordinal i=0 ; i < stk_classic::mesh::MaximumFieldDimension ; ++i ) {
173 STKUNIT_EXPECT_EQ( frA.not_equal_stride(frB), false );
174 STKUNIT_EXPECT_EQ( frB.not_equal_stride(frA), false );
175 frB.stride(stk_classic::mesh::MaximumFieldDimension-1) = 1;
176 STKUNIT_EXPECT_EQ( frA.not_equal_stride(frB), true );
177 STKUNIT_EXPECT_EQ( frB.not_equal_stride(frA), true );