Line 1: |
Line 1: |
| <small>[[Processing Taxonomy|< Processing Taxonomy]]</small> | | <small>[[Processing Taxonomy|< Processing Taxonomy]]</small> |
| | | |
− | All tests follow the same structure. There is one test set per language. For each process adjective there is a separate test. And a test consists of a string and the required results (ingredient and process). | + | 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''. |
| | | |
− | The template for processing adjectives tests: | + | == Template == |
| + | The template for an ingredient and process test is described here: |
| | | |
| [ { | | [ { |
− | Define the language for which the tests are applicable. | + | Define the language ('''lc''') for which the tests are applicable, for example dutch (''nl''). |
− | lc => "en", | + | lc => "nl", |
− | 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. | + | Define in the '''ingredients_text''' the process- ingredient combination that must be tested. In the example we want to test the processed ingredients ''sjalotpoeder'', ''wei-poeder'', vanillepoeder and ''gepelde sjalot''. In this example are ''poeder'' and ''gepelde'' the processes; and ''sjalot'', ''wei'' and ''vanille'' the ingredients. It is important that these processed ingredients are NOT in the ingredients taxonomy. The ingredients taxonomy has precedence over the process taxonomy. |
− | ingredients_text => "raw milk, sliced tomatoes, garlic powder, powdered eggplant, courgette powder" }, | + | ingredients_text => "sjalotpoeder, wei-poeder, vanillepoeder, gepelde sjalot" }, |
| + | |
| + | The ingredients_text ''sjalotpoeder'', should result in the ingredient with id ''en:shallot'' and process ''en:powdered''. These are the key entries in the ingredients and process taxonomy respectively. Usually these are in english (en:). |
| + | [ { |
| + | 'id' => 'en:shallot', |
| + | 'text' => 'sjalot', |
| + | 'processing' => 'en:powdered' |
| + | }, |
| | | |
− | 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''. | | The ingredients_text ''sliced tomatoes'', should result in the ingredient with id ''en:tomato'' and processing ''en:sliced''. |
| { | | { |
| 'id' => 'en:tomato', | | 'id' => 'en:tomato', |
− | The id represents the parent key of sliced tomatoes. | + | The '''id''' represents the parent key of ''sliced tomatoes'' in the ingredients taxonomy. |
| 'processing' => 'en:sliced', | | 'processing' => 'en:sliced', |
− | The '''processing''' is the parent key of ''sliced'' in the taxonomy. | + | The '''processing''' is the key of ''sliced'' in the processing taxonomy. |
| 'text' => 'tomatoes' | | 'text' => 'tomatoes' |
− | The '''text''' is parent key of the entry ''sliced tomatoes'' in the ingredients taxonomy | + | The '''text''' is parent key of the entry ''sliced tomatoes'' in the ingredients taxonomy ???? |
| }, | | }, |
| | | |
Line 43: |
Line 46: |
| } | | } |
| ] ] | | ] ] |
| + | |
| + | == Error message == |
| + | # Failed test at t/ingredients_processing.t line 143. |
| + | 17060 |
| + | # Structures begin differing at: |
| + | 17061 |
| + | # $got->[3]{text} = 'gehakte tomaten' |
| + | 17062 |
| + | # $expected->[3]{text} = 'tomaten' |
| + | 17063 |
| + | [[Category:Processing Taxonomy]] |
| + | [[Category:Testing]] |