diff --git a/_pages/tools.md b/_pages/tools.md index 294627e..c715ca8 100644 --- a/_pages/tools.md +++ b/_pages/tools.md @@ -46,11 +46,14 @@ The following files are provided for testing. | [age.ged](/testfiles/gedcom70/age.ged) | This file contains various test cases for `AGE` payloads. | | [escapes.ged](/testfiles/gedcom70/escapes.ged) | This file contains @ characters that are doubled only when they appear at the start of a line string. | | [extension-record.ged](/testfiles/gedcom70/extension-record.ged) | This file contains a `_LOC` record, which is referenced from an individual with a _LOC tag. | +| [lang.ged](/testfiles/gedcom70/lang.ged) | This file contains many different `LANG` payloads. | | [long-url.ged](/testfiles/gedcom70/long-url.ged) | This file contains a URL of a submitter that is very long, to test the ability to parse very long lines. | | [maximal70.ged](/testfiles/gedcom70/maximal70.ged) | This file attempts to exercise all standard tags in various locations, and all standard enumeration values. | | [maximal70.gdz](/testfiles/gedcom70/maximal70.gdz) | This FamilySearch GEDZIP 7.0 file attempts to exercise all standard tags in various locations, and all standard enumeration values, and also includes a minimal local audio file. | [minimal70.ged](/testfiles/gedcom70/minimal70.ged) | This file is the smallest legal FamilySearch GEDCOM 7.0 file. | | [minimal70.gdz](/testfiles/gedcom70/minimal70.gdz) | This file is the smallest legal FamilySearch GEDZIP 7.0 file. | +| [notes-1.ged](/testfiles/gedcom70/notes-1.ged) | This file contains many different uses of `NOTE` and `SNOTE`. | +| [obje-1.ged](/testfiles/gedcom70/obje-1.ged) | This file contains many different uses of `OBJE` records. | | [remarriage1.ged](/testfiles/gedcom70/remarriage1.ged) | This file contains a couple who married, divorced, and then later remarried, stored as one family. | | [remarriage2.ged](/testfiles/gedcom70/remarriage2.ged) | This file contains a couple who married, divorced, and then later remarried, stored as two separate families. | | [same-sex-marriage.ged](/testfiles/gedcom70/same-sex-marriage.ged) | This file contains a same sex marriage. | diff --git a/testfiles/gedcom70/age.ged b/testfiles/gedcom70/age.ged index 5d3c9a4..5f40ec8 100644 --- a/testfiles/gedcom70/age.ged +++ b/testfiles/gedcom70/age.ged @@ -6,36 +6,187 @@ 1 CHR 2 AGE 0y 1 CHR +2 AGE < 0y +1 CHR 2 AGE 0m 1 CHR +2 AGE < 0m +1 CHR 2 AGE 0w 1 CHR +2 AGE < 0w +1 CHR 2 AGE 0d 1 CHR +2 AGE < 0d +1 CHR 2 AGE 0y 0m 1 CHR +2 AGE < 0y 0m +1 CHR 2 AGE 0y 0w 1 CHR +2 AGE < 0y 0w +1 CHR 2 AGE 0y 0d 1 CHR +2 AGE < 0y 0d +1 CHR 2 AGE 0m 0w 1 CHR +2 AGE < 0m 0w +1 CHR 2 AGE 0m 0d 1 CHR +2 AGE < 0m 0d +1 CHR 2 AGE 0w 0d 1 CHR +2 AGE < 0w 0d +1 CHR 2 AGE 0y 0m 0w 1 CHR +2 AGE < 0y 0m 0w +1 CHR 2 AGE 0y 0m 0d 1 CHR +2 AGE < 0y 0m 0d +1 CHR 2 AGE 0y 0w 0d 1 CHR +2 AGE < 0y 0w 0d +1 CHR 2 AGE 0m 0w 0d 1 CHR +2 AGE < 0m 0w 0d +1 CHR 2 AGE 0y 0m 0w 0d 1 CHR +2 AGE < 0y 0m 0w 0d +1 CHR 2 AGE 3 PHRASE Zero +1 NOTE Various combinations of non-zero ages and age ranges. +1 CHR +2 AGE > 0y +1 CHR +2 AGE 99y +1 CHR +2 AGE > 99y +1 CHR +2 AGE < 99y +1 CHR +2 AGE > 0m +1 CHR +2 AGE 11m +1 CHR +2 AGE > 11m +1 CHR +2 AGE < 11m +1 CHR +2 AGE > 0w +1 CHR +2 AGE 3w +1 CHR +2 AGE > 3w +1 CHR +2 AGE < 3w +1 CHR +2 AGE > 0d +1 CHR +2 AGE 6d +1 CHR +2 AGE > 6d +1 CHR +2 AGE < 6d +1 CHR +2 AGE > 0y 0m +1 CHR +2 AGE 99y 11m +1 CHR +2 AGE > 99y 11m +1 CHR +2 AGE < 99y 11m +1 CHR +2 AGE > 0y 0w +1 CHR +2 AGE 99y 3w +1 CHR +2 AGE > 99y 3w +1 CHR +2 AGE < 99y 3w +1 CHR +2 AGE > 0y 0d +1 CHR +2 AGE 99y 6d +1 CHR +2 AGE > 99y 6d +1 CHR +2 AGE < 99y 6d +1 CHR +2 AGE > 0m 0w +1 CHR +2 AGE 11m 3w +1 CHR +2 AGE > 11m 3w +1 CHR +2 AGE < 11m 3w +1 CHR +2 AGE > 0m 0d +1 CHR +2 AGE 11m 6d +1 CHR +2 AGE > 11m 6d +1 CHR +2 AGE < 11m 6d +1 CHR +2 AGE > 0w 0d +1 CHR +2 AGE 3w 6d +1 CHR +2 AGE > 3w 6d +1 CHR +2 AGE < 3w 6d +1 CHR +2 AGE > 0y 0m 0w +1 CHR +2 AGE 99y 11m 3w +1 CHR +2 AGE > 99y 11m 3w +1 CHR +2 AGE < 99y 11m 3w +1 CHR +2 AGE > 0y 0m 0d +1 CHR +2 AGE 99y 11m 6d +1 CHR +2 AGE > 99y 11m 6d +1 CHR +2 AGE < 99y 11m 6d +1 CHR +2 AGE > 0y 0w 0d +1 CHR +2 AGE 99y 3w 6d +1 CHR +2 AGE > 99y 3w 6d +1 CHR +2 AGE < 99y 3w 6d +1 CHR +2 AGE > 0m 0w 0d +1 CHR +2 AGE 99m 3w 6d +1 CHR +2 AGE > 99m 3w 6d +1 CHR +2 AGE < 99m 3w 6d +1 CHR +2 AGE > 0y 0m 0w 0d +1 CHR +2 AGE 99y 11m 3w 6d +1 CHR +2 AGE > 99y 11m 3w 6d +1 CHR +2 AGE < 99y 11m 3w 6d 1 NOTE Age payloads do not have range restrictions. 1 CHR 2 AGE 1y 30m diff --git a/testfiles/gedcom70/escapes.ged b/testfiles/gedcom70/escapes.ged index ac77325..7878b5c 100644 --- a/testfiles/gedcom70/escapes.ged +++ b/testfiles/gedcom70/escapes.ged @@ -6,4 +6,12 @@ 1 NOTE me@example.com is an example email address. 2 CONT @@me and @I are example social media handles. 2 CONT @@@@@ has four @ characters where only the first is escaped. +0 @N01@ SNOTE @@ one leading +0 @N02@ SNOTE @@one leading no space +0 @N05@ SNOTE doubled @@ internal has two @ characters, not escaped +0 @N06@ SNOTE doubled@@internal no space +0 @N07@ SNOTE single @ internal +0 @N08@ SNOTE single@internal no space +0 @N19@ SNOTE @@ at at front and @ inside line and +1 CONT @@ at after CONT and @ inside CONT's line too. 0 TRLR diff --git a/testfiles/gedcom70/lang.ged b/testfiles/gedcom70/lang.ged new file mode 100644 index 0000000..03ed598 --- /dev/null +++ b/testfiles/gedcom70/lang.ged @@ -0,0 +1,103 @@ +0 HEAD +1 SOUR TEST_FILES +1 SUBM @1@ +1 GEDC +2 VERS 7.0 +1 LANG af +1 SCHMA +2 TAG _PHRASE https://gedcom.io/terms/v7/PHRASE +0 @1@ SUBM +1 NAME Luther +1 LANG en +1 LANG ja +1 LANG es +0 @2@ SUBM +1 NAME GEDCOM 5.5.1 +1 NOTE This contains the language tags for every language named in the v5.5.1 spec, namely: Afrikaans, Albanian, Amharic, Anglo-Saxon, Arabic, Armenian, Assamese, Belorusian, Bengali, Braj, Bulgarian, Burmese, Cantonese, Catalan, Catalan_Spn, Church-Slavic, Czech, Danish, Dogri, Dutch, English, Esperanto, Estonian, Faroese, Finnish, French, Georgian, German, Greek, Gujarati, Hawaiian, Hebrew, Hindi, Hungarian, Icelandic, Indonesian, Italian, Japanese, Kannada, Khmer, Konkani, Korean, Lahnda, Lao, Latvian, Lithuanian, Macedonian, Maithili, Malayalam, Mandrin, Manipuri, Marathi, Mewari, Navaho, Nepali, Norwegian, Oriya, Pahari, Pali, Panjabi, Persian, Polish, Portuguese, Prakrit, Pusto, Rajasthani, Romanian, Russian, Sanskrit, Serb, Serbo_Croa, Slovak, Slovene, Spanish, Swedish, Tagalog, Tamil, Telugu, Thai, Tibetan, Turkish, Ukrainian, Urdu, Vietnamese, Wendic, Yiddish +1 LANG af +1 LANG sq +1 LANG am +1 LANG ang +1 LANG ar +1 LANG hy +1 LANG as +1 LANG be +1 LANG bn +1 LANG bra +1 LANG bg +1 LANG my +1 LANG yue +1 LANG ca +1 LANG ca-ES +1 LANG cu +1 LANG cs +1 LANG da +1 LANG dgr +1 LANG nl +1 LANG en +1 LANG eo +1 LANG et +1 LANG fo +1 LANG fi +1 LANG fr +1 LANG ka +1 LANG de +1 LANG el +1 LANG gu +1 LANG haw +1 LANG he +1 LANG hi +1 LANG hu +1 LANG is +1 LANG id +1 LANG it +1 LANG ja +1 LANG kn +1 LANG km +1 LANG kok +1 LANG ko +1 LANG lah +1 LANG lo +1 LANG lv +1 LANG lt +1 LANG mk +1 LANG mai +1 LANG ml +1 LANG cmn +1 LANG mni +1 LANG mr +1 LANG mtr +1 LANG nv +1 LANG ne +1 LANG no +1 LANG or +1 LANG him +1 LANG pi +1 LANG pa +1 LANG fa +1 LANG pl +1 LANG pt +1 LANG pra +1 LANG ps +1 LANG raj +1 LANG ro +1 LANG ru +1 LANG sa +1 LANG sr +1 LANG sh +1 LANG sk +1 LANG sl +1 LANG es +1 LANG sv +1 LANG tl +1 LANG ta +1 LANG te +1 LANG th +1 LANG bo +1 LANG tr +1 LANG uk +1 LANG ur +1 LANG vi +1 LANG wen +1 LANG yi +0 TRLR diff --git a/testfiles/gedcom70/notes-1.ged b/testfiles/gedcom70/notes-1.ged new file mode 100644 index 0000000..400b5bd --- /dev/null +++ b/testfiles/gedcom70/notes-1.ged @@ -0,0 +1,23 @@ +0 HEAD +1 SOUR conversion test +1 SUBM @1@ +1 GEDC +2 VERS 7.0 +1 NOTE The header note +0 @1@ SUBM +1 NAME Luther Tychonievich +1 NOTE An inline submission note +1 SNOTE @4@ +0 @2@ SOUR +1 SNOTE @3@ +1 SNOTE @4@ +1 SNOTE @5@ +0 @3@ SNOTE A single-use note record +1 CHAN +2 DATE 25 MAY 2021 +0 @4@ SNOTE A dual-use note record +1 CHAN +2 DATE 25 MAY 2021 +0 @5@ SNOTE A cyclic note record +1 SOUR @2@ +0 TRLR diff --git a/testfiles/gedcom70/obje-1.ged b/testfiles/gedcom70/obje-1.ged new file mode 100644 index 0000000..ff53f13 --- /dev/null +++ b/testfiles/gedcom70/obje-1.ged @@ -0,0 +1,25 @@ +0 HEAD +1 GEDC +2 VERS 7.0 +0 @1@ OBJE +1 FILE example.jpg +2 FORM image/jpeg +3 MEDI PHOTO +2 TITL Example Image File +1 FILE example.mp3 +2 FORM application/x-mp3 +2 TITL Sound Clip +1 NOTE note in OBJE record +0 @X1@ OBJE +1 FILE gifts.webm +2 FORM application/x-other +3 MEDI VIDEO +1 FILE cake.webm +2 FORM application/x-other +3 MEDI VIDEO +1 NOTE note in OBJE link +0 @2@ INDI +1 OBJE @1@ +1 OBJE @X1@ +2 TITL fifth birthday party +0 TRLR