test_field_accumulation Subroutine

public subroutine test_field_accumulation()

Arguments

None

Calls

proc~~test_field_accumulation~~CallsGraph proc~test_field_accumulation test_field_accumulation assertequal assertequal proc~test_field_accumulation->assertequal none~get_accumulation_type FrequencyAspect%get_accumulation_type proc~test_field_accumulation->none~get_accumulation_type none~get_aspects StateItemSpec%get_aspects proc~test_field_accumulation->none~get_aspects none~get_frequency_aspect AspectCollection%get_frequency_aspect proc~test_field_accumulation->none~get_frequency_aspect

Source Code

   subroutine test_field_accumulation()
      type(FieldSpec), target :: field_spec
      type(VerticalDimSpec) :: vertical_dim_spec
      type(ESMF_Typekind_Flag) :: typekind
      character(len=8) :: accumulation_type
      type(AspectCollection), pointer :: aspects
      type(FrequencyAspect), pointer :: aspect
      character(len=8) :: actual_accumulation_type

      aspects => null()
      typekind = ESMF_TYPEKIND_R4
      accumulation_type = 'mean'
      field_spec = FieldSpec(vertical_dim_spec=vertical_dim_spec, typekind=typekind, &
         accumulation_type=accumulation_type, ungridded_dims=UngriddedDims())
      aspects => field_spec%get_aspects()
      aspect => aspects%get_frequency_aspect()
      actual_accumulation_type = aspect%get_accumulation_type()
      @assertEqual(accumulation_type, actual_accumulation_type, 'accumulation_type does not match expected.')

   end subroutine test_field_accumulation