Prototype of test imports module and associated tests
This commit is contained in:
parent
23a0a492d4
commit
7a33b08185
@ -46,11 +46,19 @@ from ..const import GRAMPS_UUID
|
||||
# create_id
|
||||
#
|
||||
#-------------------------------------------------------------------------
|
||||
rand = random.Random(time.time())
|
||||
_rand = random.Random(time.time())
|
||||
_det_id = False
|
||||
|
||||
|
||||
def create_id():
|
||||
global _rand
|
||||
if _det_id is True:
|
||||
_rand = _rand + 1
|
||||
return "%08x%08x" % (_rand, _rand)
|
||||
else:
|
||||
return "%08x%08x" % (int(time.time()*10000),
|
||||
rand.randint(0, sys.maxsize))
|
||||
_rand.randint(0, sys.maxsize))
|
||||
|
||||
|
||||
def create_uid(self, handle=None):
|
||||
if handle:
|
||||
@ -59,3 +67,11 @@ def create_uid(self, handle=None):
|
||||
uid = uuid.uuid4()
|
||||
return uid.hex.upper()
|
||||
|
||||
|
||||
def set_det_id(self, val=True):
|
||||
global _rand, _det_id
|
||||
_det_id = val
|
||||
if _det_id is True:
|
||||
_rand = 0
|
||||
else:
|
||||
_rand = random.Random(time.time())
|
||||
|
78
gramps/plugins/test/Tstdata/FTM_16dec2015a-mod1.ged
Normal file
78
gramps/plugins/test/Tstdata/FTM_16dec2015a-mod1.ged
Normal file
@ -0,0 +1,78 @@
|
||||
0 HEAD
|
||||
1 SOUR FTM
|
||||
2 VERS Family Tree Maker (22.2.5)
|
||||
2 NAME Family Tree Maker for Mac OS X
|
||||
2 CORP Ancestry.com
|
||||
3 ADDR 360 W 4800 N
|
||||
4 CONT Provo, UT 84604
|
||||
3 PHON (801) 705-7000
|
||||
1 DEST GED55
|
||||
1 DATE 16 DEC 2015
|
||||
1 CHAR UTF-8
|
||||
1 FILE test_FTM_16dec2015-mod.ged
|
||||
1 SUBM @SUBM@
|
||||
1 GEDC
|
||||
2 VERS 5.5
|
||||
2 FORM LINEAGE-LINKED
|
||||
0 @SUBM@ SUBM
|
||||
0 @I278@ INDI
|
||||
1 NAME Andrew /May/
|
||||
2 SOUR @S29@
|
||||
3 PAGE Year: 1850; Census Place: District 14, Cape Girardeau, Missouri; Roll:
|
||||
4 CONC M432_394; Page: 435B; Image: 248
|
||||
3 OBJE @M159@
|
||||
1 SEX M
|
||||
1 BIRT
|
||||
2 DATE 1816
|
||||
2 PLAC Tennessee, USA
|
||||
2 SOUR @S29@
|
||||
3 PAGE Year: 1850; Census Place: District 14, Cape Girardeau, Missouri; Roll:
|
||||
4 CONC M432_394; Page: 435B; Image: 248
|
||||
3 OBJE @M159@
|
||||
1 RESI
|
||||
2 DATE 1850
|
||||
2 PLAC District 14, Cape Girardeau, Missouri, USA
|
||||
2 SOUR @S29@
|
||||
3 PAGE Year: 1850; Census Place: District 14, Cape Girardeau, Missouri; Roll:
|
||||
4 CONC M432_394; Page: 435B; Image: 248
|
||||
3 OBJE @M159@
|
||||
1 DEAT
|
||||
2 DATE 1850/1860
|
||||
2 PLAC Bollinger Co. MO
|
||||
1 FAMS @F73@
|
||||
1 FAMS @F74@
|
||||
1 FAMC @F73@
|
||||
1 FAMC @F73@
|
||||
1 FAMC @F74@
|
||||
1 FAMC @F74@
|
||||
0 @F73@ FAM
|
||||
1 HUSB @I278@
|
||||
1 MARR
|
||||
2 DATE ABT 1841
|
||||
2 PLAC Union Co.?, IL
|
||||
0 @F74@ FAM
|
||||
1 HUSB @I278@
|
||||
1 MARR
|
||||
2 DATE AUG 1847
|
||||
2 PLAC Wayne, Missouri, United States
|
||||
0 @S29@ SOUR
|
||||
1 AUTH Ancestry.com
|
||||
1 TITL 1850 United States Federal Census
|
||||
1 PUBL Name: Ancestry.com Operations, Inc.; Location: Provo, UT, USA; Date:
|
||||
2 CONC 2009;
|
||||
1 REPO @R1@
|
||||
0 @R1@ REPO
|
||||
1 NAME Ancestry.com
|
||||
1 ADDR
|
||||
1 EMAIL
|
||||
1 PHON
|
||||
0 @M159@ OBJE
|
||||
1 FILE 1850 United States Federal Census(11)-1.jpg
|
||||
2 TITL 1850 United States Federal Census
|
||||
1 NOTE Year: 1850; Census Place: District 14, Cape Girardeau, Missouri; Roll:
|
||||
2 CONC M432_394; Page: 435B; Image: 248
|
||||
0 @M158@ OBJE
|
||||
1 FILE D:\Users\PRC\Downloads\1850 United States Federal Census(11)-1.jpg
|
||||
0 @M157@ OBJE
|
||||
1 FILE http://1.gravatar.com/avatar/77e02a3c8c665155ad1acaac8c2742e0?s=120&d=mm&r=pg
|
||||
0 TRLR
|
BIN
gramps/plugins/test/Tstdata/FTM_16dec2015a-mod1.gramps
Normal file
BIN
gramps/plugins/test/Tstdata/FTM_16dec2015a-mod1.gramps
Normal file
Binary file not shown.
44
gramps/plugins/test/Tstdata/MixInlineXrefNote.ged
Normal file
44
gramps/plugins/test/Tstdata/MixInlineXrefNote.ged
Normal file
@ -0,0 +1,44 @@
|
||||
0 HEAD
|
||||
1 SOUR RootsMagic
|
||||
2 NAME RootsMagic
|
||||
2 VERS 7.0.2.2
|
||||
2 CORP RootsMagic, Inc.
|
||||
3 ADDR PO Box 495
|
||||
4 CONT Springville, UT 84663
|
||||
4 CONT USA
|
||||
3 PHON 1-800-ROOTSMAGIC
|
||||
1 DEST RootsMagic
|
||||
1 DATE 26 JAN 2015
|
||||
1 FILE rm.ged
|
||||
1 GEDC
|
||||
2 VERS 5.5.1
|
||||
2 FORM LINEAGE-LINKED
|
||||
1 CHAR UTF-8
|
||||
0 @I1@ INDI
|
||||
1 NAME Living1
|
||||
1 SEX M
|
||||
1 NOTE Inline 0
|
||||
1 NOTE @N0@
|
||||
1 NOTE Inline 1
|
||||
1 SOUR Inline Source 1
|
||||
1 OBJE
|
||||
2 FILE Inline1
|
||||
2 FORM jpg
|
||||
0 @N0@ NOTE
|
||||
1 CONC XREF N0
|
||||
0 @I01@ INDI
|
||||
1 NAME Living01
|
||||
1 SEX M
|
||||
1 SOUR inline Source 2
|
||||
1 OBJE
|
||||
2 FILE Inline2
|
||||
3 FORM jpg
|
||||
0 @S1@ SOUR
|
||||
1 TITL Source S1
|
||||
0 @S01@ SOUR
|
||||
1 TITL Source S01
|
||||
0 @O1@ OBJE
|
||||
1 FILE XREF1
|
||||
0 @O1@ OBJE
|
||||
1 FILE XREF2
|
||||
0 TRLR
|
BIN
gramps/plugins/test/Tstdata/MixInlineXrefNote.gramps
Normal file
BIN
gramps/plugins/test/Tstdata/MixInlineXrefNote.gramps
Normal file
Binary file not shown.
275
gramps/plugins/test/Tstdata/Paris.ged
Normal file
275
gramps/plugins/test/Tstdata/Paris.ged
Normal file
@ -0,0 +1,275 @@
|
||||
0 HEAD
|
||||
1 SOUR HEREDIS 14 PC
|
||||
2 VERS 14
|
||||
2 NAME HEREDIS PC
|
||||
2 CORP BSD Concept ©
|
||||
3 ADDR www.heredis.com
|
||||
1 DATE 9 JAN 2016
|
||||
2 TIME 18:28:16
|
||||
1 GEDC
|
||||
2 VERS 5.5
|
||||
2 FORM LINEAGE-LINKED
|
||||
1 CHAR UTF-8
|
||||
1 PLAC
|
||||
2 FORM Town , Area code , County , Region , Country, Subdivision
|
||||
0 @3I@ INDI
|
||||
1 NAME Arrondissements/PARIS/
|
||||
2 GIVN Arrondissements
|
||||
2 SURN PARIS
|
||||
1 SEX M
|
||||
1 EVEN
|
||||
2 TYPE Acquisition
|
||||
2 TYPE Paris
|
||||
2 PLAC Paris,75056,Paris,Île-de-France,FRANCE,
|
||||
1 FAMS @181U@
|
||||
0 @4I@ INDI
|
||||
1 NAME Églises/LUTECE/
|
||||
2 GIVN Églises
|
||||
2 SURN LUTECE
|
||||
1 SEX F
|
||||
1 ORDN
|
||||
2 TYPE Notre-Dame-de-Bonne-Nouvelle
|
||||
2 PLAC Notre-Dame-de-Bonne-Nouvelle,75102,Paris,Île-de-France,FRANCE,
|
||||
1 ORDN
|
||||
2 TYPE Saint-Benoît
|
||||
2 PLAC Saint-Benoît,75102,Paris,Île-de-France,FRANCE,
|
||||
1 ORDN
|
||||
2 TYPE Saint-Christophe-de-Javel
|
||||
2 PLAC Saint-Christophe-de-Javel,75115,Paris,Île-de-France,FRANCE,
|
||||
1 ORDN
|
||||
2 TYPE Saint-Eustache
|
||||
2 PLAC Saint-Eustache,75101,Paris,Île-de-France,FRANCE,
|
||||
1 ORDN
|
||||
2 TYPE Saint-Germain-des-Prés
|
||||
2 PLAC Saint-Germain-des-Prés,75114,Paris,Île-de-France,FRANCE,
|
||||
1 ORDN
|
||||
2 TYPE Saint-Germain-L'Auxerrois
|
||||
2 PLAC Saint-Germain-L'Auxerrois,75101,Paris,Île-de-France,FRANCE,
|
||||
1 ORDN
|
||||
2 TYPE Saint-Gervais-et-Protais
|
||||
2 PLAC Saint-Gervais-et-Protais,75104,Paris,Île-de-France,FRANCE,
|
||||
1 ORDN
|
||||
2 TYPE Saint-Jacques-du-Haut-Pas
|
||||
2 PLAC Saint-Jacques-du-Haut-Pas,75105,Paris,Île-de-France,FRANCE,
|
||||
1 ORDN
|
||||
2 TYPE Saint-Laurent
|
||||
2 PLAC Saint-Laurent,75110,Paris,Île-de-France,FRANCE,
|
||||
1 ORDN
|
||||
2 TYPE Saint-Leu-Saint-Gilles
|
||||
2 PLAC Saint-Leu-Saint-Gilles,75101,Paris,Île-de-France,FRANCE,
|
||||
1 ORDN
|
||||
2 TYPE Saint-Médard
|
||||
2 PLAC Saint-Médard,75105,Paris,Île-de-France,FRANCE,
|
||||
1 ORDN
|
||||
2 TYPE Saint-Merri
|
||||
2 PLAC Saint-Merri,75104,Paris,Île-de-France,FRANCE,
|
||||
1 ORDN
|
||||
2 TYPE Saint-Nicolas-de-Chardonnet
|
||||
2 PLAC Saint-Nicolas-de-Chardonnet,75105,Paris,Île-de-France,FRANCE,
|
||||
1 ORDN
|
||||
2 TYPE Saint-Nicolas-des-Champs
|
||||
2 PLAC Saint-Nicolas-des-Champs,75104,Paris,Île-de-France,FRANCE,
|
||||
1 ORDN
|
||||
2 TYPE Saint-Sauveur
|
||||
2 PLAC Saint-Sauveur,75102,Paris,Île-de-France,FRANCE,
|
||||
1 ORDN
|
||||
2 TYPE Saint-Séverin
|
||||
2 PLAC Saint-Séverin,75105,Paris,Île-de-France,FRANCE,
|
||||
1 ORDN
|
||||
2 TYPE Saint-Sulpice
|
||||
2 PLAC Saint-Sulpice,75106,Paris,Île-de-France,FRANCE,
|
||||
1 ORDN
|
||||
2 TYPE Catédrale Notre-Dame-de-Paris
|
||||
2 PLAC Notre-Dame-de-Paris,75104,Paris,Île-de-France,FRANCE,
|
||||
1 ORDN
|
||||
2 TYPE Temple Protestant de L'Oratoire du Louvre
|
||||
2 PLAC Temple Protestant de L'Oratoire du Louvre,75101,Paris,Île-de-France,FRANCE,
|
||||
1 ORDN
|
||||
2 TYPE Saint-Paul
|
||||
2 PLAC Saint-Paul-Saint-Louis,75104,Paris,Île-de-France,FRANCE,
|
||||
1 FAMS @181U@
|
||||
0 @93I@ INDI
|
||||
1 NAME 01 le Louvre/PARIS/
|
||||
2 GIVN 01 le Louvre
|
||||
2 SURN PARIS
|
||||
1 SEX M
|
||||
1 BIRT
|
||||
2 PLAC Paris 01,75101,Paris,Ïle-de-France,FRANCE,
|
||||
1 FAMC @181U@
|
||||
0 @95I@ INDI
|
||||
1 NAME 02 la Bourse/PARIS/
|
||||
2 GIVN 02 la Bourse
|
||||
2 SURN PARIS
|
||||
1 SEX M
|
||||
1 BIRT
|
||||
2 PLAC Paris 02,75102,Paris,Île-de-France,FRANCE,
|
||||
1 FAMC @181U@
|
||||
0 @98I@ INDI
|
||||
1 NAME 04 Hôtel-de-Ville/PARIS/
|
||||
2 GIVN 04 Hôtel-de-Ville
|
||||
2 SURN PARIS
|
||||
1 SEX M
|
||||
1 BIRT
|
||||
2 PLAC Paris 04,75104,Paris,Île-de-France,FRANCE,
|
||||
1 FAMC @181U@
|
||||
0 @100I@ INDI
|
||||
1 NAME 09 Opéra/PARIS/
|
||||
2 GIVN 09 Opéra
|
||||
2 SURN PARIS
|
||||
1 SEX M
|
||||
1 BIRT
|
||||
2 PLAC Paris 09,75109,Paris,Île-de-France,FRANCE,
|
||||
1 FAMC @181U@
|
||||
0 @102I@ INDI
|
||||
1 NAME 05 Panthéon/PARIS/
|
||||
2 GIVN 05 Panthéon
|
||||
2 SURN PARIS
|
||||
1 SEX M
|
||||
1 BIRT
|
||||
2 PLAC Paris 05,75105,Paris,Île-de-France,FRANCE,
|
||||
1 FAMC @181U@
|
||||
0 @104I@ INDI
|
||||
1 NAME 06 Luxembourg/PARIS/
|
||||
2 GIVN 06 Luxembourg
|
||||
2 SURN PARIS
|
||||
1 SEX M
|
||||
1 BIRT
|
||||
2 PLAC Paris 06,75106,Paris,Île-de-France,FRANCE,
|
||||
1 FAMC @181U@
|
||||
0 @106I@ INDI
|
||||
1 NAME 07 Palais-Bourbon/PARIS/
|
||||
2 GIVN 07 Palais-Bourbon
|
||||
2 SURN PARIS
|
||||
1 SEX M
|
||||
1 BIRT
|
||||
2 PLAC Paris 07,75107,Paris,Île-de-France,FRANCE,
|
||||
1 FAMC @181U@
|
||||
0 @108I@ INDI
|
||||
1 NAME 08 Élysée/PARIS/
|
||||
2 GIVN 08 Élysée
|
||||
2 SURN PARIS
|
||||
1 SEX M
|
||||
1 BIRT
|
||||
2 PLAC Paris 08,75108,Paris,Île-de-France,FRANCE,
|
||||
1 FAMC @181U@
|
||||
0 @110I@ INDI
|
||||
1 NAME 10 Entrepôt/PARIS/
|
||||
2 GIVN 10 Entrepôt
|
||||
2 SURN PARIS
|
||||
1 SEX M
|
||||
1 BIRT
|
||||
2 PLAC Paris 10,75110,Paris,Île-de-France,FRANCE,
|
||||
1 FAMC @181U@
|
||||
0 @112I@ INDI
|
||||
1 NAME 11 Popincourt/PARIS/
|
||||
2 GIVN 11 Popincourt
|
||||
2 SURN PARIS
|
||||
1 SEX M
|
||||
1 BIRT
|
||||
2 PLAC Paris 11,75111,Paris,Île-de-France,FRANCE,
|
||||
1 FAMC @181U@
|
||||
0 @114I@ INDI
|
||||
1 NAME 12 Reuilly/PARIS/
|
||||
2 GIVN 12 Reuilly
|
||||
2 SURN PARIS
|
||||
1 SEX M
|
||||
1 BIRT
|
||||
2 PLAC Paris 12,75112,Paris,Île-de-France,FRANCE,
|
||||
1 FAMC @181U@
|
||||
0 @116I@ INDI
|
||||
1 NAME 13 des Gobelins - la Salpêtrière/PARIS/
|
||||
2 GIVN 13 des Gobelins - la Salpêtrière
|
||||
2 SURN PARIS
|
||||
1 SEX M
|
||||
1 BIRT
|
||||
2 PLAC Paris 13,75113,Paris,Île-de-France,FRANCE,
|
||||
1 FAMC @181U@
|
||||
0 @118I@ INDI
|
||||
1 NAME 14 L'Observatoire/PARIS/
|
||||
2 GIVN 14 L'Observatoire
|
||||
2 SURN PARIS
|
||||
1 SEX M
|
||||
1 BIRT
|
||||
2 PLAC Paris 14,75114,Paris,Île-de-France,FRANCE,
|
||||
1 FAMC @181U@
|
||||
0 @120I@ INDI
|
||||
1 NAME 19 Buttes-Chaumont/PARIS/
|
||||
2 GIVN 19 Buttes-Chaumont
|
||||
2 SURN PARIS
|
||||
1 SEX M
|
||||
1 BIRT
|
||||
2 PLAC Paris 19,75119,Paris,Île-de-France,FRANCE,
|
||||
1 FAMC @181U@
|
||||
0 @122I@ INDI
|
||||
1 NAME 15 Vaugirard/PARIS/
|
||||
2 GIVN 15 Vaugirard
|
||||
2 SURN PARIS
|
||||
1 SEX M
|
||||
1 BIRT
|
||||
2 PLAC Paris 15,75115,Paris,Île-de-France,FRANCE,
|
||||
1 FAMC @181U@
|
||||
0 @124I@ INDI
|
||||
1 NAME 16 Passy/PARIS/
|
||||
2 GIVN 16 Passy
|
||||
2 SURN PARIS
|
||||
1 SEX M
|
||||
1 BIRT
|
||||
2 PLAC Paris 16,75116,Paris,Île-de-France,FRANCE,
|
||||
1 FAMC @181U@
|
||||
0 @126I@ INDI
|
||||
1 NAME 17 Batignolles-Monceau/PARIS/
|
||||
2 GIVN 17 Batignolles-Monceau
|
||||
2 SURN PARIS
|
||||
1 SEX M
|
||||
1 BIRT
|
||||
2 PLAC Paris 17,75117,Paris,Île-de-France,FRANCE,
|
||||
1 FAMC @181U@
|
||||
0 @128I@ INDI
|
||||
1 NAME 18 Buttes-Montmartre/PARIS/
|
||||
2 GIVN 18 Buttes-Montmartre
|
||||
2 SURN PARIS
|
||||
1 SEX M
|
||||
1 BIRT
|
||||
2 PLAC Paris 18,75118,Paris,Île-de-France,FRANCE,
|
||||
1 FAMC @181U@
|
||||
0 @134I@ INDI
|
||||
1 NAME 03 Temple/PARIS/
|
||||
2 GIVN 03 Temple
|
||||
2 SURN PARIS
|
||||
1 SEX M
|
||||
1 BIRT
|
||||
2 PLAC Paris 03,75103,Paris,Île-de-France,FRANCE,
|
||||
1 FAMC @181U@
|
||||
0 @179I@ INDI
|
||||
1 NAME 20 Ménilmontant/PARIS/
|
||||
2 GIVN 20 Ménilmontant
|
||||
2 SURN PARIS
|
||||
1 SEX M
|
||||
1 BIRT
|
||||
2 PLAC Paris 20,75120,Paris,Île-de-France,FRANCE,
|
||||
1 FAMC @181U@
|
||||
0 @181U@ FAM
|
||||
1 HUSB @3I@
|
||||
1 WIFE @4I@
|
||||
1 CHIL @93I@
|
||||
1 CHIL @95I@
|
||||
1 CHIL @98I@
|
||||
1 CHIL @100I@
|
||||
1 CHIL @102I@
|
||||
1 CHIL @104I@
|
||||
1 CHIL @106I@
|
||||
1 CHIL @108I@
|
||||
1 CHIL @110I@
|
||||
1 CHIL @112I@
|
||||
1 CHIL @114I@
|
||||
1 CHIL @116I@
|
||||
1 CHIL @118I@
|
||||
1 CHIL @120I@
|
||||
1 CHIL @122I@
|
||||
1 CHIL @124I@
|
||||
1 CHIL @126I@
|
||||
1 CHIL @128I@
|
||||
1 CHIL @134I@
|
||||
1 CHIL @179I@
|
||||
0 TRLR
|
||||
|
173
gramps/plugins/test/Tstdata/bug 8322 test.ged
Normal file
173
gramps/plugins/test/Tstdata/bug 8322 test.ged
Normal file
@ -0,0 +1,173 @@
|
||||
0 HEAD
|
||||
1 SOUR RootsMagic
|
||||
2 NAME RootsMagic
|
||||
2 VERS 7.0.2.2
|
||||
2 CORP RootsMagic, Inc.
|
||||
3 ADDR PO Box 495
|
||||
4 CONT Springville, UT 84663
|
||||
4 CONT USA
|
||||
3 PHON 1-800-ROOTSMAGIC
|
||||
1 DEST RootsMagic
|
||||
1 DATE 26 JAN 2015
|
||||
1 FILE rm.ged
|
||||
1 GEDC
|
||||
2 VERS 5.5.1
|
||||
2 FORM LINEAGE-LINKED
|
||||
1 CHAR UTF-8
|
||||
0 @I310@ INDI
|
||||
1 NAME Living
|
||||
1 SEX M
|
||||
1 _UID B9C4D3F0D254674AA1B9023745BEBFE551C1
|
||||
1 CHAN
|
||||
2 DATE 26 JAN 2015
|
||||
1 RESI
|
||||
2 DATE 1960
|
||||
2 PLAC the place
|
||||
2 ADDR the address
|
||||
3 NOTE the place created not previously used so changed to add the address; __event_addr(len==0, place is None)
|
||||
1 RESI
|
||||
2 DATE 1961
|
||||
2 PLAC the place
|
||||
3 NOTE check that this note is retained when the place is deleted. it should be merged into place
|
||||
2 ADDR the address
|
||||
3 NOTE the place created and then deleted and old data reused; __event_addr(len==0, place is not None)
|
||||
1 RESI
|
||||
2 DATE 1962
|
||||
2 PLAC the place
|
||||
3 NOTE setup the place
|
||||
1 RESI
|
||||
2 DATE 1962
|
||||
2 PLAC the place
|
||||
2 ADDR another address
|
||||
3 NOTE the place already exists; but now set doesn't match ; __event_addr(len!=0, place is None)
|
||||
1 RESI
|
||||
2 DATE 1963
|
||||
2 PLAC the place
|
||||
2 ADDR another address
|
||||
3 NOTE the place already exists but now set matches; __event_addr(len!=0, place is not None)
|
||||
1 RESI
|
||||
2 DATE 1964
|
||||
2 ADDR the address
|
||||
2 PLAC the place
|
||||
3 NOTE the address created, then destroyed as we find a matching set; __event_addr(no place_handle, create place)
|
||||
1 RESI
|
||||
2 DATE 1965
|
||||
2 ADDR the address
|
||||
1 RESI
|
||||
2 DATE 1966
|
||||
2 ADDR the address
|
||||
2 PLAC the place
|
||||
3 NOTE address reused, then destroyed as we find a matching set; __event_addr(no place_handle, place found)
|
||||
1 RESI
|
||||
2 DATE 1967
|
||||
2 PLAC the place
|
||||
2 ADDR the address
|
||||
2 ADDR second address
|
||||
3 NOTE second address ignored
|
||||
1 RESI
|
||||
2 DATE 1968
|
||||
2 ADDR the address 2
|
||||
2 PLAC the place 2
|
||||
2 ADDR second address
|
||||
3 NOTE second address ignored again
|
||||
2 ADDR a third address ignored again
|
||||
1 RESI
|
||||
2 DATE 1971
|
||||
2 ADDR address place test
|
||||
2 PLAC place test
|
||||
3 NOTE ADDR created; __event_place finds it but place does not match; __event_place(len==0, place is None)
|
||||
1 RESI
|
||||
2 DATE 1972
|
||||
2 ADDR address place test
|
||||
3 NOTE this note is stored with the old address and then merged into the matching place
|
||||
2 PLAC place test
|
||||
3 NOTE ADDR created; __event_place finds it and now place does match; __event_place(len==0, place is not None)
|
||||
1 RESI
|
||||
2 DATE 1973
|
||||
2 ADDR address place test
|
||||
3 NOTE setup address place test
|
||||
1 RESI
|
||||
2 DATE 1973
|
||||
2 ADDR address place test
|
||||
2 PLAC place test
|
||||
3 NOTE address place test found; place exists and can be reused; __event_place(len!=0, place is not None)
|
||||
1 RESI
|
||||
2 DATE 1974
|
||||
2 ADDR address place test
|
||||
2 PLAC different place test
|
||||
3 NOTE address place test found; but matching addr/plac not found; __event_place(len!=0, place is not None)
|
||||
1 RESI
|
||||
2 DATE 1975
|
||||
2 PLAC the place
|
||||
2 ADDR address place test
|
||||
3 NOTE PLAC occurs first; matching entry found; __event_place(no place handle, place is not None)
|
||||
1 RESI
|
||||
2 DATE 1976
|
||||
2 PLAC a new place
|
||||
2 ADDR address place test
|
||||
3 NOTE PLAC occurs first; matching entry not found; __event_place(no place handle, place is None)
|
||||
2 PLAC a second PLACe ignored
|
||||
2 PLAC and a third one also ignored
|
||||
2 ADDR plus an address just for good measure also ignored
|
||||
1 RESI
|
||||
2 DATE 1977
|
||||
2 ADDR address with no place
|
||||
3 NOTE note is stashed with a Place, and then merged into the address
|
||||
1 RESI
|
||||
2 DATE 1966
|
||||
2 PLAC Woerden, Zuid-Holland, Netherlands
|
||||
3 NOTE Place note
|
||||
2 ADDR Kromwijkerkade 63
|
||||
1 RESI
|
||||
2 DATE 1969
|
||||
2 PLAC Hasselt, Overijssel, Netherlands
|
||||
2 ADDR Prinsenstraat 69
|
||||
3 NOTE ADDR note
|
||||
1 RESI
|
||||
2 DATE 1978
|
||||
2 PLAC Enschede, Overijssel, Netherlands
|
||||
2 ADDR Calslaan 26-52
|
||||
1 RESI
|
||||
2 DATE 1979
|
||||
2 PLAC Enschede, Overijssel, Netherlands
|
||||
2 ADDR Calslaan 26-44
|
||||
3 NOTE PLAC previously encountered, new ADDR, so new Place
|
||||
1 RESI
|
||||
2 DATE 1984
|
||||
2 ADDR Calslaan 26-61
|
||||
2 PLAC Enschede, Overijssel, Netherlands
|
||||
3 NOTE ADDR before PLAC (check ADDR is removed)
|
||||
1 RESI
|
||||
2 DATE 1984
|
||||
2 PLAC Enschede, Overijssel, Netherlands
|
||||
1 RESI
|
||||
2 DATE 1984
|
||||
2 ADDR Calslaan 26-61
|
||||
1 RESI
|
||||
2 DATE 1984
|
||||
2 ADDR Calslaan 26-61
|
||||
2 PLAC Enschede, Overijssel, Netherlands
|
||||
3 NOTE ADDR before PLAC (address matches previous one, then needs to be reassigned)
|
||||
1 RESI
|
||||
2 DATE 1988
|
||||
2 PLAC Amsterdam, Noord-Holland, Netherlands
|
||||
2 ADDR Papendrechtstraat 37
|
||||
1 RESI
|
||||
2 DATE 1994
|
||||
2 PLAC Amsterdam, Noord-Holland, Netherlands
|
||||
3 NOTE PLAC and no ADDR
|
||||
1 RESI
|
||||
2 DATE 1994
|
||||
2 PLAC Amsterdam, Noord-Holland, Netherlands
|
||||
2 ADDR Olympiaplein 46-2
|
||||
3 NOTE PLAC matches previous one, then when ADDR is read need to create a new Place
|
||||
1 RESI
|
||||
2 DATE 1988
|
||||
2 PLAC Amsterdam, Noord-Holland, Netherlands
|
||||
2 ADDR Papendrechtstraat 37
|
||||
3 NOTE PLAC and ADDR match, use existing one
|
||||
1 RESI
|
||||
2 DATE 1994
|
||||
2 ADDR remembered address that should be set into place
|
||||
2 PLAC Amsterdam, Noord-Holland, Netherlands
|
||||
0 TRLR
|
BIN
gramps/plugins/test/Tstdata/bug 8322 test.gramps
Normal file
BIN
gramps/plugins/test/Tstdata/bug 8322 test.gramps
Normal file
Binary file not shown.
BIN
gramps/plugins/test/Tstdata/paris.gramps
Normal file
BIN
gramps/plugins/test/Tstdata/paris.gramps
Normal file
Binary file not shown.
BIN
gramps/plugins/test/Tstdata/paris.gramps.bak
Normal file
BIN
gramps/plugins/test/Tstdata/paris.gramps.bak
Normal file
Binary file not shown.
946
gramps/plugins/test/Tstdata/sample.ged
Normal file
946
gramps/plugins/test/Tstdata/sample.ged
Normal file
@ -0,0 +1,946 @@
|
||||
0 HEAD
|
||||
1 SOUR Gramps
|
||||
2 VERS 3.3.0
|
||||
2 NAME Gramps
|
||||
1 DATE 27 DEC 2010
|
||||
2 TIME 15:35:24
|
||||
1 SUBM @SUBM@
|
||||
1 FILE gramps33/example/gedcom/sample.ged
|
||||
1 COPR Copyright (c) 2010 Alex Roitman,,,.
|
||||
1 GEDC
|
||||
2 VERS 5.5
|
||||
2 FORM LINEAGE-LINKED
|
||||
1 CHAR UTF-8
|
||||
1 LANG French
|
||||
0 @SUBM@ SUBM
|
||||
1 NAME Alex Roitman,,,
|
||||
1 ADDR Not Provided
|
||||
2 CONT Not Provided
|
||||
2 ADR1 Not Provided
|
||||
0 @I0@ INDI
|
||||
1 NAME Anna /Hansdotter/
|
||||
2 GIVN Anna
|
||||
2 SURN Hansdotter
|
||||
1 SEX F
|
||||
1 BIRT
|
||||
2 TYPE Birth of Anna Hansdotter
|
||||
2 DATE 2 OCT 1864
|
||||
2 PLAC Löderup, Malmöhus Län, Sweden
|
||||
1 DEAT
|
||||
2 TYPE Death of Anna Hansdotter
|
||||
2 DATE 29 SEP 1945
|
||||
2 PLAC Sparks, Washoe Co., NV
|
||||
1 FAMS @F3@
|
||||
1 CHAN
|
||||
2 DATE 21 DEC 2007
|
||||
3 TIME 01:35:26
|
||||
0 @I1@ INDI
|
||||
1 NAME Keith Lloyd /Smith/
|
||||
2 GIVN Keith Lloyd
|
||||
2 SURN Smith
|
||||
1 SEX M
|
||||
1 BIRT
|
||||
2 TYPE Birth of Keith Lloyd Smith
|
||||
2 DATE 11 AUG 1966
|
||||
2 PLAC San Francisco, San Francisco Co., CA
|
||||
1 FAMC @F8@
|
||||
1 CHAN
|
||||
2 DATE 21 DEC 2007
|
||||
3 TIME 01:35:26
|
||||
0 @I10@ INDI
|
||||
1 NAME Hans Peter /Smith/
|
||||
2 GIVN Hans Peter
|
||||
2 SURN Smith
|
||||
1 SEX M
|
||||
1 BIRT
|
||||
2 TYPE Birth of Hans Peter Smith
|
||||
2 DATE 17 APR 1904
|
||||
2 PLAC Rønne, Bornholm, Denmark
|
||||
1 DEAT
|
||||
2 TYPE Death of Hans Peter Smith
|
||||
2 DATE 29 JAN 1977
|
||||
2 PLAC San Francisco, San Francisco Co., CA
|
||||
1 FAMC @F3@
|
||||
1 FAMS @F9@
|
||||
1 FAMS @F14@
|
||||
1 CHAN
|
||||
2 DATE 21 DEC 2007
|
||||
3 TIME 01:35:26
|
||||
0 @I11@ INDI
|
||||
1 NAME Hanna /Smith/
|
||||
2 GIVN Hanna
|
||||
2 SURN Smith
|
||||
1 SEX F
|
||||
1 BIRT
|
||||
2 TYPE Birth of Hanna Smith
|
||||
2 DATE 29 JAN 1821
|
||||
2 PLAC Gladsax, Kristianstad Län, Sweden
|
||||
1 FAMC @F0@
|
||||
1 CHAN
|
||||
2 DATE 21 DEC 2007
|
||||
3 TIME 01:35:26
|
||||
0 @I12@ INDI
|
||||
1 NAME Herman Julius /Nielsen/
|
||||
2 GIVN Herman Julius
|
||||
2 SURN Nielsen
|
||||
1 SEX M
|
||||
1 BIRT
|
||||
2 TYPE Birth of Herman Julius Nielsen
|
||||
2 DATE 31 AUG 1889
|
||||
2 PLAC Rønne, Bornholm, Denmark
|
||||
1 DEAT
|
||||
2 TYPE Death of Herman Julius Nielsen
|
||||
2 DATE 1945
|
||||
1 FAMS @F5@
|
||||
1 CHAN
|
||||
2 DATE 21 DEC 2007
|
||||
3 TIME 01:35:26
|
||||
0 @I13@ INDI
|
||||
1 NAME Evelyn /Michaels/
|
||||
2 GIVN Evelyn
|
||||
2 SURN Michaels
|
||||
1 SEX F
|
||||
1 BIRT
|
||||
2 TYPE Birth of Evelyn Michaels
|
||||
2 DATE ABT 1897
|
||||
1 FAMS @F7@
|
||||
1 CHAN
|
||||
2 DATE 21 DEC 2007
|
||||
3 TIME 01:35:26
|
||||
0 @I14@ INDI
|
||||
1 NAME Marjorie Lee /Smith/
|
||||
2 GIVN Marjorie Lee
|
||||
2 SURN Smith
|
||||
1 SEX F
|
||||
1 BIRT
|
||||
2 TYPE Birth of Marjorie Lee Smith
|
||||
2 DATE 4 NOV 1934
|
||||
2 PLAC Reno, Washoe Co., NV
|
||||
1 FAMC @F6@
|
||||
1 CHAN
|
||||
2 DATE 21 DEC 2007
|
||||
3 TIME 01:35:26
|
||||
0 @I15@ INDI
|
||||
1 NAME Gus /Smith/
|
||||
2 GIVN Gus
|
||||
2 SURN Smith
|
||||
1 SEX M
|
||||
1 BIRT
|
||||
2 TYPE Birth of Gus Smith
|
||||
2 DATE 11 SEP 1897
|
||||
2 PLAC Rønne, Bornholm, Denmark
|
||||
1 DEAT
|
||||
2 TYPE Death of Gus Smith
|
||||
2 DATE 21 OCT 1963
|
||||
2 PLAC San Francisco, San Francisco Co., CA
|
||||
1 FAMC @F3@
|
||||
1 FAMS @F7@
|
||||
1 CHAN
|
||||
2 DATE 21 DEC 2007
|
||||
3 TIME 01:35:26
|
||||
0 @I16@ INDI
|
||||
1 NAME Jennifer /Anderson/
|
||||
2 GIVN Jennifer
|
||||
2 SURN Anderson
|
||||
1 SEX F
|
||||
1 BIRT
|
||||
2 TYPE Birth of Jennifer Anderson
|
||||
2 DATE 5 NOV 1907
|
||||
2 PLAC Rønne, Bornholm, Denmark
|
||||
1 DEAT
|
||||
2 TYPE Death of Jennifer Anderson
|
||||
2 DATE 29 MAY 1985
|
||||
2 PLAC San Francisco, San Francisco Co., CA
|
||||
1 FAMS @F14@
|
||||
1 CHAN
|
||||
2 DATE 21 DEC 2007
|
||||
3 TIME 01:35:26
|
||||
0 @I17@ INDI
|
||||
1 NAME Lillie Harriet /Jones/
|
||||
2 GIVN Lillie Harriet
|
||||
2 SURN Jones
|
||||
1 SEX F
|
||||
1 BIRT
|
||||
2 TYPE Birth of Lillie Harriet Jones
|
||||
2 DATE 2 MAY 1910
|
||||
2 PLAC Rønne, Bornholm, Denmark
|
||||
1 DEAT
|
||||
2 TYPE Death of Lillie Harriet Jones
|
||||
2 DATE 26 JUN 1990
|
||||
1 FAMS @F9@
|
||||
1 CHAN
|
||||
2 DATE 21 DEC 2007
|
||||
3 TIME 01:35:26
|
||||
0 @I18@ INDI
|
||||
1 NAME John Hjalmar /Smith/
|
||||
2 GIVN John Hjalmar
|
||||
2 SURN Smith
|
||||
1 SEX M
|
||||
1 BIRT
|
||||
2 TYPE Birth of John Hjalmar Smith
|
||||
2 DATE 30 JAN 1932
|
||||
2 PLAC San Francisco, San Francisco Co., CA
|
||||
1 FAMC @F6@
|
||||
1 FAMS @F12@
|
||||
1 CHAN
|
||||
2 DATE 21 DEC 2007
|
||||
3 TIME 01:35:26
|
||||
0 @I19@ INDI
|
||||
1 NAME Eric Lloyd /Smith/
|
||||
2 GIVN Eric Lloyd
|
||||
2 SURN Smith
|
||||
1 SEX M
|
||||
1 BIRT
|
||||
2 TYPE Birth of Eric Lloyd Smith
|
||||
2 DATE 28 AUG 1963
|
||||
2 PLAC San Francisco, San Francisco Co., CA
|
||||
1 ADOP Y
|
||||
2 FAMC @F8@
|
||||
3 ADOP BOTH
|
||||
1 FAMC @F8@
|
||||
1 FAMS @F10@
|
||||
1 CHAN
|
||||
2 DATE 21 DEC 2007
|
||||
3 TIME 01:35:26
|
||||
0 @I2@ INDI
|
||||
1 NAME Amber Marie /Smith/
|
||||
2 GIVN Amber Marie
|
||||
2 SURN Smith
|
||||
1 SEX F
|
||||
1 BIRT
|
||||
2 TYPE Birth of Amber Marie Smith
|
||||
2 DATE 12 APR 1998
|
||||
2 PLAC Hayward, Alameda Co., CA
|
||||
1 CHR
|
||||
2 TYPE Christening of Amber Marie Smith
|
||||
2 DATE 26 APR 1998
|
||||
2 PLAC Community Presbyterian Church, Danville, CA
|
||||
1 FAMC @F13@
|
||||
1 CHAN
|
||||
2 DATE 21 DEC 2007
|
||||
3 TIME 01:35:26
|
||||
0 @I20@ INDI
|
||||
1 NAME Carl Emil /Smith/
|
||||
2 GIVN Carl Emil
|
||||
2 SURN Smith
|
||||
1 SEX M
|
||||
1 BIRT
|
||||
2 TYPE Birth of Carl Emil Smith
|
||||
2 DATE 20 DEC 1899
|
||||
2 PLAC Rønne, Bornholm, Denmark
|
||||
1 DEAT
|
||||
2 TYPE Death of Carl Emil Smith
|
||||
2 DATE 28 JAN 1959
|
||||
2 PLAC Reno, Washoe Co., NV
|
||||
2 CAUS Bad breath
|
||||
1 FAMC @F3@
|
||||
1 CHAN
|
||||
2 DATE 21 DEC 2007
|
||||
3 TIME 01:35:26
|
||||
0 @I21@ INDI
|
||||
1 NAME Hjalmar /Smith/
|
||||
2 GIVN Hjalmar
|
||||
2 SURN Smith
|
||||
1 SEX M
|
||||
1 BIRT
|
||||
2 TYPE Birth of Hjalmar Smith
|
||||
2 DATE 31 JAN 1893
|
||||
2 PLAC Rønne, Bornholm, Denmark
|
||||
1 DEAT
|
||||
2 TYPE Death of Hjalmar Smith
|
||||
2 DATE 25 SEP 1894
|
||||
2 PLAC Rønne, Bornholm, Denmark
|
||||
1 FAMC @F3@
|
||||
1 CHAN
|
||||
2 DATE 21 DEC 2007
|
||||
3 TIME 01:35:26
|
||||
0 @I22@ INDI
|
||||
1 NAME Martin /Smith/
|
||||
2 GIVN Martin
|
||||
2 SURN Smith
|
||||
1 SEX M
|
||||
1 BIRT
|
||||
2 TYPE Birth of Martin Smith
|
||||
2 DATE 19 NOV 1830
|
||||
2 PLAC Gladsax, Kristianstad Län, Sweden
|
||||
1 DEAT
|
||||
2 TYPE Death of Martin Smith
|
||||
2 DATE BET 1899 AND 1905
|
||||
2 PLAC Sweden
|
||||
1 BAPM
|
||||
2 TYPE Baptism of Martin Smith
|
||||
2 DATE 23 NOV 1830
|
||||
2 PLAC Gladsax, Kristianstad Län, Sweden
|
||||
1 FAMC @F0@
|
||||
1 FAMS @F2@
|
||||
1 NOTE @N0002@
|
||||
1 CHAN
|
||||
2 DATE 21 DEC 2007
|
||||
3 TIME 01:35:26
|
||||
0 @I23@ INDI
|
||||
1 NAME Astrid Shermanna Augusta /Smith/
|
||||
2 GIVN Astrid Shermanna Augusta
|
||||
2 SURN Smith
|
||||
1 SEX F
|
||||
1 BIRT
|
||||
2 TYPE Birth of Astrid Shermanna Augusta Smith
|
||||
2 DATE 31 JAN 1889
|
||||
2 PLAC Rønne, Bornholm, Denmark
|
||||
1 DEAT
|
||||
2 TYPE Death of Astrid Shermanna Augusta Smith
|
||||
2 DATE 21 DEC 1963
|
||||
2 PLAC San Francisco, San Francisco Co., CA
|
||||
1 FAMC @F3@
|
||||
1 FAMS @F5@
|
||||
1 CHAN
|
||||
2 DATE 21 DEC 2007
|
||||
3 TIME 01:35:26
|
||||
0 @I24@ INDI
|
||||
1 NAME Gustaf /Smith/ Sr.
|
||||
2 GIVN Gustaf
|
||||
2 SURN Smith
|
||||
2 NSFX Sr.
|
||||
1 SEX M
|
||||
1 BIRT
|
||||
2 TYPE Birth of Gustaf Smith, Sr.
|
||||
2 DATE 28 NOV 1862
|
||||
2 PLAC Grostorp, Kristianstad Län, Sweden
|
||||
1 DEAT
|
||||
2 TYPE Death of Gustaf Smith, Sr.
|
||||
2 DATE BEF 23 JUL 1930
|
||||
2 PLAC Sparks, Washoe Co., NV
|
||||
1 EVEN
|
||||
2 TYPE Immi
|
||||
2 DATE 21 MAY 1908
|
||||
2 PLAC Copenhagen, Denmark
|
||||
1 CHR
|
||||
2 TYPE Christening of Gustaf Smith, Sr.
|
||||
2 DATE 7 DEC 1862
|
||||
2 PLAC Gladsax, Kristianstad Län, Sweden
|
||||
1 FAMC @F2@
|
||||
1 FAMS @F3@
|
||||
1 CHAN
|
||||
2 DATE 21 DEC 2007
|
||||
3 TIME 01:35:26
|
||||
0 @I25@ INDI
|
||||
1 NAME Marta /Ericsdotter/
|
||||
2 GIVN Marta
|
||||
2 SURN Ericsdotter
|
||||
1 SEX F
|
||||
1 BIRT
|
||||
2 TYPE Birth of Marta Ericsdotter
|
||||
2 DATE ABT 1775
|
||||
2 PLAC Sweden
|
||||
1 FAMS @F1@
|
||||
1 CHAN
|
||||
2 DATE 21 DEC 2007
|
||||
3 TIME 01:35:26
|
||||
0 @I26@ INDI
|
||||
1 NAME Kirsti Marie /Smith/
|
||||
2 GIVN Kirsti Marie
|
||||
2 SURN Smith
|
||||
1 SEX F
|
||||
1 BIRT
|
||||
2 TYPE Birth of Kirsti Marie Smith
|
||||
2 DATE 15 DEC 1886
|
||||
2 PLAC Rønne, Bornholm, Denmark
|
||||
1 DEAT
|
||||
2 TYPE Death of Kirsti Marie Smith
|
||||
2 DATE 18 JUL 1966
|
||||
2 PLAC San Francisco, San Francisco Co., CA
|
||||
1 FAMC @F3@
|
||||
1 FAMS @F4@
|
||||
1 CHAN
|
||||
2 DATE 21 DEC 2007
|
||||
3 TIME 01:35:26
|
||||
0 @I27@ INDI
|
||||
1 NAME Ingeman /Smith/
|
||||
2 GIVN Ingeman
|
||||
2 SURN Smith
|
||||
1 SEX M
|
||||
1 BIRT
|
||||
2 TYPE Birth of Ingeman Smith
|
||||
2 DATE ABT 1770
|
||||
2 PLAC Sweden
|
||||
1 FAMS @F1@
|
||||
1 CHAN
|
||||
2 DATE 21 DEC 2007
|
||||
3 TIME 01:35:26
|
||||
0 @I28@ INDI
|
||||
1 NAME Anna /Streiffert/
|
||||
2 GIVN Anna
|
||||
2 SURN Streiffert
|
||||
1 SEX F
|
||||
1 BIRT
|
||||
2 TYPE Birth of Anna Streiffert
|
||||
2 DATE 23 SEP 1860
|
||||
2 PLAC Hoya/Jona/Hoia, Sweden
|
||||
1 DEAT
|
||||
2 TYPE Death of Anna Streiffert
|
||||
2 DATE 2 FEB 1927
|
||||
2 PLAC Rønne, Bornholm, Denmark
|
||||
1 FAMS @F11@
|
||||
1 CHAN
|
||||
2 DATE 21 DEC 2007
|
||||
3 TIME 01:35:26
|
||||
0 @I29@ INDI
|
||||
1 NAME Craig Peter /Smith/
|
||||
2 GIVN Craig Peter
|
||||
2 SURN Smith
|
||||
1 SEX M
|
||||
1 BIRT
|
||||
2 TYPE Birth of Craig Peter Smith
|
||||
2 DATE AFT 1966
|
||||
2 PLAC San Francisco, San Francisco Co., CA
|
||||
1 CENS
|
||||
2 TYPE Census of Craig Peter Smith
|
||||
2 NOTE @N0000@
|
||||
1 FAMC @F8@
|
||||
1 CHAN
|
||||
2 DATE 21 DEC 2007
|
||||
3 TIME 01:35:26
|
||||
0 @I3@ INDI
|
||||
1 NAME Magnes /Smith/
|
||||
2 GIVN Magnes
|
||||
2 SURN Smith
|
||||
1 SEX M
|
||||
1 BIRT
|
||||
2 TYPE Birth of Magnes Smith
|
||||
2 DATE 6 OCT 1858
|
||||
2 PLAC Simrishamn, Kristianstad Län, Sweden
|
||||
1 DEAT
|
||||
2 TYPE Death of Magnes Smith
|
||||
2 DATE 20 FEB 1910
|
||||
2 PLAC Rønne, Bornholm, Denmark
|
||||
1 FAMC @F2@
|
||||
1 FAMS @F11@
|
||||
1 CHAN
|
||||
2 DATE 21 DEC 2007
|
||||
3 TIME 01:35:26
|
||||
0 @I30@ INDI
|
||||
1 NAME Janice Ann /Adams/
|
||||
2 GIVN Janice Ann
|
||||
2 SURN Adams
|
||||
1 SEX F
|
||||
1 BIRT
|
||||
2 TYPE Birth of Janice Ann Adams
|
||||
2 DATE 26 AUG 1965
|
||||
2 PLAC Fremont, Alameda Co., CA
|
||||
1 OCCU Retail Manager
|
||||
1 _DEG
|
||||
2 TYPE Business Management
|
||||
2 DATE 1988
|
||||
1 FAMS @F13@
|
||||
1 CHAN
|
||||
2 DATE 21 DEC 2007
|
||||
3 TIME 01:35:26
|
||||
0 @I31@ INDI
|
||||
1 NAME Marjorie /Ohman/
|
||||
2 GIVN Marjorie
|
||||
2 SURN Ohman
|
||||
1 SEX F
|
||||
1 BIRT
|
||||
2 TYPE Birth of Marjorie Ohman
|
||||
2 DATE 3 JUN 1903
|
||||
2 PLAC Denver, Denver Co., CO
|
||||
1 DEAT
|
||||
2 TYPE Death of Marjorie Ohman
|
||||
2 DATE 22 JUN 1980
|
||||
2 PLAC Reno, Washoe Co., NV
|
||||
1 FAMS @F6@
|
||||
1 CHAN
|
||||
2 DATE 21 DEC 2007
|
||||
3 TIME 01:35:26
|
||||
0 @I32@ INDI
|
||||
1 NAME Darcy /Horne/
|
||||
2 GIVN Darcy
|
||||
2 SURN Horne
|
||||
1 SEX F
|
||||
1 BIRT
|
||||
2 TYPE Birth of Darcy Horne
|
||||
2 DATE 2 JUL 1966
|
||||
2 PLAC Sacramento, Sacramento Co., CA
|
||||
1 FAMS @F10@
|
||||
1 CHAN
|
||||
2 DATE 21 DEC 2007
|
||||
3 TIME 01:35:26
|
||||
0 @I33@ INDI
|
||||
1 NAME Lloyd /Smith/
|
||||
2 GIVN Lloyd
|
||||
2 SURN Smith
|
||||
1 SEX M
|
||||
1 BIRT
|
||||
2 TYPE Birth of Lloyd Smith
|
||||
2 DATE 13 MAR 1935
|
||||
2 PLAC San Francisco, San Francisco Co., CA
|
||||
1 FAMC @F9@
|
||||
1 FAMS @F8@
|
||||
1 CHAN
|
||||
2 DATE 21 DEC 2007
|
||||
3 TIME 01:35:26
|
||||
0 @I34@ INDI
|
||||
1 NAME Alice Paula /Perkins/
|
||||
2 GIVN Alice Paula
|
||||
2 SURN Perkins
|
||||
1 SEX F
|
||||
1 BIRT
|
||||
2 TYPE Birth of Alice Paula Perkins
|
||||
2 DATE 22 NOV 1933
|
||||
2 PLAC Sparks, Washoe Co., NV
|
||||
1 FAMS @F12@
|
||||
1 CHAN
|
||||
2 DATE 21 DEC 2007
|
||||
3 TIME 01:35:26
|
||||
0 @I35@ INDI
|
||||
1 NAME Lars Peter /Smith/
|
||||
2 GIVN Lars Peter
|
||||
2 SURN Smith
|
||||
1 SEX M
|
||||
1 BIRT
|
||||
2 TYPE Birth of Lars Peter Smith
|
||||
2 DATE 16 SEP 1991
|
||||
2 PLAC Santa Rosa, Sonoma Co., CA
|
||||
1 ADOP Y
|
||||
2 FAMC @F10@
|
||||
3 ADOP BOTH
|
||||
1 FAMC @F10@
|
||||
1 CHAN
|
||||
2 DATE 21 DEC 2007
|
||||
3 TIME 01:35:26
|
||||
0 @I36@ INDI
|
||||
1 NAME Elna /Jefferson/
|
||||
2 GIVN Elna
|
||||
2 SURN Jefferson
|
||||
1 SEX F
|
||||
1 BIRT
|
||||
2 TYPE Birth of Elna Jefferson
|
||||
2 DATE 14 SEP 1800
|
||||
2 PLAC Gladsax, Kristianstad Län, Sweden
|
||||
1 DEAT
|
||||
2 TYPE Death of Elna Jefferson
|
||||
2 PLAC Sweden
|
||||
1 CHR
|
||||
2 TYPE Christening of Elna Jefferson
|
||||
2 DATE 16 SEP 1800
|
||||
2 PLAC Gladsax, Kristianstad Län, Sweden
|
||||
1 FAMS @F0@
|
||||
1 CHAN
|
||||
2 DATE 21 DEC 2007
|
||||
3 TIME 01:35:26
|
||||
0 @I37@ INDI
|
||||
1 NAME Edwin Michael /Smith/
|
||||
2 GIVN Edwin Michael
|
||||
2 SURN Smith
|
||||
2 SOUR @S1@
|
||||
1 SEX M
|
||||
1 BIRT
|
||||
2 TYPE Birth of Edwin Michael Smith
|
||||
2 DATE 24 MAY 1961
|
||||
2 PLAC San Jose, Santa Clara Co., CA
|
||||
2 SOUR @S3@
|
||||
1 OCCU Software Engineer
|
||||
2 AGE 23
|
||||
2 NOTE @N0001@
|
||||
1 EDUC Education of Edwin Michael Smith
|
||||
2 DATE BET 1979 AND 1984
|
||||
2 PLAC UC Berkeley
|
||||
1 _DEG
|
||||
2 TYPE B.S.E.E.
|
||||
2 DATE 1984
|
||||
1 FAMC @F12@
|
||||
1 FAMS @F13@
|
||||
1 CHAN
|
||||
2 DATE 21 DEC 2007
|
||||
3 TIME 01:35:26
|
||||
0 @I38@ INDI
|
||||
1 NAME Kerstina /Hansdotter/
|
||||
2 GIVN Kerstina
|
||||
2 SURN Hansdotter
|
||||
1 SEX F
|
||||
1 BIRT
|
||||
2 TYPE Birth of Kerstina Hansdotter
|
||||
2 DATE 29 NOV 1832
|
||||
2 PLAC Smestorp, Kristianstad Län, Sweden
|
||||
1 DEAT
|
||||
2 TYPE Death of Kerstina Hansdotter
|
||||
2 DATE BEF 1908
|
||||
2 PLAC Sweden
|
||||
1 FAMS @F2@
|
||||
1 CHAN
|
||||
2 DATE 21 DEC 2007
|
||||
3 TIME 01:35:26
|
||||
0 @I39@ INDI
|
||||
1 NAME Martin /Smith/
|
||||
2 GIVN Martin
|
||||
2 SURN Smith
|
||||
1 SEX M
|
||||
1 BIRT
|
||||
2 TYPE Birth of Martin Smith
|
||||
2 DATE BET 1794 AND 1796
|
||||
2 PLAC Tommarp, Kristianstad Län, Sweden
|
||||
1 DEAT
|
||||
2 TYPE Death of Martin Smith
|
||||
2 PLAC Sweden
|
||||
1 FAMC @F1@
|
||||
1 FAMS @F0@
|
||||
1 CHAN
|
||||
2 DATE 21 DEC 2007
|
||||
3 TIME 01:35:26
|
||||
0 @I4@ INDI
|
||||
1 NAME Ingeman /Smith/
|
||||
2 GIVN Ingeman
|
||||
2 SURN Smith
|
||||
1 SEX M
|
||||
1 BIRT
|
||||
2 TYPE Birth of Ingeman Smith
|
||||
2 DATE 29 JAN 1826
|
||||
2 PLAC Gladsax, Kristianstad Län, Sweden
|
||||
1 FAMC @F0@
|
||||
1 CHAN
|
||||
2 DATE 21 DEC 2007
|
||||
3 TIME 01:35:26
|
||||
0 @I40@ INDI
|
||||
1 NAME Marjorie Alice /Smith/
|
||||
2 GIVN Marjorie Alice
|
||||
2 SURN Smith
|
||||
1 SEX F
|
||||
1 BIRT
|
||||
2 TYPE Birth of Marjorie Alice Smith
|
||||
2 DATE 5 FEB 1960
|
||||
2 PLAC San Jose, Santa Clara Co., CA
|
||||
1 FAMC @F12@
|
||||
1 CHAN
|
||||
2 DATE 21 DEC 2007
|
||||
3 TIME 01:35:26
|
||||
0 @I41@ INDI
|
||||
1 NAME Janis Elaine /Green/
|
||||
2 GIVN Janis Elaine
|
||||
2 SURN Green
|
||||
1 SEX F
|
||||
1 BIRT
|
||||
2 TYPE Birth of Janis Elaine Green
|
||||
2 DATE 2 DEC 1935
|
||||
1 FAMS @F8@
|
||||
1 CHAN
|
||||
2 DATE 21 DEC 2007
|
||||
3 TIME 01:35:26
|
||||
0 @I5@ INDI
|
||||
1 NAME Mason Michael /Smith/
|
||||
2 GIVN Mason Michael
|
||||
2 SURN Smith
|
||||
1 SEX M
|
||||
1 BIRT
|
||||
2 TYPE Birth of Mason Michael Smith
|
||||
2 DATE 26 JUN 1996
|
||||
2 PLAC Hayward, Alameda Co., CA
|
||||
1 CHR
|
||||
2 TYPE Christening of Mason Michael Smith
|
||||
2 DATE 10 JUL 1996
|
||||
2 PLAC Community Presbyterian Church, Danville, CA
|
||||
1 FAMC @F13@
|
||||
1 CHAN
|
||||
2 DATE 21 DEC 2007
|
||||
3 TIME 01:35:26
|
||||
0 @I6@ INDI
|
||||
1 NAME Edwin /Willard/
|
||||
2 GIVN Edwin
|
||||
2 SURN Willard
|
||||
1 SEX M
|
||||
1 BIRT
|
||||
2 TYPE Birth of Edwin Willard
|
||||
2 DATE ABT 1886
|
||||
1 FAMS @F4@
|
||||
1 CHAN
|
||||
2 DATE 21 DEC 2007
|
||||
3 TIME 01:35:26
|
||||
0 @I7@ INDI
|
||||
1 NAME Ingar /Smith/
|
||||
2 GIVN Ingar
|
||||
2 SURN Smith
|
||||
1 SEX F
|
||||
1 BIRT
|
||||
2 TYPE Birth of Ingar Smith
|
||||
2 DATE AFT 1823
|
||||
2 PLAC Gladsax, Kristianstad Län, Sweden
|
||||
1 FAMC @F0@
|
||||
1 CHAN
|
||||
2 DATE 21 DEC 2007
|
||||
3 TIME 01:35:26
|
||||
0 @I8@ INDI
|
||||
1 NAME Hjalmar /Smith/
|
||||
2 GIVN Hjalmar
|
||||
2 SURN Smith
|
||||
1 SEX M
|
||||
1 BIRT
|
||||
2 TYPE Birth of Hjalmar Smith
|
||||
2 DATE 7 APR 1895
|
||||
2 PLAC Rønne, Bornholm, Denmark
|
||||
1 DEAT
|
||||
2 TYPE Death of Hjalmar Smith
|
||||
2 DATE 26 JUN 1975
|
||||
2 PLAC Reno, Washoe Co., NV
|
||||
1 BAPM
|
||||
2 TYPE Baptism of Hjalmar Smith
|
||||
2 DATE 3 JUN 1895
|
||||
2 PLAC Rønne Bornholm, Denmark
|
||||
1 EVEN
|
||||
2 TYPE Immi
|
||||
2 DATE 14 NOV 1912
|
||||
2 PLAC Copenhagen, Denmark
|
||||
1 FAMC @F3@
|
||||
1 FAMS @F6@
|
||||
1 NOTE @N0003@
|
||||
1 CHAN
|
||||
2 DATE 21 DEC 2007
|
||||
3 TIME 01:35:26
|
||||
0 @I9@ INDI
|
||||
1 NAME Emil /Smith/
|
||||
2 GIVN Emil
|
||||
2 SURN Smith
|
||||
1 SEX M
|
||||
1 BIRT
|
||||
2 TYPE Birth of Emil Smith
|
||||
2 DATE 27 SEP 1860
|
||||
2 PLAC Simrishamn, Kristianstad Län, Sweden
|
||||
1 FAMC @F2@
|
||||
1 CHAN
|
||||
2 DATE 21 DEC 2007
|
||||
3 TIME 01:35:26
|
||||
0 @F0@ FAM
|
||||
1 HUSB @I39@
|
||||
1 WIFE @I36@
|
||||
1 MARR
|
||||
2 TYPE Marriage of Martin Smith and Elna Jefferson
|
||||
2 DATE ABT 1816
|
||||
2 PLAC Gladsax, Kristianstad Län, Sweden
|
||||
1 CHIL @I11@
|
||||
1 CHIL @I7@
|
||||
1 CHIL @I4@
|
||||
1 CHIL @I22@
|
||||
1 CHAN
|
||||
2 DATE 21 DEC 2007
|
||||
3 TIME 01:35:26
|
||||
0 @F1@ FAM
|
||||
1 HUSB @I27@
|
||||
1 WIFE @I25@
|
||||
1 MARR
|
||||
2 TYPE Marriage of Ingeman Smith and Marta Ericsdotter
|
||||
2 DATE ABT 1790
|
||||
2 PLAC Sweden
|
||||
1 CHIL @I39@
|
||||
1 CHAN
|
||||
2 DATE 21 DEC 2007
|
||||
3 TIME 01:35:26
|
||||
0 @F10@ FAM
|
||||
1 HUSB @I19@
|
||||
1 WIFE @I32@
|
||||
1 MARR
|
||||
2 TYPE Marriage of Eric Lloyd Smith and Darcy Horne
|
||||
2 DATE 12 JUL 1986
|
||||
2 PLAC Woodland, Yolo Co., CA
|
||||
1 CHIL @I35@
|
||||
1 CHAN
|
||||
2 DATE 21 DEC 2007
|
||||
3 TIME 01:35:26
|
||||
0 @F11@ FAM
|
||||
1 HUSB @I3@
|
||||
1 WIFE @I28@
|
||||
1 MARR
|
||||
2 TYPE Marriage of Magnes Smith and Anna Streiffert
|
||||
2 DATE 24 AUG 1884
|
||||
2 PLAC Rønne, Bornholm, Denmark
|
||||
1 CHAN
|
||||
2 DATE 21 DEC 2007
|
||||
3 TIME 01:35:26
|
||||
0 @F12@ FAM
|
||||
1 HUSB @I18@
|
||||
1 WIFE @I34@
|
||||
1 MARR
|
||||
2 TYPE Marriage of John Hjalmar Smith and Alice Paula Perkins
|
||||
2 DATE 4 JUN 1954
|
||||
2 PLAC Sparks, Washoe Co., NV
|
||||
2 SOUR @S0@
|
||||
1 CHIL @I40@
|
||||
1 CHIL @I37@
|
||||
1 CHAN
|
||||
2 DATE 21 DEC 2007
|
||||
3 TIME 01:35:26
|
||||
0 @F13@ FAM
|
||||
1 HUSB @I37@
|
||||
1 WIFE @I30@
|
||||
1 MARR
|
||||
2 TYPE Marriage of Edwin Michael Smith and Janice Ann Adams
|
||||
2 DATE 27 MAY 1995
|
||||
2 PLAC San Ramon, Conta Costa Co., CA
|
||||
1 ENGA
|
||||
2 TYPE Engagement of Edwin Michael Smith and Janice Ann Adams
|
||||
2 DATE 5 OCT 1994
|
||||
2 PLAC San Francisco, San Francisco Co., CA
|
||||
1 CHIL @I5@
|
||||
1 CHIL @I2@
|
||||
1 CHAN
|
||||
2 DATE 21 DEC 2007
|
||||
3 TIME 01:35:26
|
||||
0 @F14@ FAM
|
||||
1 HUSB @I10@
|
||||
1 WIFE @I16@
|
||||
1 CHAN
|
||||
2 DATE 21 DEC 2007
|
||||
3 TIME 01:35:26
|
||||
0 @F2@ FAM
|
||||
1 HUSB @I22@
|
||||
1 WIFE @I38@
|
||||
1 MARR
|
||||
2 TYPE Marriage of Martin Smith and Kerstina Hansdotter
|
||||
2 DATE ABT 1856
|
||||
1 CHIL @I3@
|
||||
1 CHIL @I9@
|
||||
1 CHIL @I24@
|
||||
1 CHAN
|
||||
2 DATE 21 DEC 2007
|
||||
3 TIME 01:35:26
|
||||
0 @F3@ FAM
|
||||
1 HUSB @I24@
|
||||
1 WIFE @I0@
|
||||
1 MARR
|
||||
2 TYPE Marriage of Gustaf Smith, Sr. and Anna Hansdotter
|
||||
2 DATE 27 NOV 1885
|
||||
2 PLAC Rønne, Bornholm, Denmark
|
||||
1 CHIL @I26@
|
||||
1 CHIL @I23@
|
||||
1 CHIL @I21@
|
||||
1 CHIL @I8@
|
||||
1 CHIL @I15@
|
||||
1 CHIL @I20@
|
||||
1 CHIL @I10@
|
||||
1 CHAN
|
||||
2 DATE 21 DEC 2007
|
||||
3 TIME 01:35:26
|
||||
0 @F4@ FAM
|
||||
1 HUSB @I6@
|
||||
1 WIFE @I26@
|
||||
1 MARR
|
||||
2 TYPE Marriage of Edwin Willard and Kirsti Marie Smith
|
||||
2 DATE ABT 1910
|
||||
1 CHAN
|
||||
2 DATE 21 DEC 2007
|
||||
3 TIME 01:35:26
|
||||
0 @F5@ FAM
|
||||
1 HUSB @I12@
|
||||
1 WIFE @I23@
|
||||
1 MARR
|
||||
2 TYPE Marriage of Herman Julius Nielsen and Astrid Shermanna Augusta Smith
|
||||
2 DATE 30 NOV 1912
|
||||
2 PLAC Rønne, Bornholm, Denmark
|
||||
1 CHAN
|
||||
2 DATE 21 DEC 2007
|
||||
3 TIME 01:35:26
|
||||
0 @F6@ FAM
|
||||
1 HUSB @I8@
|
||||
1 WIFE @I31@
|
||||
1 MARR
|
||||
2 TYPE Marriage of Hjalmar Smith and Marjorie Ohman
|
||||
2 DATE 31 OCT 1927
|
||||
2 PLAC Reno, Washoe Co., NV
|
||||
1 CHIL @I18@
|
||||
1 CHIL @I14@
|
||||
1 CHAN
|
||||
2 DATE 21 DEC 2007
|
||||
3 TIME 01:35:26
|
||||
0 @F7@ FAM
|
||||
1 HUSB @I15@
|
||||
1 WIFE @I13@
|
||||
1 MARR
|
||||
2 TYPE Marriage of Gus Smith and Evelyn Michaels
|
||||
2 DATE ABT 1920
|
||||
1 CHAN
|
||||
2 DATE 21 DEC 2007
|
||||
3 TIME 01:35:26
|
||||
0 @F8@ FAM
|
||||
1 HUSB @I33@
|
||||
1 WIFE @I41@
|
||||
1 MARR
|
||||
2 TYPE Marriage of Lloyd Smith and Janis Elaine Green
|
||||
2 DATE 10 AUG 1958
|
||||
2 PLAC San Francisco, San Francisco Co., CA
|
||||
1 CHIL @I19@
|
||||
1 CHIL @I1@
|
||||
1 CHIL @I29@
|
||||
1 CHAN
|
||||
2 DATE 21 DEC 2007
|
||||
3 TIME 01:35:26
|
||||
0 @F9@ FAM
|
||||
1 HUSB @I10@
|
||||
1 WIFE @I17@
|
||||
1 CHIL @I33@
|
||||
1 CHAN
|
||||
2 DATE 21 DEC 2007
|
||||
3 TIME 01:35:26
|
||||
0 @S0@ SOUR
|
||||
1 TITL Marriage Certificae
|
||||
1 REPO @R0002@
|
||||
2 CALN what-321-ever
|
||||
3 MEDI Photo
|
||||
1 NOTE @N0004@
|
||||
1 CHAN
|
||||
2 DATE 21 DEC 2007
|
||||
3 TIME 01:35:26
|
||||
0 @S1@ SOUR
|
||||
1 TITL Birth Certificate
|
||||
1 CHAN
|
||||
2 DATE 21 DEC 2007
|
||||
3 TIME 01:35:26
|
||||
0 @S2@ SOUR
|
||||
1 TITL Birth Records
|
||||
1 CHAN
|
||||
2 DATE 21 DEC 2007
|
||||
3 TIME 01:35:26
|
||||
0 @S3@ SOUR
|
||||
1 TITL Birth, Death and Marriage Records
|
||||
1 REPO @R0002@
|
||||
2 CALN CA-123-LL-456_Num/ber
|
||||
3 MEDI Film
|
||||
1 NOTE @N0005@
|
||||
1 CHAN
|
||||
2 DATE 21 DEC 2007
|
||||
3 TIME 01:35:26
|
||||
0 @R0002@ REPO
|
||||
1 NAME New York Public Library
|
||||
1 ADDR 5th Ave at 42 street
|
||||
2 ADR1 5th Ave at 42 street
|
||||
2 CITY New York
|
||||
2 STAE New York
|
||||
2 POST 11111
|
||||
2 CTRY USA
|
||||
0 @R0003@ REPO
|
||||
1 NAME Aunt Martha's Attic
|
||||
1 ADDR 123 Main St
|
||||
2 ADR1 123 Main St
|
||||
2 CITY Someville
|
||||
2 STAE ST
|
||||
2 CTRY USA
|
||||
1 WWW http://library.gramps-project.org
|
||||
1 NOTE @N0006@
|
||||
0 @N0000@ NOTE Witness name: John Doe
|
||||
1 CONT Witness comment: This is a simple test.
|
||||
0 @N0001@ NOTE Witness name: No Name
|
||||
0 @N0002@ NOTE BIOGRAPHY
|
||||
1 CONT Martin was listed as being a Husman, (owning a house as opposed to a far
|
||||
1 CONC m) in the house records of Gladsax.
|
||||
0 @N0003@ NOTE BIOGRAPHY
|
||||
1 CONT
|
||||
1 CONT Hjalmar sailed from Copenhagen, Denmark on the OSCAR II, 14 November 191
|
||||
1 CONC 2 arriving in New York 27 November 1912. He was seventeen years old. O
|
||||
1 CONC n the ship passenger list his trade was listed as a Blacksmith. He cam
|
||||
1 CONC e to Reno, Nevada and lived with his sister Marie for a time before sett
|
||||
1 CONC ling in Sparks. He worked for Southern Pacific Railroad as a car inspect
|
||||
1 CONC or for a time, then went to work for Standard Oil
|
||||
1 CONT Company. He enlisted in the army at Sparks 7 December 1917 and served a
|
||||
1 CONC s a Corporal in the Medical Corp until his discharge 12 August 1919 at t
|
||||
1 CONC he Presidio in San Francisco, California. Both he and Marjorie are burie
|
||||
1 CONC d in the Masonic Memorial Gardens Mausoleum in Reno, he the 30th June 19
|
||||
1 CONC 75, and she the 25th of June 1980.
|
||||
0 @N0004@ NOTE But Aunt Martha still keeps the original!
|
||||
0 @N0005@ NOTE The repository reference from the source is important
|
||||
0 @N0006@ NOTE Some note on the repo
|
||||
0 TRLR
|
BIN
gramps/plugins/test/Tstdata/sample.gramps
Normal file
BIN
gramps/plugins/test/Tstdata/sample.gramps
Normal file
Binary file not shown.
42
gramps/plugins/test/Tstdata/test_FTM_CONC.ged
Normal file
42
gramps/plugins/test/Tstdata/test_FTM_CONC.ged
Normal file
@ -0,0 +1,42 @@
|
||||
0 HEAD
|
||||
1 SOUR FTM
|
||||
2 VERS Family Tree Maker (22.2.5)
|
||||
2 NAME Family Tree Maker for Mac OS X
|
||||
2 CORP Ancestry.com
|
||||
3 ADDR 360 W 4800 N
|
||||
4 CONT Provo, UT 84604
|
||||
3 PHON (801) 705-7000
|
||||
1 DEST GED55
|
||||
1 DATE 16 DEC 2015
|
||||
1 CHAR UTF-8
|
||||
1 FILE test_FTM_CONC.ged
|
||||
1 SUBM @SUBM@
|
||||
1 GEDC
|
||||
2 VERS 5.5
|
||||
2 FORM LINEAGE-LINKED
|
||||
0 @SUBM@ SUBM
|
||||
1 NAME Paul Culley
|
||||
0 @I278@ INDI
|
||||
1 NAME Andrew /May/
|
||||
2 NOTE The FTM way to do a CONC line with space at end -->
|
||||
3 CONC <--
|
||||
2 NOTE The GEDCOM spec way to do CONC line, with space at beginning -->
|
||||
3 CONC <--
|
||||
2 NOTE Be nice if we supported FTM way to do CONC so
|
||||
3 CONC users would not have to spell check and edit their whole
|
||||
3 CONC database for these kind of errors.
|
||||
2 SOUR @S29@
|
||||
3 PAGE Year: 1850; Census Place: District 14, Cape Girardeau, Missouri; Roll:
|
||||
4 CONC M432_394; Page: 435B; Image: 248
|
||||
0 @S29@ SOUR
|
||||
1 AUTH Ancestry.com
|
||||
1 TITL 1850 United States Federal Census
|
||||
1 PUBL Name: Ancestry.com Operations, Inc.; Location: Provo, UT, USA; Date:
|
||||
2 CONC 2009;
|
||||
1 REPO @R1@
|
||||
0 @R1@ REPO
|
||||
1 NAME Ancestry.com
|
||||
1 ADDR I'm sure someone knows
|
||||
1 EMAIL ancestry@ancestry.com
|
||||
1 PHON 1-234-567-8901
|
||||
0 TRLR
|
BIN
gramps/plugins/test/Tstdata/test_FTM_CONC.gramps
Normal file
BIN
gramps/plugins/test/Tstdata/test_FTM_CONC.gramps
Normal file
Binary file not shown.
5
gramps/plugins/test/Tstdata/vcard.difs
Normal file
5
gramps/plugins/test/Tstdata/vcard.difs
Normal file
@ -0,0 +1,5 @@
|
||||
Mismatch on file: vcard.vcf
|
||||
Person: I0019
|
||||
Diff on: Person, primary_name, surname list #2, primary
|
||||
<class 'bool'>: True
|
||||
<class 'bool'>: False
|
BIN
gramps/plugins/test/Tstdata/vcard.gramps
Normal file
BIN
gramps/plugins/test/Tstdata/vcard.gramps
Normal file
Binary file not shown.
291
gramps/plugins/test/Tstdata/vcard.vcf
Normal file
291
gramps/plugins/test/Tstdata/vcard.vcf
Normal file
@ -0,0 +1,291 @@
|
||||
BEGIN:VCARD
|
||||
VERSION:3.0
|
||||
FN:Lastname
|
||||
N:Lastname;;;;
|
||||
ADR:box 1;bis;Broadway 11; New York; New York; NY1234; USA
|
||||
END:VCARD
|
||||
BEGIN:VCARD
|
||||
VERSION:3.0
|
||||
FN:Lastname
|
||||
N:Lastname;;;;
|
||||
ADR:
|
||||
END:VCARD
|
||||
BEGIN:VCARD
|
||||
VERSION:3.0
|
||||
FN:Lastname
|
||||
N:Lastname;;;;
|
||||
ADR:;;Broadway 11; New York
|
||||
END:VCARD
|
||||
BEGIN:VCARD
|
||||
VERSION:3.0
|
||||
FN:Lastname
|
||||
N:Lastname;;;;
|
||||
ADR:;;Broadway 11; New\,York; ;; USA; Earth
|
||||
END:VCARD
|
||||
BEGIN:VCARD
|
||||
VERSION:3.0
|
||||
FN:Lastname
|
||||
N:Lastname;;;;
|
||||
BDAY:2001-09-28T09:23:47Z
|
||||
END:VCARD
|
||||
BEGIN:VCARD
|
||||
VERSION:3.0
|
||||
FN:Lastname
|
||||
N:Lastname;;;;
|
||||
BDAY:
|
||||
END:VCARD
|
||||
BEGIN:VCARD
|
||||
VERSION:3.0
|
||||
FN:Lastname
|
||||
N:Lastname;;;;
|
||||
BDAY:20010928
|
||||
END:VCARD
|
||||
BEGIN:VCARD
|
||||
VERSION:3.0
|
||||
FN:Lastname
|
||||
N:Lastname;;;;
|
||||
BDAY:2001-0928
|
||||
END:VCARD
|
||||
BEGIN:VCARD
|
||||
VERSION:3.0
|
||||
FN:Lastname
|
||||
N:Lastname;;;;
|
||||
BDAY:2001-09-28
|
||||
END:VCARD
|
||||
BEGIN:VCARD
|
||||
VERSION:3.0
|
||||
FN:Lastname
|
||||
N:Lastname;;;;
|
||||
EMAIL:me@example.org
|
||||
END:VCARD
|
||||
BEGIN:VCARD
|
||||
VERSION:3.0
|
||||
FN:A B Lastname
|
||||
N:Lastname;B;A;;
|
||||
END:VCARD
|
||||
BEGIN:VCARD
|
||||
VERSION:3.0
|
||||
FN:B Lastname
|
||||
N:Lastname;A;B;;
|
||||
END:VCARD
|
||||
BEGIN:VCARD
|
||||
VERSION:3.0
|
||||
FN:A Lastname
|
||||
N:Lastname;A;B;;
|
||||
END:VCARD
|
||||
BEGIN:VCARD
|
||||
VERSION:3.0
|
||||
FN:A B C Lastname
|
||||
N:Lastname;B;A C;;
|
||||
END:VCARD
|
||||
BEGIN:VCARD
|
||||
VERSION:3.0
|
||||
FN:A Lastname
|
||||
N:Lastname;A;;;
|
||||
END:VCARD
|
||||
BEGIN:VCARD
|
||||
VERSION:3.0
|
||||
FN:
|
||||
N:Lastname;;A;;
|
||||
END:VCARD
|
||||
BEGIN:VCARD
|
||||
VERSION:3.0
|
||||
FN:A Lastname
|
||||
N:Lastname;;A;;
|
||||
END:VCARD
|
||||
BEGIN:VCARD
|
||||
VERSION:3.0
|
||||
FN:A B Lastname
|
||||
N:Lastname;A;B;;
|
||||
END:VCARD
|
||||
BEGIN:VCARD
|
||||
VERSION:3.0
|
||||
FN:Lastname B A
|
||||
N:Lastname;A;B;;
|
||||
FN:Lastname A B
|
||||
END:VCARD
|
||||
BEGIN:VCARD
|
||||
VERSION:3.0
|
||||
FN:Lastname
|
||||
N:
|
||||
END:VCARD
|
||||
BEGIN:VCARD
|
||||
VERSION:3.0
|
||||
FN:Lastname Lastname2
|
||||
N:Lastname,Lastname2;;;;
|
||||
END:VCARD
|
||||
BEGIN:VCARD
|
||||
VERSION:3.0
|
||||
FN:Lastname
|
||||
N:Lastname
|
||||
END:VCARD
|
||||
BEGIN:VCARD
|
||||
VERSION:3.0
|
||||
FN:Lastname
|
||||
N:Lastname;;;;
|
||||
N:Another;;;;
|
||||
END:VCARD
|
||||
BEGIN:VCARD
|
||||
VERSION:3.0
|
||||
FN:van d'Alembert
|
||||
N:van d'Alembert;;;;
|
||||
END:VCARD
|
||||
BEGIN:VCARD
|
||||
VERSION:3.0
|
||||
FN:Mr. Firstname Middlename Lastname Jr.
|
||||
N:Lastname;Firstname;Middlename;Mr.;Jr.
|
||||
END:VCARD
|
||||
BEGIN:VCARD
|
||||
VERSION:3.0
|
||||
FN:Firstname Lastname
|
||||
N:Lastname; Firstname;
|
||||
END:VCARD
|
||||
BEGIN:VCARD
|
||||
VERSION:3.0
|
||||
FN:Lastname
|
||||
N:Lastname;;;;
|
||||
NICKNAME:
|
||||
END:VCARD
|
||||
BEGIN:VCARD
|
||||
VERSION:3.0
|
||||
FN:Lastname
|
||||
N:Lastname;;;;
|
||||
NICKNAME:A,B\,C
|
||||
END:VCARD
|
||||
BEGIN:VCARD
|
||||
VERSION:3.0
|
||||
FN:Lastname
|
||||
N:Lastname;;;;
|
||||
NICKNAME:Ton
|
||||
END:VCARD
|
||||
BEGIN:VCARD
|
||||
VERSION:3.0
|
||||
FN:Lastname
|
||||
N:Lastname;;;;
|
||||
ROLE:
|
||||
END:VCARD
|
||||
BEGIN:VCARD
|
||||
VERSION:3.0
|
||||
FN:Lastname
|
||||
N:Lastname;;;;
|
||||
ROLE:scarecrow
|
||||
END:VCARD
|
||||
BEGIN:VCARD
|
||||
VERSION:3.0
|
||||
FN:Lastname
|
||||
N:Lastname;;;;
|
||||
TEL:
|
||||
END:VCARD
|
||||
BEGIN:VCARD
|
||||
VERSION:3.0
|
||||
FN:Lastname
|
||||
N:Lastname;;;;
|
||||
TEL:01234-56789
|
||||
END:VCARD
|
||||
BEGIN:VCARD
|
||||
VERSION:3.0
|
||||
FN:Lastname
|
||||
N:Lastname;;;;
|
||||
URL:
|
||||
END:VCARD
|
||||
BEGIN:VCARD
|
||||
VERSION:3.0
|
||||
FN:Lastname
|
||||
N:Lastname;;;;
|
||||
URL:http://www.example.com
|
||||
END:VCARD
|
||||
BEGIN:VCARD
|
||||
VERSION:3.0
|
||||
FN:Lastname
|
||||
N:Lastname;;;;
|
||||
END:VCARD
|
||||
BEGIN:VCARD
|
||||
VERSION:3.0
|
||||
FN:Lastname
|
||||
N:Lastname;;;;
|
||||
BDAY:unforgettable
|
||||
END:VCARD
|
||||
BEGIN:VCARD
|
||||
VERSION:3.0
|
||||
FN:Lastname
|
||||
N:Lastname;;;;
|
||||
BDAY:20010229
|
||||
END:VCARD
|
||||
BEGIN:VCARD
|
||||
VERSION:3.0
|
||||
FN:Lastname
|
||||
N:Lastname;;;;
|
||||
END:VCARD
|
||||
BEGIN:VCARD
|
||||
VERSION:3.0
|
||||
FN:Another
|
||||
N:Another;;;;
|
||||
END:VCARD
|
||||
BEGIN:VCARD
|
||||
VERSION:3.0
|
||||
FN:Lastname
|
||||
N:Lastname;;;;
|
||||
TEL:01234-
|
||||
56789
|
||||
END:VCARD
|
||||
BEGIN:VCARD
|
||||
VERSION:3.0
|
||||
FN:Lastname
|
||||
N:Lastname;;;;
|
||||
TEL:01234-56789
|
||||
END:VCARD
|
||||
BEGIN:VCARD
|
||||
VERSION:3.0
|
||||
FN:Lastname
|
||||
N:Lastname;;;;
|
||||
END:VCARD
|
||||
BEGIN:VCARD
|
||||
VERSION:3.0
|
||||
FN:Lastname
|
||||
N:Lastname;;;;
|
||||
TEL:01234-56789
|
||||
END:VCARD
|
||||
BEGIN:VCARD
|
||||
VERSION:3.0
|
||||
FN:Lastname
|
||||
N:Lastname;;;;
|
||||
:email@example.com
|
||||
END:VCARD
|
||||
BEGIN:VCARD
|
||||
group.VERSION:3.0
|
||||
FN:Lastname
|
||||
group.N:Lastname;;;;
|
||||
END:VCARD
|
||||
BEGIN:VCARD
|
||||
VERSION:3.0
|
||||
FN:Lastname
|
||||
N:Lastname;;;;
|
||||
TEL;TYPE="FANCY:TYPE":01234-56789
|
||||
END:VCARD
|
||||
BEGIN:VCARD
|
||||
VERSION:3.0
|
||||
FN:Lastname
|
||||
N:Lastname;;;;
|
||||
BEGIN:VCARD
|
||||
VERSION:3.0
|
||||
FN:Another
|
||||
N:Another;;;;
|
||||
END:VCARD
|
||||
BEGIN:VCARD
|
||||
VERSION:3.0
|
||||
FN:Lastname
|
||||
N:Lastname;;;;
|
||||
tel:01234-56789
|
||||
END:VCARD
|
||||
BEGIN:VCARD
|
||||
VERSION:3.0
|
||||
FN:Lastname
|
||||
N:Lastname;;;;
|
||||
TEL;01234-56789
|
||||
END:VCARD
|
||||
BEGIN:VCARD
|
||||
VERSION:3.0
|
||||
FN:Lastname
|
||||
N:Lastname;;;;
|
||||
TELEPHONE:01234-56789
|
||||
END:VCARD
|
233
gramps/plugins/test/test_imports.py
Normal file
233
gramps/plugins/test/test_imports.py
Normal file
@ -0,0 +1,233 @@
|
||||
#! /usr/bin/env python3
|
||||
#
|
||||
# Gramps - a GTK+/GNOME based genealogy program
|
||||
#
|
||||
# Copyright (c) 2016 Gramps Development Team
|
||||
#
|
||||
# This program is free software; you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License as published by
|
||||
# the Free Software Foundation; either version 2 of the License, or
|
||||
# (at your option) any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
# GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program; if not, write to the Free Software
|
||||
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
|
||||
#
|
||||
|
||||
import unittest
|
||||
import os
|
||||
import sys
|
||||
import re
|
||||
import time
|
||||
|
||||
|
||||
from gramps.gen.merge.diff import diff_dbs, import_as_dict
|
||||
from gramps.gen.simple import SimpleAccess
|
||||
from gramps.gen.utils.id import set_det_id
|
||||
from gramps.cli import user
|
||||
from gramps.gen.const import TEMP_DIR
|
||||
|
||||
# the following defines where to find the test import and result files
|
||||
TEST_DIR = os.path.abspath(os.path.join(os.path.dirname(__file__), "Tstdata"))
|
||||
|
||||
# ------------------------------------------------------------------
|
||||
# Local Functions
|
||||
# ------------------------------------------------------------------
|
||||
|
||||
|
||||
def todate(t):
|
||||
return time.strftime("%Y-%m-%d %H:%M:%S", time.localtime(t))
|
||||
|
||||
|
||||
class CompleteCheck(unittest.TestCase):
|
||||
"""The test class cases will be dynamically created at import time from
|
||||
files to be tested. The following defs are used by the test cases"""
|
||||
|
||||
def prepare_result(self, diffs, added, missing):
|
||||
deltas = False
|
||||
if diffs:
|
||||
for diff in diffs:
|
||||
obj_type, item1, item2 = diff
|
||||
msg = self.report_diff(obj_type, item1.to_struct(),
|
||||
item2.to_struct())
|
||||
if msg != "":
|
||||
if hasattr(item1, "gramps_id"):
|
||||
self.msg += "%s: %s\n" % (obj_type, item1.gramps_id)
|
||||
else:
|
||||
self.msg += "%s: %s\n" % (obj_type, item1.get_name())
|
||||
self.msg += msg
|
||||
deltas = True
|
||||
if missing:
|
||||
deltas = True
|
||||
sa = SimpleAccess(self.database1)
|
||||
for pair in missing:
|
||||
obj_type, item = pair
|
||||
self.msg += "Missing %s: %s\n" % (obj_type, sa.describe(item))
|
||||
if added:
|
||||
deltas = True
|
||||
sa = SimpleAccess(self.database2)
|
||||
for pair in added:
|
||||
obj_type, item = pair
|
||||
self.msg += "Added %s: %s\n" % (obj_type, sa.describe(item))
|
||||
return deltas
|
||||
|
||||
def format_struct_path(self, path):
|
||||
retval = ""
|
||||
parts = path.split(".")
|
||||
for part in parts:
|
||||
if retval:
|
||||
retval += ", "
|
||||
if "[" in part and "]" in part:
|
||||
part, index = re.match("(.*)\[(\d*)\]", part).groups()
|
||||
retval += "%s #%s" % (part.replace("_", " "), int(index) + 1)
|
||||
else:
|
||||
retval += part
|
||||
return retval
|
||||
|
||||
def report_details(self, path, diff1, diff2):
|
||||
if isinstance(diff1, bool):
|
||||
desc1 = repr(diff1)
|
||||
else:
|
||||
desc1 = str(diff1) if diff1 else ""
|
||||
if isinstance(diff2, bool):
|
||||
desc2 = repr(diff2)
|
||||
else:
|
||||
desc2 = str(diff2) if diff2 else ""
|
||||
d1t = type(diff1)
|
||||
d2t = type(diff2)
|
||||
# the xml exporter edits the data base by stripping spaces, so
|
||||
# we have to ignore these differeces
|
||||
if d1t == str: diff1 = diff1.strip()
|
||||
if d2t == str: diff2 = diff2.strip()
|
||||
d1l = len(diff1) if d1t == str else ""
|
||||
d2l = len(diff2) if d2t == str else ""
|
||||
# 'change' date is not significant for comparison
|
||||
if path.endswith(".change"):
|
||||
return ""
|
||||
# the xml exporter edits the data base by converting media path
|
||||
# to unix '/' conventions, so we have to ignore these differences
|
||||
if path == "Media.path":
|
||||
diff1 = diff1.replace('\\', '/')
|
||||
if diff1 != diff2:
|
||||
msg = " Diff on: %s\n %s%s: %s\n %s%s: %s\n" % \
|
||||
(self.format_struct_path(path), d1t, d1l, desc1,
|
||||
d2t, d2l, desc2)
|
||||
return msg
|
||||
return ""
|
||||
|
||||
def report_diff(self, path, struct1, struct2):
|
||||
"""
|
||||
Compare two struct objects and report differences.
|
||||
"""
|
||||
msg = ""
|
||||
if struct1 == struct2:
|
||||
return ""
|
||||
elif (isinstance(struct1, (list, tuple)) or
|
||||
isinstance(struct2, (list, tuple))):
|
||||
len1 = len(struct1) if isinstance(struct1, (list, tuple)) else 0
|
||||
len2 = len(struct2) if isinstance(struct2, (list, tuple)) else 0
|
||||
for pos in range(max(len1, len2)):
|
||||
value1 = struct1[pos] if pos < len1 else None
|
||||
value2 = struct2[pos] if pos < len2 else None
|
||||
msg += self.report_diff(path + ("[%d]" % pos), value1, value2)
|
||||
elif isinstance(struct1, dict) or isinstance(struct2, dict):
|
||||
keys = struct1.keys() if isinstance(struct1, dict)\
|
||||
else struct2.keys()
|
||||
for key in keys:
|
||||
value1 = struct1[key] if struct1 is not None else None
|
||||
value2 = struct2[key] if struct2 is not None else None
|
||||
if key == "dict": # a raw dict, not a struct
|
||||
msg += self.report_details(path, value1, value2)
|
||||
else:
|
||||
msg += self.report_diff(path + "." + key, value1, value2)
|
||||
else:
|
||||
msg += self.report_details(path, struct1, struct2)
|
||||
return msg
|
||||
|
||||
|
||||
# The following make_test_function creates a test function (a method,
|
||||
# to be precise) that compares the import file with the expected
|
||||
# result '.gramps' file.
|
||||
def make_test_function(tstfile, fname):
|
||||
def test(self):
|
||||
self._user = user.User(quiet=True)
|
||||
f1 = os.path.join(TEST_DIR, tstfile)
|
||||
f2 = os.path.join(TEST_DIR, (fname + ".gramps"))
|
||||
fres = os.path.join(TEMP_DIR, (fname + ".difs"))
|
||||
set_det_id(True)
|
||||
self.database1 = import_as_dict(f1, self._user)
|
||||
set_det_id(True)
|
||||
self.database2 = import_as_dict(f2, self._user)
|
||||
self.assertIsNotNone(self.database1,
|
||||
"Unable to import file: %s" % f1)
|
||||
self.assertIsNotNone(self.database2,
|
||||
"Unable to import expected result file: %s" % f2)
|
||||
if self.database2 is None or self.database1 is None:
|
||||
return
|
||||
diffs, added, missing = diff_dbs(self.database1,
|
||||
self.database2, self._user)
|
||||
self.msg = "Mismatch on file: %s\n" % tstfile
|
||||
deltas = self.prepare_result(diffs, added, missing)
|
||||
# We save a copy of any issues in the users Gramps TEMP_DIR in a file
|
||||
# with a '.difs' extension, as well as usual unittest report
|
||||
if deltas:
|
||||
hres = open(fres, mode='w', encoding='utf-8',
|
||||
errors='replace')
|
||||
hres.write(self.msg)
|
||||
hres.close()
|
||||
# let's see if we have any allowed exception file
|
||||
fdif = os.path.join(TEST_DIR, (fname + ".difs"))
|
||||
try:
|
||||
hdif = open(fdif)
|
||||
msg = hdif.read()
|
||||
hdif.close()
|
||||
except:
|
||||
msg = ""
|
||||
# if exception file matches exactly, we are done.
|
||||
if self.msg != msg:
|
||||
self.fail(self.msg)
|
||||
return test
|
||||
|
||||
# let's see if we have a single file to run, example;
|
||||
# "python test_import.py -i sample.ged"
|
||||
# This only works for files in normal test directory, so don't add a path
|
||||
tstfile = ""
|
||||
if __name__ == "__main__":
|
||||
for i, option in enumerate(sys.argv):
|
||||
if option == '-i':
|
||||
tstfile = sys.argv[i+1]
|
||||
del sys.argv[i]
|
||||
del sys.argv[i]
|
||||
# The following code dynamically creates the methods for each test file.
|
||||
# The methods are inserted at load time into the 'CompleteCheck' class
|
||||
# via the modules' globals, taking advantage that they are a dict.
|
||||
if tstfile: # single file mode
|
||||
(fname, ext) = os.path.splitext(os.path.basename(tstfile))
|
||||
test_func = make_test_function(tstfile, fname)
|
||||
clname = 'Import_{0}'.format(tstfile)
|
||||
globals()[clname] = type(clname,
|
||||
(CompleteCheck,),
|
||||
{"testit": test_func})
|
||||
# {"test:" + fname: test_func})
|
||||
else:
|
||||
for tstfile in os.listdir(TEST_DIR):
|
||||
print(tstfile)
|
||||
|
||||
(fname, ext) = os.path.splitext(os.path.basename(tstfile))
|
||||
if ext == ".gramps" or ext == ".difs":
|
||||
continue
|
||||
test_func = make_test_function(tstfile, fname)
|
||||
clname = 'Import_{0}'.format(tstfile)
|
||||
globals()[clname] = type(clname,
|
||||
(CompleteCheck,),
|
||||
{"testit": test_func})
|
||||
# {"test:" + fname: test_func})
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
unittest.main()
|
Loading…
Reference in New Issue
Block a user