Processing test

From Open Food Facts wiki
Revision as of 14:28, 24 March 2020 by Aleene (talk | contribs)

< Processing Taxonomy

All tests follow the same structure. There is one test set per test language. Each test set consists of multiple tests. Each test check the correct parsing and interpretation of a processed ingredient. A processed ingredient consists of a process, taken from the ingredients processing taxonomy and an ingredient form the ingredients taxonomy.

Template

The template for processing adjectives tests:

  [ { 

Define the language for which the tests are applicable.

  lc => "en",

Define in the ingredients_text the original ingredients that must be tested. These should have the format process ingredient, ingredient process, or whatever is applicable for that language.

  ingredients_text => "raw milk, sliced tomatoes, garlic powder, powdered eggplant, courgette powder" },

The ingredients_text raw milk, should result in the ingredient with id en: raw milk. The adjective is ignored.

  [ {
      'id' => 'en:raw-milk',
      'text' => 'raw milk'
    },

The ingredients_text sliced tomatoes, should result in the ingredient with id en:tomato and processing en:sliced.

    {
      'id' => 'en:tomato',

The id represents the parent key of sliced tomatoes in the ingredients taxonomy.

      'processing' => 'en:sliced',

The processing is the key of sliced in the processing taxonomy.

      'text' => 'tomatoes'

The text is parent key of the entry sliced tomatoes in the ingredients taxonomy ????

    },
    {
      'id' => 'en:garlic-powder',
      'text' => 'garlic powder'
    },
 {
   'id' => 'en:aubergine',
   'processing' => 'en:powdered',
   'text' => 'eggplant'
 },
 {
   'id' => 'en:courgette',
   'processing' => 'en:powdered',
   'text' => 'courgette'
  }
  ] ]

Error message

  #   Failed test at t/ingredients_processing.t line 143.

17060

  1. Structures begin differing at:

17061

  1. $got->[3]{text} = 'gehakte tomaten'

17062

  1. $expected->[3]{text} = 'tomaten'

17063