# Test data for unit conversions
#  Copyright © 1991-2023 Unicode, Inc.
#  For terms of use, see http://www.unicode.org/copyright.html
#  SPDX-License-Identifier: Unicode-DFS-2016
#  CLDR data files are interpreted according to the LDML specification (http://unicode.org/reports/tr35/)
#
# CLDR person name formatting test data for: syr
#
# Test lines have the following structure:
#
# enum ; <type> ; <value>(', ' <value)
#   For all the elements in <…> below, the possible choices that could appear in the file.
#   For example, <field> could be any of title, given, … credentials.
#   Verify that all of these values work with the implementation.
#
# name ; <field>('-'<modifier>) ; <value>
#   A sequence of these is to be used to build a person name object with the given field values.
#   If the <field> is 'locale', then the value is the locale of the name.
#     That will always be the last field in the name.
#     NOTE: the locale for the name (where different than the test file's locale) will generally not match the text.
#     It is chosen to exercise the person name formatting, by having a different given-surname order than the file's locale.
#
# expectedResult; <value>
#   This line follows a sequence of name lines, and indicates the that all the following parameter lines have this expected value.
#
# parameters; <options>; <length>; <usage>; <formality>
#   Each of these parameter lines should be tested to see that when formatting the current name with these parameters, 
#   the expected value is produced.
#   <options> = sorting, n/a
#
# endName
#   Indicates the end of the values to be tested with the current name.
#
# =====
# Example:
#     enum ; field ; title, given, given2, surname, surname2, generation, credentials
#     …
#
#     name ; given; Iris
#     name ; surname; Falke
#     name ; locale; de
#
#     expectedResult; Falke, Iris
#
#     parameters; sorting; long; referring; formal
#     parameters; sorting; medium; referring; informal
#
#     endName
#
#     name ; given; Max
#     name ; given2; Ben
#     name ; surname; Mustermann
#     …
# =====

enum ; field ; title, given, given2, surname, surname2, generation, credentials
enum ; modifiers ; informal, allCaps, initialCap, initial, monogram, prefix, core
enum ; options ; [Lorg.unicode.cldr.tool.GeneratePersonNameTestData$Options;@5c92166b
enum ; length ; long, medium, short
enum ; usage ; referring, addressing, monogram
enum ; formality ; formal, informal

name ; given; ܣܪܓܘܢ
name ; locale; syr_AQ

expectedResult; ܣܪܓܘܢ

parameters; none; long; addressing; formal
parameters; none; long; addressing; informal
parameters; none; long; referring; formal
parameters; none; long; referring; informal
parameters; none; medium; addressing; formal
parameters; none; medium; addressing; informal
parameters; none; medium; referring; formal
parameters; none; medium; referring; informal
parameters; none; short; addressing; formal
parameters; none; short; addressing; informal
parameters; none; short; referring; formal
parameters; none; short; referring; informal
parameters; sorting; long; referring; formal
parameters; sorting; long; referring; informal
parameters; sorting; medium; referring; formal
parameters; sorting; medium; referring; informal
parameters; sorting; short; referring; formal
parameters; sorting; short; referring; informal

expectedResult; ܣ

parameters; none; long; monogram; formal
parameters; none; long; monogram; informal
parameters; none; medium; monogram; formal
parameters; none; medium; monogram; informal
parameters; none; short; monogram; formal
parameters; none; short; monogram; informal

endName

name ; given; ܐܝܫܬܪ
name ; surname; ܒܝܬ ܣܪܓܝܣ
name ; locale; syr_AQ

expectedResult; ܒܝܬ ܣܪܓܝܣ، ܐܝܫܬܪ

parameters; sorting; long; referring; formal
parameters; sorting; long; referring; informal
parameters; sorting; medium; referring; formal
parameters; sorting; medium; referring; informal
parameters; sorting; short; referring; formal
parameters; sorting; short; referring; informal

expectedResult; ܐܝܫܬܪ ܒܝܬ ܣܪܓܝܣ

parameters; none; long; addressing; formal
parameters; none; long; addressing; informal
parameters; none; long; referring; formal
parameters; none; long; referring; informal
parameters; none; medium; referring; formal
parameters; none; medium; referring; informal

expectedResult; ܐ.. ܒܝܬ ܣܪܓܝܣ

parameters; none; short; referring; informal

expectedResult; ܐ. ܒܝܬ ܣܪܓܝܣ

parameters; none; short; referring; formal

expectedResult; ܒܝܬ ܣܪܓܝܣ

parameters; none; medium; addressing; formal
parameters; none; short; addressing; formal

expectedResult; ܐܝܫܬܪ

parameters; none; medium; addressing; informal
parameters; none; short; addressing; informal

expectedResult; ܐ.ܒ

parameters; none; long; monogram; informal
parameters; none; medium; monogram; informal
parameters; none; short; monogram; informal

expectedResult; ܐܒ

parameters; none; long; monogram; formal

expectedResult; ܒ

parameters; none; medium; monogram; formal
parameters; none; short; monogram; formal

endName

name ; given; ܝܘܚܢܢ
name ; given2; ܢܝܢܘܣ
name ; surname; ܢܝܢܘܝܐ
name ; locale; syr_AQ

expectedResult; ܢܝܢܘܝܐ، ܝܘܚܢܢ ܢܝܢܘܣ

parameters; sorting; long; referring; formal

expectedResult; ܝܘܚܢܢ ܢܝܢܘܣ ܢܝܢܘܝܐ

parameters; none; long; addressing; formal
parameters; none; long; addressing; informal
parameters; none; long; referring; formal

expectedResult; ܢܝܢܘܝܐ، ܝܘܚܢܢ ܢ.

parameters; sorting; medium; referring; formal
parameters; sorting; short; referring; formal

expectedResult; ܝܘܚܢܢ ܢ. ܢܝܢܘܝܐ

parameters; none; medium; referring; formal

expectedResult; ܢܝܢܘܝܐ، ܝܘܚܢܢ

parameters; sorting; long; referring; informal
parameters; sorting; medium; referring; informal
parameters; sorting; short; referring; informal

expectedResult; ܝܘܚܢܢ ܢܝܢܘܝܐ

parameters; none; long; referring; informal
parameters; none; medium; referring; informal

expectedResult; ܝ.. ܢܝܢܘܝܐ

parameters; none; short; referring; informal

expectedResult; ܝ. ܢܝܢܘܝܐ

parameters; none; short; referring; formal

expectedResult; ܢܝܢܘܝܐ

parameters; none; medium; addressing; formal
parameters; none; short; addressing; formal

expectedResult; ܝܘܚܢܢ

parameters; none; medium; addressing; informal
parameters; none; short; addressing; informal

expectedResult; ܝ.ܢ

parameters; none; long; monogram; informal
parameters; none; medium; monogram; informal
parameters; none; short; monogram; informal

expectedResult; ܝܢܢ

parameters; none; long; monogram; formal

expectedResult; ܢ

parameters; none; medium; monogram; formal
parameters; none; short; monogram; formal

endName

name ; title; ܕܘܟܬܘܪ ܡܠܦܢܐ
name ; given; ܫܡܝܪܡ
name ; given-informal; ܨܦܪܐ
name ; given2; ܣܒܝܢܐ
name ; surname-prefix; ܕ
name ; surname-core; ܐܠܩܘܫ
name ; surname2; ܒܪܣܝܢ ܣܒܪܬܘ
name ; credentials; ܐܣܝܐ
name ; locale; ja_AQ

expectedResult; ܕ ܐܠܩܘܫ، ܫܡܝܪܡ ܣܒܝܢܐ

parameters; none; long; referring; formal

expectedResult; ܕܘܟܬܘܪ ܡܠܦܢܐ ܕ ܐܠܩܘܫ

parameters; none; long; addressing; formal
parameters; none; medium; addressing; formal
parameters; none; short; addressing; formal

expectedResult; ܕ ܐܠܩܘܫ، ܫܡܝܪܡ ܣ.

parameters; none; medium; referring; formal

expectedResult; ܕ ܐܠܩܘܫ ܨܦܪܐ

parameters; none; long; referring; informal
parameters; none; medium; referring; informal

expectedResult; ܕ ܐܠܩܘܫ، ܫ.

parameters; none; short; referring; formal

expectedResult; ܕ ܐܠܩܘܫ ܫ.

parameters; none; short; referring; informal

expectedResult; ܕ.ܫ.ܣ

parameters; none; long; monogram; formal

expectedResult; ܨܦܪܐ

parameters; none; long; addressing; informal
parameters; none; medium; addressing; informal
parameters; none; short; addressing; informal

expectedResult; ܕ.ܨ

parameters; none; long; monogram; informal

expectedResult; ܕ

parameters; none; medium; monogram; formal
parameters; none; short; monogram; formal

expectedResult; ܨ

parameters; none; medium; monogram; informal
parameters; none; short; monogram; informal

endName
