get_parameters Function

public function get_parameters() result(params)

Arguments

None

Return Value type(ScenarioDescription), allocatable, (:)


Source Code

   function get_parameters() result(params)

      type(ScenarioDescription), allocatable :: params(:)

      params = [ScenarioDescription:: ]

      ! Field oriented tests
      params = [params, add_params('item exist', check_item_type)]
      params = [params, add_params('field status', check_field_status)]
      params = [params, add_params('field typekind', check_field_typekind)]
      params = [params, add_params('field value', check_field_value)]
      params = [params, add_params('field vertical_profile', check_field_vertical_profile)]
      params = [params, add_params('field exists', check_field_rank)]

      ! Service oriented tests
      params = [params, ScenarioDescription('service_service', 'parent.yaml', 'field count', check_fieldcount)]

   contains

      function add_params(check_name, check_stateitem) result(params)
         type(ScenarioDescription), allocatable :: params(:)
         character(*), intent(in) :: check_name
         procedure(I_check_stateitem) :: check_stateitem

         params = [ &
              ScenarioDescription('scenario_1',              'parent.yaml',      check_name, check_stateitem), &
              ScenarioDescription('scenario_2',              'parent.yaml',      check_name, check_stateitem), &
              ScenarioDescription('scenario_reexport_twice', 'grandparent.yaml', check_name, check_stateitem), &
              ScenarioDescription('history_1',               'cap.yaml',         check_name, check_stateitem), &
              ScenarioDescription('history_wildcard',        'cap.yaml',         check_name, check_stateitem), &
              ScenarioDescription('extdata_1',               'cap.yaml',         check_name, check_stateitem), &
              ScenarioDescription('precision_extension',     'parent.yaml',      check_name, check_stateitem), &
              ScenarioDescription('precision_extension_3d',  'parent.yaml',      check_name, check_stateitem), &
              ScenarioDescription('3d_specs',                'parent.yaml',      check_name, check_stateitem), &
              ScenarioDescription('ungridded_dims',          'parent.yaml',      check_name, check_stateitem), &
              ScenarioDescription('service_service',         'parent.yaml',      check_name, check_stateitem), &
              ScenarioDescription('export_dependency',       'parent.yaml',      check_name, check_stateitem), &
              ScenarioDescription('regrid',                  'cap.yaml',         check_name, check_stateitem), &
              ScenarioDescription('propagate_geom',          'parent.yaml',      check_name, check_stateitem), &
              ScenarioDescription('vertical_regridding',     'parent.yaml',      check_name, check_stateitem), &
              ScenarioDescription('vertical_regridding_2',   'parent.yaml',      check_name, check_stateitem), &
              ScenarioDescription('vertical_regridding_3',   'AGCM.yaml',        check_name, check_stateitem)  &
              ]
      end function add_params

   end function get_parameters