test_merge_meta Subroutine

public subroutine test_merge_meta()

Arguments

None

Calls

proc~~test_merge_meta~~CallsGraph proc~test_merge_meta Test_FileMetadata::test_merge_meta asserttrue asserttrue proc~test_merge_meta->asserttrue none~add_attribute pFIO_VariableMod::Variable%add_attribute proc~test_merge_meta->none~add_attribute none~add_dimension pFIO_FileMetadataMod::FileMetadata%add_dimension proc~test_merge_meta->none~add_dimension none~add_variable pFIO_FileMetadataMod::FileMetadata%add_variable proc~test_merge_meta->none~add_variable none~add_attribute_1d pFIO_VariableMod::Variable%add_attribute_1d none~add_attribute->none~add_attribute_1d insert insert none~add_dimension->insert proc~mapl_return MAPL_ErrorHandlingMod::MAPL_Return none~add_dimension->proc~mapl_return at at none~add_variable->at begin begin none~add_variable->begin get get none~add_variable->get interface~mapl_assert MAPL_ErrorHandlingMod::MAPL_Assert none~add_variable->interface~mapl_assert next next none~add_variable->next none~get_const_value pFIO_VariableMod::Variable%get_const_value none~add_variable->none~get_const_value none~get_dimensions pFIO_VariableMod::Variable%get_dimensions none~add_variable->none~get_dimensions none~get_shape pFIO_UnlimitedEntityMod::UnlimitedEntity%get_shape none~add_variable->none~get_shape none~insert~4 pFIO_StringVariableMapMod::StringVariableMap%insert none~add_variable->none~insert~4 none~is_empty pFIO_UnlimitedEntityMod::UnlimitedEntity%is_empty none~add_variable->none~is_empty none~add_variable->proc~mapl_return push_back push_back none~add_variable->push_back none~add_attribute_1d->proc~mapl_return none~insert~2 pFIO_StringAttributeMapMod::StringAttributeMap%insert none~add_attribute_1d->none~insert~2 none~get_shape->proc~mapl_return none~insert_pair~3 pFIO_StringVariableMapMod::StringVariableMap%insert_pair none~insert~4->none~insert_pair~3 none~is_empty->proc~mapl_return none~get_value pFIO_UnlimitedEntityMod::UnlimitedEntity%get_value none~is_empty->none~get_value proc~mapl_return->at proc~mapl_return->insert proc~mapl_throw_exception MAPL_ThrowMod::MAPL_throw_exception proc~mapl_return->proc~mapl_throw_exception none~get_value->proc~mapl_return none~insert_pair pFIO_StringAttributeMapMod::StringAttributeMap%insert_pair none~insert~2->none~insert_pair

Source Code

   subroutine test_merge_meta()
      type (FileMetadata) :: cf1, cf2,cf3
      type (Variable) :: v1, v2, v3

      call cf1%add_dimension('x', 10)
      call cf1%add_dimension('y', 20)
      call cf1%add_dimension('z', 30)

      v1 = Variable(type=pFIO_INT32, dimensions='x')
      call v3%add_attribute('flag', .true.)

      call cf1%add_variable('v1', v1)
    
      call cf2%merge(cf1)
      @assertTrue(cf2 == cf1)

      ! merge again, should be the same
      call cf2%merge(cf1)
      @assertTrue(cf2 == cf1)

      call cf3%add_dimension('x', 10)
      call cf3%add_dimension('a', 3)
      v3 = Variable(type=pFIO_REAL64, dimensions='x,a')
      call cf3%add_variable('v3', v3)
      call cf2%merge(cf3)
    
      call cf1%add_dimension('a',3)
      call cf1%add_variable('v3', v3)
      
      @assertTrue(cf2 == cf1)
      
   end subroutine test_merge_meta