@ -53,18 +53,23 @@ struct SceneDataTest: TestSuite::Tester {
void mappingTypeSizeAlignment ( ) ;
void mappingTypeSizeAlignment ( ) ;
void mappingTypeSizeAlignmentInvalid ( ) ;
void mappingTypeSizeAlignmentInvalid ( ) ;
void debugMappingType ( ) ;
void debugMappingType ( ) ;
void debugMappingTypePacked ( ) ;
void customFieldName ( ) ;
void customFieldName ( ) ;
void customFieldNameTooLarge ( ) ;
void customFieldNameTooLarge ( ) ;
void customFieldNameNotCustom ( ) ;
void customFieldNameNotCustom ( ) ;
void debugFieldName ( ) ;
void debugFieldName ( ) ;
void debugFieldNamePacked ( ) ;
void fieldTypeSizeAlignment ( ) ;
void fieldTypeSizeAlignment ( ) ;
void fieldTypeSizeAlignmentInvalid ( ) ;
void fieldTypeSizeAlignmentInvalid ( ) ;
void debugFieldType ( ) ;
void debugFieldType ( ) ;
void debugFieldTypePacked ( ) ;
void debugFieldFlag ( ) ;
void debugFieldFlag ( ) ;
void debugFieldFlagPacked ( ) ;
void debugFieldFlags ( ) ;
void debugFieldFlags ( ) ;
void debugFieldFlagsPacked ( ) ;
void debugFieldFlagsSupersets ( ) ;
void debugFieldFlagsSupersets ( ) ;
void constructField ( ) ;
void constructField ( ) ;
@ -344,18 +349,23 @@ SceneDataTest::SceneDataTest() {
addTests ( { & SceneDataTest : : mappingTypeSizeAlignment ,
addTests ( { & SceneDataTest : : mappingTypeSizeAlignment ,
& SceneDataTest : : mappingTypeSizeAlignmentInvalid ,
& SceneDataTest : : mappingTypeSizeAlignmentInvalid ,
& SceneDataTest : : debugMappingType ,
& SceneDataTest : : debugMappingType ,
& SceneDataTest : : debugMappingTypePacked ,
& SceneDataTest : : customFieldName ,
& SceneDataTest : : customFieldName ,
& SceneDataTest : : customFieldNameTooLarge ,
& SceneDataTest : : customFieldNameTooLarge ,
& SceneDataTest : : customFieldNameNotCustom ,
& SceneDataTest : : customFieldNameNotCustom ,
& SceneDataTest : : debugFieldName ,
& SceneDataTest : : debugFieldName ,
& SceneDataTest : : debugFieldNamePacked ,
& SceneDataTest : : fieldTypeSizeAlignment ,
& SceneDataTest : : fieldTypeSizeAlignment ,
& SceneDataTest : : fieldTypeSizeAlignmentInvalid ,
& SceneDataTest : : fieldTypeSizeAlignmentInvalid ,
& SceneDataTest : : debugFieldType ,
& SceneDataTest : : debugFieldType ,
& SceneDataTest : : debugFieldTypePacked ,
& SceneDataTest : : debugFieldFlag ,
& SceneDataTest : : debugFieldFlag ,
& SceneDataTest : : debugFieldFlagPacked ,
& SceneDataTest : : debugFieldFlags ,
& SceneDataTest : : debugFieldFlags ,
& SceneDataTest : : debugFieldFlagsPacked ,
& SceneDataTest : : debugFieldFlagsSupersets ,
& SceneDataTest : : debugFieldFlagsSupersets ,
& SceneDataTest : : constructField ,
& SceneDataTest : : constructField ,
@ -605,6 +615,13 @@ void SceneDataTest::debugMappingType() {
CORRADE_COMPARE ( out . str ( ) , " Trade::SceneMappingType::UnsignedLong Trade::SceneMappingType(0x73) \n " ) ;
CORRADE_COMPARE ( out . str ( ) , " Trade::SceneMappingType::UnsignedLong Trade::SceneMappingType(0x73) \n " ) ;
}
}
void SceneDataTest : : debugMappingTypePacked ( ) {
std : : ostringstream out ;
/* Last is not packed, ones before should not make any flags persistent */
Debug { & out } < < Debug : : packed < < SceneMappingType : : UnsignedLong < < Debug : : packed < < SceneMappingType ( 0x73 ) < < SceneMappingType : : UnsignedInt ;
CORRADE_COMPARE ( out . str ( ) , " UnsignedLong 0x73 Trade::SceneMappingType::UnsignedInt \n " ) ;
}
void SceneDataTest : : customFieldName ( ) {
void SceneDataTest : : customFieldName ( ) {
CORRADE_VERIFY ( ! isSceneFieldCustom ( SceneField : : Rotation ) ) ;
CORRADE_VERIFY ( ! isSceneFieldCustom ( SceneField : : Rotation ) ) ;
CORRADE_VERIFY ( ! isSceneFieldCustom ( SceneField ( 0x0fffffffu ) ) ) ;
CORRADE_VERIFY ( ! isSceneFieldCustom ( SceneField ( 0x0fffffffu ) ) ) ;
@ -655,6 +672,13 @@ void SceneDataTest::debugFieldName() {
CORRADE_COMPARE ( out . str ( ) , " Trade::SceneField::Transformation Trade::SceneField::Custom(73) Trade::SceneField(0xdeadda7) \n " ) ;
CORRADE_COMPARE ( out . str ( ) , " Trade::SceneField::Transformation Trade::SceneField::Custom(73) Trade::SceneField(0xdeadda7) \n " ) ;
}
}
void SceneDataTest : : debugFieldNamePacked ( ) {
std : : ostringstream out ;
/* Last is not packed, ones before should not make any flags persistent */
Debug { & out } < < Debug : : packed < < SceneField : : Transformation < < Debug : : packed < < sceneFieldCustom ( 73 ) < < Debug : : packed < < SceneField ( 0xdeadda7 ) < < SceneField : : Parent ;
CORRADE_COMPARE ( out . str ( ) , " Transformation Custom(73) 0xdeadda7 Trade::SceneField::Parent \n " ) ;
}
void SceneDataTest : : fieldTypeSizeAlignment ( ) {
void SceneDataTest : : fieldTypeSizeAlignment ( ) {
/* Test at least one of every size */
/* Test at least one of every size */
CORRADE_COMPARE ( sceneFieldTypeSize ( SceneFieldType : : Byte ) , sizeof ( Byte ) ) ;
CORRADE_COMPARE ( sceneFieldTypeSize ( SceneFieldType : : Byte ) , sizeof ( Byte ) ) ;
@ -711,6 +735,13 @@ void SceneDataTest::debugFieldType() {
CORRADE_COMPARE ( out . str ( ) , " Trade::SceneFieldType::Matrix3x4h Trade::SceneFieldType(0xdead) \n " ) ;
CORRADE_COMPARE ( out . str ( ) , " Trade::SceneFieldType::Matrix3x4h Trade::SceneFieldType(0xdead) \n " ) ;
}
}
void SceneDataTest : : debugFieldTypePacked ( ) {
std : : ostringstream out ;
/* Last is not packed, ones before should not make any flags persistent */
Debug { & out } < < Debug : : packed < < SceneFieldType : : Matrix3x4h < < Debug : : packed < < SceneFieldType ( 0xdead ) < < SceneFieldType : : Float ;
CORRADE_COMPARE ( out . str ( ) , " Matrix3x4h 0xdead Trade::SceneFieldType::Float \n " ) ;
}
void SceneDataTest : : debugFieldFlag ( ) {
void SceneDataTest : : debugFieldFlag ( ) {
std : : ostringstream out ;
std : : ostringstream out ;
@ -718,6 +749,13 @@ void SceneDataTest::debugFieldFlag() {
CORRADE_COMPARE ( out . str ( ) , " Trade::SceneFieldFlag::OffsetOnly Trade::SceneFieldFlag(0xbe) \n " ) ;
CORRADE_COMPARE ( out . str ( ) , " Trade::SceneFieldFlag::OffsetOnly Trade::SceneFieldFlag(0xbe) \n " ) ;
}
}
void SceneDataTest : : debugFieldFlagPacked ( ) {
std : : ostringstream out ;
/* Last is not packed, ones before should not make any flags persistent */
Debug ( & out ) < < Debug : : packed < < SceneFieldFlag : : OffsetOnly < < Debug : : packed < < SceneFieldFlag ( 0xbe ) < < SceneFieldFlag : : ImplicitMapping ;
CORRADE_COMPARE ( out . str ( ) , " OffsetOnly 0xbe Trade::SceneFieldFlag::ImplicitMapping \n " ) ;
}
void SceneDataTest : : debugFieldFlags ( ) {
void SceneDataTest : : debugFieldFlags ( ) {
std : : ostringstream out ;
std : : ostringstream out ;
@ -725,6 +763,13 @@ void SceneDataTest::debugFieldFlags() {
CORRADE_COMPARE ( out . str ( ) , " Trade::SceneFieldFlag::OffsetOnly|Trade::SceneFieldFlag(0xe0) Trade::SceneFieldFlags{} \n " ) ;
CORRADE_COMPARE ( out . str ( ) , " Trade::SceneFieldFlag::OffsetOnly|Trade::SceneFieldFlag(0xe0) Trade::SceneFieldFlags{} \n " ) ;
}
}
void SceneDataTest : : debugFieldFlagsPacked ( ) {
std : : ostringstream out ;
/* Last is not packed, ones before should not make any flags persistent */
Debug { & out } < < Debug : : packed < < ( SceneFieldFlag : : OffsetOnly | SceneFieldFlag ( 0xe0 ) ) < < Debug : : packed < < SceneFieldFlags { } < < ( SceneFieldFlag : : OffsetOnly | SceneFieldFlag : : ImplicitMapping ) ;
CORRADE_COMPARE ( out . str ( ) , " OffsetOnly|0xe0 {} Trade::SceneFieldFlag::OffsetOnly|Trade::SceneFieldFlag::ImplicitMapping \n " ) ;
}
void SceneDataTest : : debugFieldFlagsSupersets ( ) {
void SceneDataTest : : debugFieldFlagsSupersets ( ) {
/* ImplicitMapping is a superset of OrderedMapping, so only one should be
/* ImplicitMapping is a superset of OrderedMapping, so only one should be
printed */
printed */