Improve test coverage in the Gedcom importer

This commit is contained in:
prculley 2016-10-24 11:39:16 -05:00
parent 19201eed67
commit 0fb91b860f
8 changed files with 1308 additions and 909 deletions

View File

@ -10,14 +10,20 @@
3 FAX (801) 705-7001 3 FAX (801) 705-7001
3 EMAIL help@ancestry.com 3 EMAIL help@ancestry.com
3 WWW http://www.ancestry.com 3 WWW http://www.ancestry.com
2 DATA FTM Source data
3 COPR Copyright 2999
2 DATE 1 JAN 1111
1 DEST GED55 1 DEST GED55
1 DATE 01 MAR 2016 1 DATE 01 MAR 2016
1 CHAR UTF-8 1 CHAR UTF-8
1 CHAR UTF-8
2 VERS 1.1
1 FILE D:\Family Tree Maker\imp_FTM_LINK.ged 1 FILE D:\Family Tree Maker\imp_FTM_LINK.ged
1 SUBM @SUBM@ 1 SUBM @SUBM@
2 NAME The Tester
1 GEDC 1 GEDC
2 VERS 5.5 2 VERS 5.5
2 FORM LINEAGE-LINKED 2 FORM Lineage-Linked
0 @SUBM@ SUBM 0 @SUBM@ SUBM
1 NAME The Subm /Tester/ 1 NAME The Subm /Tester/
1 ADDR 123 Main St., Winslow, PA, 12345 1 ADDR 123 Main St., Winslow, PA, 12345

View File

@ -3,7 +3,7 @@
"http://gramps-project.org/xml/1.7.1/grampsxml.dtd"> "http://gramps-project.org/xml/1.7.1/grampsxml.dtd">
<database xmlns="http://gramps-project.org/xml/1.7.1/"> <database xmlns="http://gramps-project.org/xml/1.7.1/">
<header> <header>
<created date="2016-08-29" version="5.0.0-alpha1"/> <created date="2016-10-23" version="5.0.0-alpha1"/>
<researcher> <researcher>
<resname>The Subm /Tester/</resname> <resname>The Subm /Tester/</resname>
<resaddr>123 Main St.</resaddr> <resaddr>123 Main St.</resaddr>
@ -14,28 +14,31 @@
<resemail>mrstester@gmail.com</resemail> <resemail>mrstester@gmail.com</resemail>
</researcher> </researcher>
</header> </header>
<tags>
<tag handle="_0000000400000004" change="1" name="Imported" color="#000000000000" priority="0"/>
</tags>
<events> <events>
<event handle="_0000000700000007" change="1472500308" id="E0000"> <event handle="_0000000800000008" change="1" id="E0000">
<type>Birth</type> <type>Birth</type>
<dateval val="1954-12-29"/> <dateval val="1954-12-29"/>
<place hlink="_0000000800000008"/> <place hlink="_0000000900000009"/>
<attribute type="Phone" value="440-871-3400"/> <attribute type="Phone" value="440-871-3400"/>
<attribute type="Phone" value="800-871-3400"/> <attribute type="Phone" value="800-871-3400"/>
<attribute type="EMAIL" value="thetester@gmail.com"/> <attribute type="EMAIL" value="thetester@gmail.com"/>
<attribute type="FAX" value="440-123-4567"/> <attribute type="FAX" value="440-123-4567"/>
<attribute type="WWW" value="http://thetester.com"/> <attribute type="WWW" value="http://thetester.com"/>
</event> </event>
<event handle="_0000000c0000000c" change="1472500308" id="E0001"> <event handle="_0000000d0000000d" change="1" id="E0001">
<type>Residence</type> <type>Residence</type>
<dateval val="1954-12-30"/> <dateval val="1954-12-30"/>
<place hlink="_0000000e0000000e"/> <place hlink="_0000000f0000000f"/>
<attribute type="Phone" value="440-871-3401"/> <attribute type="Phone" value="440-871-3401"/>
<attribute type="EMAIL" value="mrstester@gmail.com"/> <attribute type="EMAIL" value="mrstester@gmail.com"/>
<attribute type="FAX" value="440-321-4568"/> <attribute type="FAX" value="440-321-4568"/>
<attribute type="WWW" value="http://mrstester.com"/> <attribute type="WWW" value="http://mrstester.com"/>
<noteref hlink="_0000000d0000000d"/> <noteref hlink="_0000000e0000000e"/>
</event> </event>
<event handle="_0000001100000011" change="1472500308" id="E0002"> <event handle="_0000001200000012" change="1" id="E0002">
<type>Residence</type> <type>Residence</type>
<dateval val="1964"/> <dateval val="1964"/>
<attribute type="Phone" value="440-871-3402"/> <attribute type="Phone" value="440-871-3402"/>
@ -45,22 +48,23 @@
</event> </event>
</events> </events>
<people> <people>
<person handle="_0000000600000006" change="1472500308" id="I0000"> <person handle="_0000000700000007" change="1" id="I0000">
<gender>U</gender> <gender>U</gender>
<name type="Birth Name"> <name type="Birth Name">
<first>The</first> <first>The</first>
<surname>Tester</surname> <surname>Tester</surname>
</name> </name>
<eventref hlink="_0000000700000007" role="Primary"/> <eventref hlink="_0000000800000008" role="Primary"/>
<citationref hlink="_0000000900000009"/> <citationref hlink="_0000000a0000000a"/>
<tagref hlink="_0000000400000004"/>
</person> </person>
<person handle="_0000000a0000000a" change="1472500308" id="I0001"> <person handle="_0000000b0000000b" change="1" id="I0001">
<gender>U</gender> <gender>U</gender>
<name type="Birth Name"> <name type="Birth Name">
<first>Mrs</first> <first>Mrs</first>
<surname>Tester</surname> <surname>Tester</surname>
</name> </name>
<eventref hlink="_0000000c0000000c" role="Primary"/> <eventref hlink="_0000000d0000000d" role="Primary"/>
<address> <address>
<street>123 Main St.</street> <street>123 Main St.</street>
<city>Winslow</city> <city>Winslow</city>
@ -72,85 +76,91 @@
<url href="mrstester@gmail.com" type="E-mail"/> <url href="mrstester@gmail.com" type="E-mail"/>
<url href="440-321-4568" type="FAX"/> <url href="440-321-4568" type="FAX"/>
<url href="http://mrstester.com" type="Web Home"/> <url href="http://mrstester.com" type="Web Home"/>
<noteref hlink="_0000000b0000000b"/> <noteref hlink="_0000000c0000000c"/>
<citationref hlink="_0000000f0000000f"/> <citationref hlink="_0000001000000010"/>
<tagref hlink="_0000000400000004"/>
</person> </person>
<person handle="_0000001000000010" change="1472500308" id="I0002"> <person handle="_0000001100000011" change="1" id="I0002">
<gender>U</gender> <gender>U</gender>
<name type="Birth Name"> <name type="Birth Name">
<first>Tom</first> <first>Tom</first>
<surname>Tester</surname> <surname>Tester</surname>
</name> </name>
<eventref hlink="_0000001100000011" role="Primary"/> <eventref hlink="_0000001200000012" role="Primary"/>
<citationref hlink="_0000001200000012"/> <citationref hlink="_0000001300000013"/>
<tagref hlink="_0000000400000004"/>
</person> </person>
</people> </people>
<citations> <citations>
<citation handle="_0000000900000009" change="1472500308" id="C0000"> <citation handle="_0000000a0000000a" change="1" id="C0000">
<confidence>2</confidence> <confidence>2</confidence>
<sourceref hlink="_0000000300000003"/> <sourceref hlink="_0000000300000003"/>
</citation> </citation>
<citation handle="_0000000f0000000f" change="1472500308" id="C0001"> <citation handle="_0000001000000010" change="1" id="C0001">
<confidence>2</confidence> <confidence>2</confidence>
<sourceref hlink="_0000000300000003"/> <sourceref hlink="_0000000300000003"/>
</citation> </citation>
<citation handle="_0000001200000012" change="1472500308" id="C0002"> <citation handle="_0000001300000013" change="1" id="C0002">
<confidence>2</confidence> <confidence>2</confidence>
<sourceref hlink="_0000000300000003"/> <sourceref hlink="_0000000300000003"/>
</citation> </citation>
</citations> </citations>
<sources> <sources>
<source handle="_0000000300000003" change="1472500308" id="S0000"> <source handle="_0000000300000003" change="1" id="S0000">
<stitle>Import from imp_FTM_LINK.ged</stitle> <stitle>Import from imp_FTM_LINK.ged</stitle>
<sauthor>The Tester</sauthor>
<srcattribute type="Approved system identification" value="FTM"/> <srcattribute type="Approved system identification" value="FTM"/>
<srcattribute type="Version number of software product" value="Family Tree Maker (22.0.0.1410)"/> <srcattribute type="Version number of software product" value="Family Tree Maker (22.0.0.1410)"/>
<srcattribute type="Name of software product" value="Family Tree Maker for Windows"/> <srcattribute type="Name of software product" value="Family Tree Maker for Windows"/>
<srcattribute type="Name of source data" value="FTM Source data"/>
<srcattribute type="Copyright of source data" value="Copyright 2999"/>
<srcattribute type="Generated By" value="Family Tree Maker for Windows Family Tree Maker (22.0.0.1410)"/> <srcattribute type="Generated By" value="Family Tree Maker for Windows Family Tree Maker (22.0.0.1410)"/>
<srcattribute type="Creation date of GEDCOM" value="2016-03-01"/> <srcattribute type="Creation date of GEDCOM" value="2016-03-01"/>
<srcattribute type="Character set and version" value="UTF-8 1.1"/>
<srcattribute type="GEDCOM version" value="5.5"/> <srcattribute type="GEDCOM version" value="5.5"/>
<srcattribute type="GEDCOM form" value="LINEAGE-LINKED"/> <srcattribute type="GEDCOM form" value="Lineage-Linked"/>
<reporef hlink="_0000000100000001" medium="Unknown"/> <reporef hlink="_0000000100000001" medium="Unknown"/>
<reporef hlink="_0000000400000004" medium="Unknown"/> <reporef hlink="_0000000500000005" medium="Unknown"/>
</source> </source>
<source handle="_0000001300000013" change="1472500308" id="S0006"> <source handle="_0000001400000014" change="1" id="S0006">
<stitle>Ohio Births, 1958-2002</stitle> <stitle>Ohio Births, 1958-2002</stitle>
<reporef hlink="_0000001400000014" medium="Book"/> <reporef hlink="_0000001500000015" medium="Book"/>
</source> </source>
</sources> </sources>
<places> <places>
<placeobj handle="_0000000800000008" change="1472500308" id="P0000" type="Street"> <placeobj handle="_0000000900000009" change="1" id="P0000" type="Street">
<ptitle>123 High St, Cleveland, Cuyahoga, Ohio, USA, 44140</ptitle> <ptitle>123 High St, Cleveland, Cuyahoga, Ohio, USA, 44140</ptitle>
<code>44140</code> <code>44140</code>
<pname value="123 High St"/> <pname value="123 High St"/>
<placeref hlink="_0000001a0000001a"/> <placeref hlink="_0000001b0000001b"/>
</placeobj> </placeobj>
<placeobj handle="_0000000e0000000e" change="1472500308" id="P0001" type="Address"> <placeobj handle="_0000000f0000000f" change="1" id="P0001" type="Address">
<ptitle>123 Main St., Winslow, PA, 12345</ptitle> <ptitle>123 Main St., Winslow, PA, 12345</ptitle>
<pname value="123 Main St., Winslow, PA, 12345"/> <pname value="123 Main St., Winslow, PA, 12345"/>
<location street="123 Main St." city="Winslow" state="PA" postal="12345"/> <location street="123 Main St." city="Winslow" state="PA" postal="12345"/>
</placeobj> </placeobj>
<placeobj handle="_0000001700000017" change="1472500308" id="P0002" type="Country"> <placeobj handle="_0000001800000018" change="1" id="P0002" type="Country">
<ptitle>USA</ptitle> <ptitle>USA</ptitle>
<pname value="USA"/> <pname value="USA"/>
</placeobj> </placeobj>
<placeobj handle="_0000001800000018" change="1472500308" id="P0003" type="State"> <placeobj handle="_0000001900000019" change="1" id="P0003" type="State">
<ptitle>Ohio, USA</ptitle> <ptitle>Ohio, USA</ptitle>
<pname value="Ohio"/> <pname value="Ohio"/>
<placeref hlink="_0000001700000017"/>
</placeobj>
<placeobj handle="_0000001900000019" change="1472500308" id="P0004" type="County">
<ptitle>Cuyahoga, Ohio, USA</ptitle>
<pname value="Cuyahoga"/>
<placeref hlink="_0000001800000018"/> <placeref hlink="_0000001800000018"/>
</placeobj> </placeobj>
<placeobj handle="_0000001a0000001a" change="1472500308" id="P0005" type="City"> <placeobj handle="_0000001a0000001a" change="1" id="P0004" type="County">
<ptitle>Cuyahoga, Ohio, USA</ptitle>
<pname value="Cuyahoga"/>
<placeref hlink="_0000001900000019"/>
</placeobj>
<placeobj handle="_0000001b0000001b" change="1" id="P0005" type="City">
<ptitle>Cleveland, Cuyahoga, Ohio, USA</ptitle> <ptitle>Cleveland, Cuyahoga, Ohio, USA</ptitle>
<pname value="Cleveland"/> <pname value="Cleveland"/>
<placeref hlink="_0000001900000019"/> <placeref hlink="_0000001a0000001a"/>
</placeobj> </placeobj>
</places> </places>
<repositories> <repositories>
<repository handle="_0000000100000001" change="1472500308" id="R0000"> <repository handle="_0000000100000001" change="1" id="R0000">
<rname>Business that produced the product: Ancestry.com</rname> <rname>Business that produced the product: Ancestry.com</rname>
<type>GEDCOM data</type> <type>GEDCOM data</type>
<address> <address>
@ -161,7 +171,7 @@
<url href="help@ancestry.com" type="E-mail"/> <url href="help@ancestry.com" type="E-mail"/>
<url href="http://www.ancestry.com" type="Web Home"/> <url href="http://www.ancestry.com" type="Web Home"/>
</repository> </repository>
<repository handle="_0000000400000004" change="1472500308" id="R0001"> <repository handle="_0000000500000005" change="1" id="R0001">
<rname>SUBM (Submitter): (@SUBM@) The Subm /Tester/</rname> <rname>SUBM (Submitter): (@SUBM@) The Subm /Tester/</rname>
<type>GEDCOM data</type> <type>GEDCOM data</type>
<address> <address>
@ -174,9 +184,9 @@
<url href="mrstester@gmail.com" type="E-mail"/> <url href="mrstester@gmail.com" type="E-mail"/>
<url href="440-321-4568" type="FAX"/> <url href="440-321-4568" type="FAX"/>
<url href="http://mrstester.com" type="Web Home"/> <url href="http://mrstester.com" type="Web Home"/>
<noteref hlink="_0000000500000005"/> <noteref hlink="_0000000600000006"/>
</repository> </repository>
<repository handle="_0000001400000014" change="1472500308" id="R0002"> <repository handle="_0000001500000015" change="1" id="R0002">
<rname>Testers Repository</rname> <rname>Testers Repository</rname>
<type>Library</type> <type>Library</type>
<address> <address>
@ -186,40 +196,45 @@
<url href="tester_repo@osf.com" type="E-mail"/> <url href="tester_repo@osf.com" type="E-mail"/>
<url href="987-654-3210" type="FAX"/> <url href="987-654-3210" type="FAX"/>
<url href="http://www.tester_repo.com" type="Web Home"/> <url href="http://www.tester_repo.com" type="Web Home"/>
<noteref hlink="_0000001500000015"/>
<noteref hlink="_0000001600000016"/> <noteref hlink="_0000001600000016"/>
<noteref hlink="_0000001700000017"/>
</repository> </repository>
</repositories> </repositories>
<notes> <notes>
<note handle="_0000000200000002" change="1472500308" id="N0000" type="GEDCOM import"> <note handle="_0000000200000002" change="1" id="N0000" type="GEDCOM import">
<text>Records not imported into HEAD (header): <text>Records not imported into HEAD (header):
Only one phone number supported Line 9: 3 PHON (800) 705-7000</text> Only one phone number supported Line 9: 3 PHON (800) 705-7000
Line ignored as not understood Line 15: 2 DATE 1111-01-01
GEDCOM FORM should be in uppercase Line 26: 2 FORM Lineage-Linked</text>
<style name="fontface" value="Monospace"> <style name="fontface" value="Monospace">
<range start="0" end="144"/> <range start="0" end="344"/>
</style> </style>
</note> </note>
<note handle="_0000000500000005" change="1472500308" id="N0001" type="GEDCOM import"> <note handle="_0000000600000006" change="1" id="N0001" type="GEDCOM import">
<text>Records not imported into SUBM (Submitter): (@SUBM@) The Subm /Tester/: <text>Records not imported into SUBM (Submitter): (@SUBM@) The Subm /Tester/:
Only one phone number supported Line 29: 1 PHON 800-871-3401</text> Only one phone number supported Line 35: 1 PHON 800-871-3401</text>
<style name="fontface" value="Monospace"> <style name="fontface" value="Monospace">
<range start="0" end="173"/> <range start="0" end="173"/>
</style> </style>
</note> </note>
<note handle="_0000000b0000000b" change="1472500308" id="N0002" type="Person Note"> <note handle="_0000000c0000000c" change="1" id="N0002" type="Person Note">
<text>Address with PHON,FAX,EMAIL,WWW. attached directly to person is not legal Gedcom, but allowed here.</text> <text>Address with PHON,FAX,EMAIL,WWW. attached directly to person is not legal Gedcom, but allowed here.</text>
<tagref hlink="_0000000400000004"/>
</note> </note>
<note handle="_0000000d0000000d" change="1472500308" id="N0003" type="Event Note"> <note handle="_0000000e0000000e" change="1" id="N0003" type="Event Note">
<text>Address as event is legal, with PHON,FAX,EMAIL,WWW</text> <text>Address as event is legal, with PHON,FAX,EMAIL,WWW</text>
<tagref hlink="_0000000400000004"/>
</note> </note>
<note handle="_0000001500000015" change="1472500308" id="N0004" type="Repository Note"> <note handle="_0000001600000016" change="1" id="N0004" type="Repository Note">
<text>The repository record</text> <text>The repository record</text>
<tagref hlink="_0000000400000004"/>
</note> </note>
<note handle="_0000001600000016" change="1472500308" id="N0005" type="GEDCOM import"> <note handle="_0000001700000017" change="1" id="N0005" type="GEDCOM import">
<text>Records not imported into REPO (repository) Gramps ID R0002: <text>Records not imported into REPO (repository) Gramps ID R0002:
Only one phone number supported Line 87: 1 PHON 800-765-4321</text> Only one phone number supported Line 93: 1 PHON 800-765-4321</text>
<style name="fontface" value="Monospace"> <style name="fontface" value="Monospace">
<range start="0" end="162"/> <range start="0" end="162"/>
</style> </style>

View File

@ -3,182 +3,190 @@
"http://gramps-project.org/xml/1.7.1/grampsxml.dtd"> "http://gramps-project.org/xml/1.7.1/grampsxml.dtd">
<database xmlns="http://gramps-project.org/xml/1.7.1/"> <database xmlns="http://gramps-project.org/xml/1.7.1/">
<header> <header>
<created date="2016-08-29" version="5.0.0-alpha1"/> <created date="2016-10-23" version="5.0.0-alpha1"/>
<researcher> <researcher>
<resname>John A. Tester</resname> <resname>John A. Tester</resname>
</researcher> </researcher>
</header> </header>
<tags>
<tag handle="_0000000500000005" change="1" name="Imported" color="#000000000000" priority="0"/>
</tags>
<events> <events>
<event handle="_0000000e0000000e" change="1472505121" id="E0000"> <event handle="_0000000f0000000f" change="1" id="E0000">
<type>TEST</type> <type>TEST</type>
<description>person</description> <description>person</description>
</event> </event>
<event handle="_0000000f0000000f" change="1472505121" id="E0001"> <event handle="_0000001000000010" change="1" id="E0001">
<type>Birth</type> <type>Birth</type>
<dateval val="1900-06-15"/> <dateval val="1900-06-15"/>
<place hlink="_0000001300000013"/> <place hlink="_0000001400000014"/>
<noteref hlink="_0000001000000010"/> <noteref hlink="_0000001100000011"/>
</event> </event>
<event handle="_0000001400000014" change="1472505121" id="E0002"> <event handle="_0000001500000015" change="1" id="E0002">
<type>Death</type> <type>Death</type>
<noteref hlink="_0000001500000015"/> <noteref hlink="_0000001600000016"/>
</event> </event>
<event handle="_0000001d0000001d" change="1472505121" id="E0003"> <event handle="_0000001e0000001e" change="1" id="E0003">
<type>Who knows OBJE REFN TYPE</type> <type>Who knows OBJE REFN TYPE</type>
<description>REFN</description> <description>REFN</description>
</event> </event>
<event handle="_0000002600000026" change="1472505121" id="E0004"> <event handle="_0000002700000027" change="1" id="E0004">
<type>Birth</type> <type>Birth</type>
<dateval val="1901-06-15"/> <dateval val="1901-06-15"/>
</event> </event>
<event handle="_0000002700000027" change="1472505121" id="E0005"> <event handle="_0000002800000028" change="1" id="E0005">
<type>Death</type> <type>Death</type>
<dateval val="1975-07-05"/> <dateval val="1975-07-05"/>
</event> </event>
<event handle="_0000002d0000002d" change="1472505121" id="E0006"> <event handle="_0000002e0000002e" change="1" id="E0006">
<type>Birth</type> <type>Birth</type>
<dateval val="1922-06-15"/> <dateval val="1922-06-15"/>
</event> </event>
<event handle="_0000002e0000002e" change="1472505121" id="E0007"> <event handle="_0000002f0000002f" change="1" id="E0007">
<type>Death</type> <type>Death</type>
<dateval val="1994-07-05"/> <dateval val="1994-07-05"/>
</event> </event>
<event handle="_0000003a0000003a" change="1472505122" id="E0008"> <event handle="_0000003b0000003b" change="1" id="E0008">
<type>TEST</type> <type>TEST</type>
<description>family</description> <description>family</description>
</event> </event>
</events> </events>
<people> <people>
<person handle="_0000000d0000000d" change="979250406" id="I0001"> <person handle="_0000000e0000000e" change="979250406" id="I0001">
<gender>M</gender> <gender>M</gender>
<name type="Birth Name"> <name type="Birth Name">
<first>Tom</first> <first>Tom</first>
<surname>Tester</surname> <surname>Tester</surname>
</name> </name>
<eventref hlink="_0000000e0000000e" role="Primary"/>
<eventref hlink="_0000000f0000000f" role="Primary"/> <eventref hlink="_0000000f0000000f" role="Primary"/>
<eventref hlink="_0000001400000014" role="Primary"/> <eventref hlink="_0000001000000010" role="Primary"/>
<eventref hlink="_0000001d0000001d" role="Primary"/> <eventref hlink="_0000001500000015" role="Primary"/>
<objref hlink="_0000001e0000001e"/> <eventref hlink="_0000001e0000001e" role="Primary"/>
<objref hlink="_0000001f0000001f"/>
<attribute type="RIN" value="123456 Person"/> <attribute type="RIN" value="123456 Person"/>
<attribute type="REFN" value="98765 for PERSON"/> <attribute type="REFN" value="98765 for PERSON"/>
<url href="http://homepages.rootsweb.com/~pmcbride/gedcom/55gctoc.htm" type="Web Home" description="GEDCOM 5.5 documentation web site"/> <url href="http://homepages.rootsweb.com/~pmcbride/gedcom/55gctoc.htm" type="Web Home" description="GEDCOM 5.5 documentation web site"/>
<parentin hlink="_0000001600000016"/> <parentin hlink="_0000001700000017"/>
<noteref hlink="_0000001700000017"/>
<noteref hlink="_0000001800000018"/> <noteref hlink="_0000001800000018"/>
<noteref hlink="_0000001900000019"/> <noteref hlink="_0000001900000019"/>
<noteref hlink="_0000001a0000001a"/> <noteref hlink="_0000001a0000001a"/>
<noteref hlink="_0000002000000020"/> <noteref hlink="_0000001b0000001b"/>
<citationref hlink="_0000001f0000001f"/> <noteref hlink="_0000002100000021"/>
<citationref hlink="_0000002000000020"/>
<tagref hlink="_0000000500000005"/>
</person> </person>
<person handle="_0000002500000025" change="1472505121" id="I0002"> <person handle="_0000002600000026" change="1" id="I0002">
<gender>F</gender> <gender>F</gender>
<name type="Birth Name"> <name type="Birth Name">
<first>Mrs</first> <first>Mrs</first>
<surname>Tester</surname> <surname>Tester</surname>
</name> </name>
<eventref hlink="_0000002600000026" role="Primary"/>
<eventref hlink="_0000002700000027" role="Primary"/> <eventref hlink="_0000002700000027" role="Primary"/>
<parentin hlink="_0000001600000016"/> <eventref hlink="_0000002800000028" role="Primary"/>
<noteref hlink="_0000002800000028"/> <parentin hlink="_0000001700000017"/>
<noteref hlink="_0000002a0000002a"/> <noteref hlink="_0000002900000029"/>
<citationref hlink="_0000002900000029"/> <noteref hlink="_0000002b0000002b"/>
<citationref hlink="_0000002a0000002a"/>
<tagref hlink="_0000000500000005"/>
</person> </person>
<person handle="_0000002b0000002b" change="1472505121" id="I0003"> <person handle="_0000002c0000002c" change="1" id="I0003">
<gender>M</gender> <gender>M</gender>
<name type="Birth Name"> <name type="Birth Name">
<first>Ed</first> <first>Ed</first>
<surname>Tester</surname> <surname>Tester</surname>
<nick>Eddie</nick> <nick>Eddie</nick>
<noteref hlink="_0000002c0000002c"/> <noteref hlink="_0000002d0000002d"/>
</name> </name>
<eventref hlink="_0000002d0000002d" role="Primary"/>
<eventref hlink="_0000002e0000002e" role="Primary"/> <eventref hlink="_0000002e0000002e" role="Primary"/>
<eventref hlink="_0000002f0000002f" role="Primary"/>
<lds_ord type="baptism"> <lds_ord type="baptism">
<dateval val="-005-05-05"/> <dateval val="-005-05-05"/>
<temple val="SLAKE"/> <temple val="SLAKE"/>
<place hlink="_0000002f0000002f"/> <place hlink="_0000003000000030"/>
<noteref hlink="_0000003000000030"/> <noteref hlink="_0000003100000031"/>
<noteref hlink="_0000003300000033"/> <noteref hlink="_0000003400000034"/>
<citationref hlink="_0000003200000032"/> <citationref hlink="_0000003300000033"/>
</lds_ord> </lds_ord>
<childof hlink="_0000001600000016"/> <childof hlink="_0000001700000017"/>
<personref hlink="_0000003400000034" rel=""> <personref hlink="_0000003500000035" rel="">
<noteref hlink="_0000003500000035"/> <noteref hlink="_0000003600000036"/>
</personref> </personref>
<noteref hlink="_0000003700000037"/> <noteref hlink="_0000003800000038"/>
<citationref hlink="_0000003600000036"/> <citationref hlink="_0000003700000037"/>
<tagref hlink="_0000000500000005"/>
</person> </person>
<person handle="_0000003400000034" change="1472505121" id="I0004"> <person handle="_0000003500000035" change="1" id="I0004">
<gender>U</gender> <gender>U</gender>
<name type="Birth Name"> <name type="Birth Name">
<first>George</first> <first>George</first>
<surname>Testee</surname> <surname>Testee</surname>
<noteref hlink="_0000003800000038"/> <noteref hlink="_0000003900000039"/>
</name> </name>
<citationref hlink="_0000003900000039"/> <citationref hlink="_0000003a0000003a"/>
<tagref hlink="_0000000500000005"/>
</person> </person>
</people> </people>
<families> <families>
<family handle="_0000001600000016" change="1472505121" id="F0001"> <family handle="_0000001700000017" change="1" id="F0001">
<rel type="Unknown"/> <rel type="Unknown"/>
<father hlink="_0000000d0000000d"/> <father hlink="_0000000e0000000e"/>
<mother hlink="_0000002500000025"/> <mother hlink="_0000002600000026"/>
<eventref hlink="_0000003a0000003a" role="Family"/> <eventref hlink="_0000003b0000003b" role="Family"/>
<childref hlink="_0000002b0000002b"/> <childref hlink="_0000002c0000002c"/>
<noteref hlink="_0000003d0000003d"/>
<noteref hlink="_0000003e0000003e"/> <noteref hlink="_0000003e0000003e"/>
<noteref hlink="_0000004300000043"/> <noteref hlink="_0000003f0000003f"/>
<citationref hlink="_0000003c0000003c"/> <noteref hlink="_0000004400000044"/>
<citationref hlink="_0000004200000042"/> <citationref hlink="_0000003d0000003d"/>
<citationref hlink="_0000004300000043"/>
<tagref hlink="_0000000500000005"/>
</family> </family>
</families> </families>
<citations> <citations>
<citation handle="_0000001f0000001f" change="1472505121" id="C0000"> <citation handle="_0000002000000020" change="1" id="C0000">
<confidence>2</confidence> <confidence>2</confidence>
<sourceref hlink="_0000000400000004"/> <sourceref hlink="_0000000400000004"/>
</citation> </citation>
<citation handle="_0000002300000023" change="1472505121" id="C0001"> <citation handle="_0000002400000024" change="1" id="C0001">
<confidence>2</confidence> <confidence>2</confidence>
<sourceref hlink="_0000000400000004"/> <sourceref hlink="_0000000400000004"/>
</citation> </citation>
<citation handle="_0000002900000029" change="1472505121" id="C0002"> <citation handle="_0000002a0000002a" change="1" id="C0002">
<confidence>2</confidence> <confidence>2</confidence>
<sourceref hlink="_0000000400000004"/> <sourceref hlink="_0000000400000004"/>
</citation> </citation>
<citation handle="_0000003200000032" change="1472505121" id="C0003"> <citation handle="_0000003300000033" change="1" id="C0003">
<confidence>2</confidence> <confidence>2</confidence>
<sourceref hlink="_0000003100000031"/> <sourceref hlink="_0000003200000032"/>
</citation> </citation>
<citation handle="_0000003600000036" change="1472505121" id="C0004"> <citation handle="_0000003700000037" change="1" id="C0004">
<confidence>2</confidence> <confidence>2</confidence>
<sourceref hlink="_0000000400000004"/> <sourceref hlink="_0000000400000004"/>
</citation> </citation>
<citation handle="_0000003900000039" change="1472505121" id="C0005"> <citation handle="_0000003a0000003a" change="1" id="C0005">
<confidence>2</confidence> <confidence>2</confidence>
<sourceref hlink="_0000000400000004"/> <sourceref hlink="_0000000400000004"/>
</citation> </citation>
<citation handle="_0000003c0000003c" change="1472505122" id="C0006"> <citation handle="_0000003d0000003d" change="1" id="C0006">
<confidence>2</confidence> <confidence>2</confidence>
<sourceref hlink="_0000003b0000003b"/> <sourceref hlink="_0000003c0000003c"/>
</citation> </citation>
<citation handle="_0000004200000042" change="1472505122" id="C0007"> <citation handle="_0000004300000043" change="1" id="C0007">
<dateval val="1900-12-31"/> <dateval val="1900-12-31"/>
<page>42</page> <page>42</page>
<confidence>0</confidence> <confidence>0</confidence>
<noteref hlink="_0000003f0000003f"/>
<noteref hlink="_0000004000000040"/> <noteref hlink="_0000004000000040"/>
<noteref hlink="_0000004100000041"/> <noteref hlink="_0000004100000041"/>
<sourceref hlink="_0000003b0000003b"/> <noteref hlink="_0000004200000042"/>
<sourceref hlink="_0000003c0000003c"/>
</citation> </citation>
</citations> </citations>
<sources> <sources>
<source handle="_0000000400000004" change="1472505121" id="S0000"> <source handle="_0000000400000004" change="1" id="S0000">
<stitle>Import from imp_notetest.ged</stitle> <stitle>Import from imp_notetest.ged</stitle>
<spubinfo>Tom Tester 2016</spubinfo> <spubinfo>Tom Tester 2016</spubinfo>
<noteref hlink="_0000000200000002"/> <noteref hlink="_0000000200000002"/>
<noteref hlink="_0000000500000005"/>
<noteref hlink="_0000000600000006"/> <noteref hlink="_0000000600000006"/>
<noteref hlink="_0000000700000007"/>
<srcattribute type="Approved system identification" value="GEDitCOM"/> <srcattribute type="Approved system identification" value="GEDitCOM"/>
<srcattribute type="Name of software product" value="GEDitCOM"/> <srcattribute type="Name of software product" value="GEDitCOM"/>
<srcattribute type="Version number of software product" value="2.9.4"/> <srcattribute type="Version number of software product" value="2.9.4"/>
@ -192,71 +200,72 @@
<srcattribute type="Submission: Submitter" value="@SUBMITTER@"/> <srcattribute type="Submission: Submitter" value="@SUBMITTER@"/>
<srcattribute type="Submission: Family file" value="NameOfFamilyFile"/> <srcattribute type="Submission: Family file" value="NameOfFamilyFile"/>
<reporef hlink="_0000000100000001" medium="Unknown"/> <reporef hlink="_0000000100000001" medium="Unknown"/>
<reporef hlink="_0000000b0000000b" medium="Unknown"/> <reporef hlink="_0000000c0000000c" medium="Unknown"/>
</source> </source>
<source handle="_0000003100000031" change="1472505121" id="SOURCE1"> <source handle="_0000003200000032" change="1" id="SOURCE1">
<stitle>@SOURCE1@</stitle> <stitle>@SOURCE1@</stitle>
</source> </source>
<source handle="_0000003b0000003b" change="1472505122" id="S0001"> <source handle="_0000003c0000003c" change="1" id="S0001">
<stitle>Note Test file Source: Tester</stitle> <stitle>Note Test file Source: Tester</stitle>
<noteref hlink="_0000004600000046"/>
<noteref hlink="_0000004700000047"/> <noteref hlink="_0000004700000047"/>
<reporef hlink="_0000004400000044" medium="Book"> <noteref hlink="_0000004800000048"/>
<noteref hlink="_0000004500000045"/> <reporef hlink="_0000004500000045" medium="Book">
<noteref hlink="_0000004600000046"/>
</reporef> </reporef>
</source> </source>
</sources> </sources>
<places> <places>
<placeobj handle="_0000001300000013" change="1472505121" id="P0000" type="Address"> <placeobj handle="_0000001400000014" change="1" id="P0000" type="Address">
<ptitle>123 main, Norwalk, Ohio, USA</ptitle> <ptitle>123 main, Norwalk, Ohio, USA</ptitle>
<pname value="123 main, Norwalk, Ohio, USA"/> <pname value="123 main, Norwalk, Ohio, USA"/>
<location street="123 main, Norwalk, Ohio, USA"/> <location street="123 main, Norwalk, Ohio, USA"/>
<noteref hlink="_0000001100000011"/>
<noteref hlink="_0000001200000012"/> <noteref hlink="_0000001200000012"/>
<noteref hlink="_0000001300000013"/>
</placeobj> </placeobj>
<placeobj handle="_0000002f0000002f" change="1472505121" id="P0001" type="Unknown"> <placeobj handle="_0000003000000030" change="1" id="P0001" type="Unknown">
<ptitle>Salt Lake City</ptitle> <ptitle>Salt Lake City</ptitle>
<pname value="Salt Lake City"/> <pname value="Salt Lake City"/>
</placeobj> </placeobj>
</places> </places>
<objects> <objects>
<object handle="_0000001e0000001e" change="979250406" id="M1"> <object handle="_0000001f0000001f" change="979250406" id="M1">
<file src="photo.jpg" mime="image/jpeg" description="Tom Tester's photo"/> <file src="photo.jpg" mime="image/jpeg" description="Tom Tester's photo"/>
<attribute type="Media-Type" value="Film"/> <attribute type="Media-Type" value="Film"/>
<attribute type="RIN" value="123456"/> <attribute type="RIN" value="123456"/>
<attribute type="REFN" value="98765"> <attribute type="REFN" value="98765">
<noteref hlink="_0000002200000022"/> <noteref hlink="_0000002300000023"/>
</attribute> </attribute>
<noteref hlink="_0000002400000024"/> <noteref hlink="_0000002500000025"/>
<citationref hlink="_0000002300000023"/> <citationref hlink="_0000002400000024"/>
<tagref hlink="_0000000500000005"/>
</object> </object>
</objects> </objects>
<repositories> <repositories>
<repository handle="_0000000100000001" change="1472505121" id="R0000"> <repository handle="_0000000100000001" change="1" id="R0000">
<rname>Business that produced the product: RSAC Software</rname> <rname>Business that produced the product: RSAC Software</rname>
<type>GEDCOM data</type> <type>GEDCOM data</type>
</repository> </repository>
<repository handle="_0000000b0000000b" change="1472505121" id="R0001"> <repository handle="_0000000c0000000c" change="1" id="R0001">
<rname>SUBM (Submitter): (@SUBMITTER@) John A. Tester</rname> <rname>SUBM (Submitter): (@SUBMITTER@) John A. Tester</rname>
<type>GEDCOM data</type> <type>GEDCOM data</type>
<address> <address>
</address> </address>
<noteref hlink="_0000000900000009"/>
<noteref hlink="_0000000a0000000a"/> <noteref hlink="_0000000a0000000a"/>
<noteref hlink="_0000000c0000000c"/> <noteref hlink="_0000000b0000000b"/>
<noteref hlink="_0000000d0000000d"/>
</repository> </repository>
<repository handle="_0000004400000044" change="1472505122" id="R0002"> <repository handle="_0000004500000045" change="1" id="R0002">
<rname>The Testers repository</rname> <rname>The Testers repository</rname>
<type>Library</type> <type>Library</type>
<noteref hlink="_0000004800000048"/>
<noteref hlink="_0000004900000049"/> <noteref hlink="_0000004900000049"/>
<noteref hlink="_0000004a0000004a"/>
</repository> </repository>
</repositories> </repositories>
<notes> <notes>
<note handle="_0000000200000002" change="1472505121" id="N0000" type="Source Note"> <note handle="_0000000200000002" change="1" id="N0000" type="Source Note">
<text>Header note</text> <text>Header note</text>
</note> </note>
<note handle="_0000000300000003" change="1472505121" id="N0001" type="GEDCOM import"> <note handle="_0000000300000003" change="1" id="N0001" type="GEDCOM import">
<text>Records not imported into HEAD (header): <text>Records not imported into HEAD (header):
Line ignored as not understood Line 18: 2 TEST Header Note Line ignored as not understood Line 18: 2 TEST Header Note
@ -266,13 +275,14 @@ Skipped subordinate line Line 20:
<range start="0" end="327"/> <range start="0" end="327"/>
</style> </style>
</note> </note>
<note handle="_0000000500000005" change="1472505121" id="N0002" type="Source Note"> <note handle="_0000000600000006" change="1" id="N0002" type="Source Note">
<text>Submission Note</text> <text>Submission Note</text>
<tagref hlink="_0000000500000005"/>
</note> </note>
<note handle="_0000000600000006" change="979250406" id="N0003" type="Source Note"> <note handle="_0000000700000007" change="979250406" id="N0003" type="Source Note">
<text>Submission xref note</text> <text>Submission xref note</text>
</note> </note>
<note handle="_0000000700000007" change="1472505121" id="N0004" type="GEDCOM import"> <note handle="_0000000800000008" change="1" id="N0004" type="GEDCOM import">
<text>Records not imported into Top Level: <text>Records not imported into Top Level:
Line ignored as not understood Line 26: 2 TEST Submission Note Line ignored as not understood Line 26: 2 TEST Submission Note
@ -283,7 +293,7 @@ Line ignored as not understood Line 29:
<range start="0" end="425"/> <range start="0" end="425"/>
</style> </style>
</note> </note>
<note handle="_0000000800000008" change="1472505121" id="N0005" type="GEDCOM import"> <note handle="_0000000900000009" change="1" id="N0005" type="GEDCOM import">
<text>Records not imported into NOTE Gramps ID N0003: <text>Records not imported into NOTE Gramps ID N0003:
Tag recognized but not supported Line 32: 1 RIN Submission Note RIN Tag recognized but not supported Line 32: 1 RIN Submission Note RIN
@ -295,13 +305,14 @@ Line ignored as not understood Line 39:
<range start="0" end="586"/> <range start="0" end="586"/>
</style> </style>
</note> </note>
<note handle="_0000000900000009" change="1472505121" id="N0006" type="Repository Note"> <note handle="_0000000a0000000a" change="1" id="N0006" type="Repository Note">
<text>Submitter Note</text> <text>Submitter Note</text>
<tagref hlink="_0000000500000005"/>
</note> </note>
<note handle="_0000000a0000000a" change="1472505121" id="N0007" type="Repository Note"> <note handle="_0000000b0000000b" change="1" id="N0007" type="Repository Note">
<text>Submitter xref note</text> <text>Submitter xref note</text>
</note> </note>
<note handle="_0000000c0000000c" change="1472505121" id="N0008" type="GEDCOM import"> <note handle="_0000000d0000000d" change="1" id="N0008" type="GEDCOM import">
<text>Records not imported into SUBM (Submitter): (@SUBMITTER@) John A. Tester: <text>Records not imported into SUBM (Submitter): (@SUBMITTER@) John A. Tester:
Line ignored as not understood Line 43: 2 TEST Submitter Note Line ignored as not understood Line 43: 2 TEST Submitter Note
@ -312,37 +323,44 @@ Line ignored as not understood Line 46:
<range start="0" end="460"/> <range start="0" end="460"/>
</style> </style>
</note> </note>
<note handle="_0000001000000010" change="1472505121" id="N0009" type="Event Note"> <note handle="_0000001100000011" change="1" id="N0009" type="Event Note">
<text>Birth Event note</text> <text>Birth Event note</text>
<tagref hlink="_0000000500000005"/>
</note> </note>
<note handle="_0000001100000011" change="1472505121" id="N0010" type="Place Note"> <note handle="_0000001200000012" change="1" id="N0010" type="Place Note">
<text>Location Note</text> <text>Location Note</text>
<tagref hlink="_0000000500000005"/>
</note> </note>
<note handle="_0000001200000012" change="1472505121" id="N0011" type="Place Note"> <note handle="_0000001300000013" change="1" id="N0011" type="Place Note">
<text>Location Note 2</text> <text>Location Note 2</text>
<tagref hlink="_0000000500000005"/>
</note> </note>
<note handle="_0000001500000015" change="1472505121" id="N0012" type="Event Note"> <note handle="_0000001600000016" change="1" id="N0012" type="Event Note">
<text>Death Event xref note</text> <text>Death Event xref note</text>
</note> </note>
<note handle="_0000001700000017" change="1472505121" id="N0013" type="Person Note"> <note handle="_0000001800000018" change="1" id="N0013" type="Person Note">
<text>FAMS Note</text> <text>FAMS Note</text>
<tagref hlink="_0000000500000005"/>
</note> </note>
<note handle="_0000001800000018" change="1472505121" id="N0014" type="Person Note"> <note handle="_0000001900000019" change="1" id="N0014" type="Person Note">
<text>FAMS Note 2</text> <text>FAMS Note 2</text>
<tagref hlink="_0000000500000005"/>
</note> </note>
<note handle="_0000001900000019" change="1472505121" id="N0015" type="Person Note"> <note handle="_0000001a0000001a" change="1" id="N0015" type="Person Note">
<text>Tom Tester xref note</text> <text>Tom Tester xref note</text>
</note> </note>
<note handle="_0000001a0000001a" change="1472505121" id="N0016" type="Person Note"> <note handle="_0000001b0000001b" change="1" id="N0016" type="Person Note">
<text>Tom Tester Note</text> <text>Tom Tester Note</text>
<tagref hlink="_0000000500000005"/>
</note> </note>
<note handle="_0000001b0000001b" change="1472505121" id="N0017" type="Media Note"> <note handle="_0000001c0000001c" change="1" id="N0017" type="Media Note">
<text>Media Note</text> <text>Media Note</text>
<tagref hlink="_0000000500000005"/>
</note> </note>
<note handle="_0000001c0000001c" change="979250406" id="N0018" type="Media Note"> <note handle="_0000001d0000001d" change="979250406" id="N0018" type="Media Note">
<text>Media xref note</text> <text>Media xref note</text>
</note> </note>
<note handle="_0000002000000020" change="1472505121" id="N0019" type="GEDCOM import"> <note handle="_0000002100000021" change="1" id="N0019" type="GEDCOM import">
<text>Records not imported into INDI (individual) Gramps ID I0001: <text>Records not imported into INDI (individual) Gramps ID I0001:
Empty note ignored Line 54: 2 NOTE Empty note ignored Line 54: 2 NOTE
@ -369,7 +387,7 @@ Skipped subordinate line Line 91:
<range start="0" end="2009"/> <range start="0" end="2009"/>
</style> </style>
</note> </note>
<note handle="_0000002100000021" change="1472505121" id="N0020" type="GEDCOM import"> <note handle="_0000002200000022" change="1" id="N0020" type="GEDCOM import">
<text>Records not imported into NOTE Gramps ID N0018: <text>Records not imported into NOTE Gramps ID N0018:
Tag recognized but not supported Line 103: 1 RIN 123456 Tag recognized but not supported Line 103: 1 RIN 123456
@ -383,10 +401,10 @@ Skipped subordinate line Line 112:
<range start="0" end="741"/> <range start="0" end="741"/>
</style> </style>
</note> </note>
<note handle="_0000002200000022" change="1472505121" id="N0021" type="REFN-TYPE"> <note handle="_0000002300000023" change="1" id="N0021" type="REFN-TYPE">
<text>Who knows REFN TYPE</text> <text>Who knows REFN TYPE</text>
</note> </note>
<note handle="_0000002400000024" change="1472505121" id="N0022" type="GEDCOM import"> <note handle="_0000002500000025" change="1" id="N0022" type="GEDCOM import">
<text>Records not imported into OBJE (multi-media object) Gramps ID M1: <text>Records not imported into OBJE (multi-media object) Gramps ID M1:
Could not import photo.jpg Line 114: 1 FILE photo.jpg</text> Could not import photo.jpg Line 114: 1 FILE photo.jpg</text>
@ -394,10 +412,11 @@ Could not import photo.jpg Line 114:
<range start="0" end="164"/> <range start="0" end="164"/>
</style> </style>
</note> </note>
<note handle="_0000002800000028" change="979250406" id="N0023" type="Person Note"> <note handle="_0000002900000029" change="979250406" id="N0023" type="Person Note">
<text>Family Spouse reference Note</text> <text>Family Spouse reference Note</text>
<tagref hlink="_0000000500000005"/>
</note> </note>
<note handle="_0000002a0000002a" change="1472505121" id="N0024" type="GEDCOM import"> <note handle="_0000002b0000002b" change="1" id="N0024" type="GEDCOM import">
<text>Records not imported into INDI (individual) Gramps ID I0002: <text>Records not imported into INDI (individual) Gramps ID I0002:
Empty note ignored Line 132: 2 NOTE Empty note ignored Line 132: 2 NOTE
@ -406,19 +425,22 @@ Skipped subordinate line Line 133:
<range start="0" end="248"/> <range start="0" end="248"/>
</style> </style>
</note> </note>
<note handle="_0000002c0000002c" change="979250406" id="N0025" type="General"> <note handle="_0000002d0000002d" change="979250406" id="N0025" type="General">
<text>Name note</text> <text>Name note</text>
<tagref hlink="_0000000500000005"/>
</note> </note>
<note handle="_0000003000000030" change="1472505121" id="N0026" type="LDS Note"> <note handle="_0000003100000031" change="1" id="N0026" type="LDS Note">
<text>Place note</text> <text>Place note</text>
<tagref hlink="_0000000500000005"/>
</note> </note>
<note handle="_0000003300000033" change="1472505122" id="N0027" type="LDS Note"> <note handle="_0000003400000034" change="1" id="N0027" type="LDS Note">
<text>LDS xref note</text> <text>LDS xref note</text>
</note> </note>
<note handle="_0000003500000035" change="979250406" id="N0028" type="Association Note"> <note handle="_0000003600000036" change="979250406" id="N0028" type="Association Note">
<text>Association link note</text> <text>Association link note</text>
<tagref hlink="_0000000500000005"/>
</note> </note>
<note handle="_0000003700000037" change="1472505121" id="N0029" type="GEDCOM import"> <note handle="_0000003800000038" change="1" id="N0029" type="GEDCOM import">
<text>Records not imported into INDI (individual) Gramps ID I0003: <text>Records not imported into INDI (individual) Gramps ID I0003:
Empty note ignored Line 141: 2 NOTE Empty note ignored Line 141: 2 NOTE
@ -430,25 +452,29 @@ Skipped subordinate line Line 168:
<range start="0" end="538"/> <range start="0" end="538"/>
</style> </style>
</note> </note>
<note handle="_0000003800000038" change="979250406" id="N0030" type="General"> <note handle="_0000003900000039" change="979250406" id="N0030" type="General">
<text>Just for association</text> <text>Just for association</text>
<tagref hlink="_0000000500000005"/>
</note> </note>
<note handle="_0000003d0000003d" change="1472505122" id="N0031" type="Family Note"> <note handle="_0000003e0000003e" change="1" id="N0031" type="Family Note">
<text>Family xref note</text> <text>Family xref note</text>
</note> </note>
<note handle="_0000003e0000003e" change="979250406" id="N0032" type="Family Note"> <note handle="_0000003f0000003f" change="979250406" id="N0032" type="Family Note">
<text>Family note</text> <text>Family note</text>
<tagref hlink="_0000000500000005"/>
</note> </note>
<note handle="_0000003f0000003f" change="1472505122" id="N0033" type="Citation"> <note handle="_0000004000000040" change="1" id="N0033" type="Citation">
<text>Citation Data Note</text> <text>Citation Data Note</text>
<tagref hlink="_0000000500000005"/>
</note> </note>
<note handle="_0000004000000040" change="1472505122" id="N0034" type="Source text"> <note handle="_0000004100000041" change="1" id="N0034" type="Source text">
<text>A sample text from a source of this family</text> <text>A sample text from a source of this family</text>
</note> </note>
<note handle="_0000004100000041" change="979250406" id="N0035" type="Citation"> <note handle="_0000004200000042" change="979250406" id="N0035" type="Citation">
<text>A note this citation is on the FAMILY record.</text> <text>A note this citation is on the FAMILY record.</text>
<tagref hlink="_0000000500000005"/>
</note> </note>
<note handle="_0000004300000043" change="1472505122" id="N0036" type="GEDCOM import"> <note handle="_0000004400000044" change="1" id="N0036" type="GEDCOM import">
<text>Records not imported into FAM (family) Gramps ID F0001: <text>Records not imported into FAM (family) Gramps ID F0001:
Line ignored as not understood Line 183: 2 TEST Family Note Line ignored as not understood Line 183: 2 TEST Family Note
@ -461,13 +487,15 @@ Line ignored as not understood Line 196:
<range start="0" end="645"/> <range start="0" end="645"/>
</style> </style>
</note> </note>
<note handle="_0000004500000045" change="979250406" id="N0037" type="Repository Reference Note"> <note handle="_0000004600000046" change="979250406" id="N0037" type="Repository Reference Note">
<text>A short note about the repository link.</text> <text>A short note about the repository link.</text>
<tagref hlink="_0000000500000005"/>
</note> </note>
<note handle="_0000004600000046" change="979250406" id="N0038" type="Source Note"> <note handle="_0000004700000047" change="979250406" id="N0038" type="Source Note">
<text>note embedded in the SOURCE Record</text> <text>note embedded in the SOURCE Record</text>
<tagref hlink="_0000000500000005"/>
</note> </note>
<note handle="_0000004700000047" change="1472505122" id="N0039" type="GEDCOM import"> <note handle="_0000004800000048" change="1" id="N0039" type="GEDCOM import">
<text>Records not imported into SOUR (source) Gramps ID S0001: <text>Records not imported into SOUR (source) Gramps ID S0001:
Line ignored as not understood Line 206: 1 TEST source Line ignored as not understood Line 206: 1 TEST source
@ -479,10 +507,11 @@ Skipped subordinate line Line 215:
<range start="0" end="524"/> <range start="0" end="524"/>
</style> </style>
</note> </note>
<note handle="_0000004800000048" change="1472505122" id="N0040" type="Repository Note"> <note handle="_0000004900000049" change="1" id="N0040" type="Repository Note">
<text>Repository Note</text> <text>Repository Note</text>
<tagref hlink="_0000000500000005"/>
</note> </note>
<note handle="_0000004900000049" change="1472505122" id="N0041" type="GEDCOM import"> <note handle="_0000004a0000004a" change="1" id="N0041" type="GEDCOM import">
<text>Records not imported into REPO (repository) Gramps ID R0002: <text>Records not imported into REPO (repository) Gramps ID R0002:
Line ignored as not understood Line 223: 1 TEST Repo Line ignored as not understood Line 223: 1 TEST Repo

View File

@ -1,31 +1,65 @@
0 HEAD 0 HEAD
1 SOUR Gramps 1 SOUR LEGACY
2 VERS 3.3.0 2 VERS 3.3.0
2 NAME Gramps 2 NAME LEGACY
1 DATE 27 DEC 2010 1 DATE 27 DEC 2010
2 TIME 15:35:24 2 TIME 15:35:24
1 SUBM @SUBM@ 1 SUBM @SUBM@
1 FILE gramps33/example/gedcom/sample.ged 1 SUBN @SUBN@
1 FILE sample.ged
1 COPR Copyright (c) 2010 Alex Roitman,,,. 1 COPR Copyright (c) 2010 Alex Roitman,,,.
1 GEDC 1 GEDC
2 VERS 5.5 2 VERS 5.5
2 FORM LINEAGE-LINKED 2 FORM LINEAGE-LINKED
2 FORM NOT LINEAGE-LINKED
1 CHAR UTF-8 1 CHAR UTF-8
2 VERS 1.1
1 LANG French 1 LANG French
0 @SUBM@ SUBM 0 @SUBM@ SUBM
1 NAME Alex Roitman,,, 1 NAME Alex Roitman,,,
1 ADDR Not Provided 1 ADDR Not Provided
2 CONT Not Provided 2 CONT Not Provided
2 ADR1 Not Provided 2 ADR1 Not Provided
2 NOTE No address provided (note not supported)
0 @SUBN@ SUBN
1 TEMP Mormon Temple
1 ANCE 4
1 DESC 4
1 ORDI Yes
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
2 SOUR Not really allowed here
1 RIN 987456321
1 OBJE
2 TITL No filename for this one
0 @I0@ INDI 0 @I0@ INDI
1 NAME Anna /Hansdotter/ 1 NAME Anna /Hansdotter/
2 GIVN Anna 2 GIVN Anna
2 SURN Hansdotter 2 SURN Hansdotter
2 SPFX Vrow
2 SURN Smith
2 _AKA Anna Smith
2 _AKA Hanna
2 NOTE Hans daughter? N0000 2 NOTE Hans daughter? N0000
1 SEX F 1 SEX F
1 BIRT 1 BIRT
2 TYPE Birth of Anna Hansdotter 2 TYPE Birth of Anna Hansdotter
2 DATE 2 OCT 1864 2 DATE EST 2 OCT 1864
2 PLAC Löderup, Malmöhus Län, Sweden 2 PLAC Löderup, Malmöhus Län, Sweden
1 DEAT 1 DEAT
2 TYPE Death of Anna Hansdotter 2 TYPE Death of Anna Hansdotter
@ -34,9 +68,10 @@
2 NOTE Her eulogy was great! N0001 2 NOTE Her eulogy was great! N0001
1 FAMS @F3@ 1 FAMS @F3@
1 CHAN 1 CHAN
2 DATE 21 DEC 2007 2 DATE 21 DEC 1900
3 TIME 01:35:26 3 TIME 01:35:26
1 NOTE Inline note should get ID N0002 1 NOTE Inline note should get ID N0002
1 _PHOTO @M1@
0 @I1@ INDI 0 @I1@ INDI
1 NAME Keith Lloyd /Smith/ 1 NAME Keith Lloyd /Smith/
2 GIVN Keith Lloyd 2 GIVN Keith Lloyd
@ -120,6 +155,8 @@
1 NAME Marjorie Lee /Smith/ 1 NAME Marjorie Lee /Smith/
2 GIVN Marjorie Lee 2 GIVN Marjorie Lee
2 SURN Smith 2 SURN Smith
1 NAME Margie
2 TYPE Nickname
1 SEX F 1 SEX F
1 BIRT 1 BIRT
2 TYPE Birth of Marjorie Lee Smith 2 TYPE Birth of Marjorie Lee Smith
@ -160,6 +197,16 @@
2 TYPE Death of Jennifer Anderson 2 TYPE Death of Jennifer Anderson
2 DATE 29 MAY 1985 2 DATE 29 MAY 1985
2 PLAC San Francisco, San Francisco Co., CA 2 PLAC San Francisco, San Francisco Co., CA
1 RESI
2 DATE 1980
2 ADDR 459 Main St., The Village, San Francisco, CA, USA
3 ADR1 456 Main St
3 ADR1 456 Main St again
3 ADR2 The Village
3 CITY San Francisco
3 CTRY USA
3 PHON 555-666-7777
3 STAE CA
1 FAMS @F14@ 1 FAMS @F14@
1 CHAN 1 CHAN
2 DATE 21 DEC 2007 2 DATE 21 DEC 2007
@ -194,6 +241,11 @@
1 CHAN 1 CHAN
2 DATE 21 DEC 2007 2 DATE 21 DEC 2007
3 TIME 01:35:26 3 TIME 01:35:26
1 SSN 987-555-4444
2 TYPE first generaton
2 SOUR @S999@
3 PAGE SSN docs pg 999
2 NOTE Person Attribute Note on SSN
0 @I19@ INDI 0 @I19@ INDI
1 NAME Eric Lloyd /Smith/ 1 NAME Eric Lloyd /Smith/
2 GIVN Eric Lloyd 2 GIVN Eric Lloyd
@ -354,6 +406,9 @@
1 CHAN 1 CHAN
2 DATE 21 DEC 2007 2 DATE 21 DEC 2007
3 TIME 01:35:26 3 TIME 01:35:26
1 ASSO @I23@
2 RELA Friend
2 SOUR @S2@
0 @I25@ INDI 0 @I25@ INDI
1 NAME Marta /Ericsdotter/ 1 NAME Marta /Ericsdotter/
2 GIVN Marta 2 GIVN Marta
@ -371,10 +426,13 @@
1 FACT Housekeeper 1 FACT Housekeeper
2 TYPE Skills 2 TYPE Skills
1 CONL 1 CONL
2 TEMP STOCK code
2 DATE 1790 2 DATE 1790
1 ENDL 1 ENDL
2 TEMP Stockholm
2 DATE 1795 2 DATE 1795
1 SLGC 1 SLGC
2 TEMP Stockholm, Sweden
2 DATE 1796 2 DATE 1796
2 PLAC Sweden 2 PLAC Sweden
3 FORM Country 3 FORM Country
@ -404,7 +462,7 @@
1 SEX M 1 SEX M
1 BIRT 1 BIRT
2 TYPE Birth of Ingeman Smith 2 TYPE Birth of Ingeman Smith
2 DATE ABT 1770 2 DATE ABT @#DGREGORIAN@ 1770
2 PLAC Sweden 2 PLAC Sweden
1 FAMS @F1@ 1 FAMS @F1@
1 CHAN 1 CHAN
@ -447,11 +505,13 @@
1 NAME Magnes /Smith/ 1 NAME Magnes /Smith/
2 GIVN Magnes 2 GIVN Magnes
2 SURN Smith 2 SURN Smith
1 SEX M 1 SSN 987-654-3210
1 SEX X
1 BIRT 1 BIRT
2 TYPE Birth of Magnes Smith 2 TYPE Birth of Magnes Smith
2 DATE 6 OCT 1858 2 DATE 6 OCT 1858
2 PLAC Simrishamn, Kristianstad Län, Sweden 2 PLAC Simrishamn, Kristianstad Län, Sweden
2 RIN 789654123
1 DEAT 1 DEAT
2 TYPE Death of Magnes Smith 2 TYPE Death of Magnes Smith
2 DATE 20 FEB 1910 2 DATE 20 FEB 1910
@ -470,6 +530,8 @@
2 TYPE Birth of Janice Ann Adams 2 TYPE Birth of Janice Ann Adams
2 DATE 26 AUG 1965 2 DATE 26 AUG 1965
2 PLAC Fremont, Alameda Co., CA 2 PLAC Fremont, Alameda Co., CA
2 CAUS fooling around
3 SOUR @S0@
1 OCCU Retail Manager 1 OCCU Retail Manager
1 _DEG 1 _DEG
2 TYPE Business Management 2 TYPE Business Management
@ -539,6 +601,8 @@
1 NAME Lars Peter /Smith/ 1 NAME Lars Peter /Smith/
2 GIVN Lars Peter 2 GIVN Lars Peter
2 SURN Smith 2 SURN Smith
2 _ADPN Jones
2 _ADPN Pete Jones
1 SEX M 1 SEX M
1 BIRT 1 BIRT
2 TYPE Birth of Lars Peter Smith 2 TYPE Birth of Lars Peter Smith
@ -694,7 +758,7 @@
1 SEX M 1 SEX M
1 BIRT 1 BIRT
2 TYPE Birth of Edwin Willard 2 TYPE Birth of Edwin Willard
2 DATE ABT 1886 2 DATE BET @#DHEBREW@ AAV 1886 AND @#DHEBREW@ ELUL 1897
1 FAMS @F4@ 1 FAMS @F4@
1 CHAN 1 CHAN
2 DATE 21 DEC 2007 2 DATE 21 DEC 2007
@ -752,12 +816,19 @@
1 CHAN 1 CHAN
2 DATE 21 DEC 2007 2 DATE 21 DEC 2007
3 TIME 01:35:26 3 TIME 01:35:26
1 RESI At the boarding school
2 DATE FROM @#DGREGORIAN@ 1873 TO 1878
2 PLAC Oronoko, Berrien, Michigan, USA
1 RESI At the hebrew boarding school
2 DATE FROM 1873 TO @#DHEBREW@ 1878
2 PLAC Shemps
3 FORM home
0 @F0@ FAM 0 @F0@ FAM
1 HUSB @I39@ 1 HUSB @I39@
1 WIFE @I36@ 1 WIFE @I36@
1 MARR 1 MARR
2 TYPE Marriage of Martin Smith and Elna Jefferson 2 TYPE Marriage of Martin Smith and Elna Jefferson
2 DATE ABT 1816 2 DATE BET @#DGREGORIAN@ 1816 AND 1817
2 PLAC Gladsax, Kristianstad Län, Sweden 2 PLAC Gladsax, Kristianstad Län, Sweden
1 CHIL @I11@ 1 CHIL @I11@
1 CHIL @I7@ 1 CHIL @I7@
@ -771,8 +842,12 @@
1 WIFE @I25@ 1 WIFE @I25@
1 MARR 1 MARR
2 TYPE Marriage of Ingeman Smith and Marta Ericsdotter 2 TYPE Marriage of Ingeman Smith and Marta Ericsdotter
2 DATE ABT 1790 2 DATE BET 1789 AND @#DHEBREW@ 1790
2 PLAC Sweden 2 PLAC Sweden
2 HUSB
3 AGE 17
2 WIFE
3 AGE 18
1 CHIL @I39@ 1 CHIL @I39@
1 CHAN 1 CHAN
2 DATE 21 DEC 2007 2 DATE 21 DEC 2007
@ -785,6 +860,7 @@
2 DATE 12 JUL 1986 2 DATE 12 JUL 1986
2 PLAC Woodland, Yolo Co., CA 2 PLAC Woodland, Yolo Co., CA
1 CHIL @I35@ 1 CHIL @I35@
2 _STAT
1 CHAN 1 CHAN
2 DATE 21 DEC 2007 2 DATE 21 DEC 2007
3 TIME 01:35:26 3 TIME 01:35:26
@ -858,35 +934,20 @@
1 CHAN 1 CHAN
2 DATE 21 DEC 2007 2 DATE 21 DEC 2007
3 TIME 01:35:26 3 TIME 01:35:26
1 EVEN Common law marriage
2 TYPE Civil
0 @F2@ FAM 0 @F2@ FAM
1 HUSB @I22@ 1 HUSB @I22@
1 WIFE @I38@ 1 WIFE @I38@
1 MARR 1 MARR
2 TYPE Marriage of Martin Smith and Kerstina Hansdotter 2 TYPE Marriage of Martin Smith and Kerstina Hansdotter
2 DATE ABT 1856 2 DATE FROM @#DGREGORIAN@ 1856 TO @#DGREGORIAN@ 1857
1 CHIL @I3@ 1 CHIL @I3@
1 CHIL @I9@ 1 CHIL @I9@
1 CHIL @I24@ 1 CHIL @I24@
1 CHAN 1 CHAN
2 DATE 21 DEC 2007 2 DATE 21 DEC 2007
3 TIME 01:35:26 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 0 @F4@ FAM
1 HUSB @I6@ 1 HUSB @I6@
1 WIFE @I26@ 1 WIFE @I26@
@ -921,7 +982,7 @@
0 @F7@ FAM 0 @F7@ FAM
1 HUSB @I15@ 1 HUSB @I15@
1 WIFE @I13@ 1 WIFE @I13@
1 MARR 1 MARR Civil Union
2 TYPE Marriage of Gus Smith and Evelyn Michaels 2 TYPE Marriage of Gus Smith and Evelyn Michaels
2 DATE ABT 1920 2 DATE ABT 1920
1 CHAN 1 CHAN
@ -937,12 +998,15 @@
1 CHIL @I19@ 1 CHIL @I19@
1 CHIL @I1@ 1 CHIL @I1@
1 CHIL @I29@ 1 CHIL @I29@
2 ADOP
1 CHAN 1 CHAN
2 DATE 21 DEC 2007 2 DATE 21 DEC 2007
3 TIME 01:35:26 3 TIME 01:35:26
1 ADDR 123 Main st, Grantville, Virginia, USA
0 @F9@ FAM 0 @F9@ FAM
1 HUSB @I10@ 1 HUSB @I10@
1 WIFE @I17@ 1 WIFE @I17@
1 MARR Unmarried
1 CHIL @I33@ 1 CHIL @I33@
1 CHAN 1 CHAN
2 DATE 21 DEC 2007 2 DATE 21 DEC 2007
@ -977,9 +1041,15 @@
2 CALN CA-123-LL-456_Num/ber 2 CALN CA-123-LL-456_Num/ber
3 MEDI Film 3 MEDI Film
1 NOTE @N0005@ 1 NOTE @N0005@
1 ABBR goodstuff
1 DATA
2 AGNC NYC Public Library
1 CHAN 1 CHAN
2 DATE 21 DEC 2007 2 DATE 21 DEC 2007
3 TIME 01:35:26 3 TIME 01:35:26
0 @S4@ SOUR
1 PERI Our Family Tree
1 RIN 987456321
0 @R0002@ REPO 0 @R0002@ REPO
1 NAME New York Public Library 1 NAME New York Public Library
1 ADDR 5th Ave at 42 street 1 ADDR 5th Ave at 42 street
@ -988,13 +1058,27 @@
2 STAE New York 2 STAE New York
2 POST 11111 2 POST 11111
2 CTRY USA 2 CTRY USA
1 CHAN
2 DATE 01 JAN 2000
3 TIME 00:00:00
0 @R0003@ REPO 0 @R0003@ REPO
1 NAME Aunt Martha's Attic 1 NAME Aunt Martha's Attic
1 ADDR 123 Main St 1 ADDR 123 Main St, Someville, ST, USA
2 ADR1 123 Main St 2 ADR1 123 Main St
2 ADR2 LittleVillage
2 CITY Someville 2 CITY Someville
2 STAE ST 2 STAE ST
2 CTRY USA 2 CTRY USA
2 DATE 25 DEC 1971
2 SOUR @S0@
3 DATE 26 DEC 1971
3 REFN blah blah
4 TYPE who knows
3 EVEN housecleaning
4 ROLE sorter
3 OBJE
4 FILE Attic_photo.jpg
2 NOTE A note on this address
1 WWW http://library.gramps-project.org 1 WWW http://library.gramps-project.org
1 NOTE @N0006@ 1 NOTE @N0006@
0 @N0000@ NOTE Witness name: John Doe 0 @N0000@ NOTE Witness name: John Doe
@ -1019,5 +1103,10 @@
0 @N0004@ NOTE But Aunt Martha still keeps the original! 0 @N0004@ NOTE But Aunt Martha still keeps the original!
0 @N0005@ NOTE The repository reference from the source is important 0 @N0005@ NOTE The repository reference from the source is important
0 @N0006@ NOTE Some note on the repo 0 @N0006@ NOTE Some note on the repo
0 @N7@ NOTE 'Smith': a very common name 0 XXX an unknown token at level 0
0 SUBM @SUBM@
0 @S4@ SOUR A weird source (one line) format
1 @X1@ XXX and unknown token xref definition
0 TRLR 0 TRLR
The end

File diff suppressed because it is too large Load Diff

View File

@ -29,7 +29,7 @@ Make an 'Unknown' primary object
# Python modules # Python modules
# #
#------------------------------------------------------------------------- #-------------------------------------------------------------------------
import time from time import strftime, localtime, time
import os import os
#------------------------------------------------------------------------- #-------------------------------------------------------------------------
@ -124,14 +124,14 @@ def make_unknown(class_arg, explanation, class_func, commit_func, transaction,
obj2 = argv['source_class_func'](argv['source_class_arg']) obj2 = argv['source_class_func'](argv['source_class_arg'])
obj2.set_title(_('Unknown')) obj2.set_title(_('Unknown'))
obj2.add_note(explanation) obj2.add_note(explanation)
argv['source_commit_func'](obj2, transaction, time.time()) argv['source_commit_func'](obj2, transaction, time())
retval.append(obj2) retval.append(obj2)
obj.set_reference_handle(obj2.handle) obj.set_reference_handle(obj2.handle)
elif isinstance(obj, Repository): elif isinstance(obj, Repository):
obj.set_name(_('Unknown')) obj.set_name(_('Unknown'))
obj.set_type(RepositoryType.UNKNOWN) obj.set_type(RepositoryType.UNKNOWN)
elif isinstance(obj, Media): elif isinstance(obj, Media):
obj.set_path(os.path.join(IMAGE_DIR, "image-missing.png")) obj.set_path("image-missing.png")
obj.set_mime_type('image/png') obj.set_mime_type('image/png')
obj.set_description(_('Unknown')) obj.set_description(_('Unknown'))
elif isinstance(obj, Note): elif isinstance(obj, Note):
@ -147,7 +147,7 @@ def make_unknown(class_arg, explanation, class_func, commit_func, transaction,
if not hasattr(make_unknown, 'count'): if not hasattr(make_unknown, 'count'):
make_unknown.count = 1 #primitive static variable make_unknown.count = 1 #primitive static variable
obj.set_name(_("Unknown, was missing %(time)s (%(count)d)") % { obj.set_name(_("Unknown, was missing %(time)s (%(count)d)") % {
'time': time.strftime('%x %X', time.localtime()), 'time': strftime('%x %X', localtime()),
'count': make_unknown.count}) 'count': make_unknown.count})
make_unknown.count += 1 make_unknown.count += 1
else: else:
@ -155,7 +155,7 @@ def make_unknown(class_arg, explanation, class_func, commit_func, transaction,
if hasattr(obj, 'add_note'): if hasattr(obj, 'add_note'):
obj.add_note(explanation) obj.add_note(explanation)
commit_func(obj, transaction, time.time()) commit_func(obj, transaction, time())
retval.append(obj) retval.append(obj)
return retval return retval
@ -167,7 +167,7 @@ def create_explanation_note(dbase):
""" """
note = Note( _('Objects referenced by this note ' note = Note( _('Objects referenced by this note '
'were missing in a file imported on %s.') % 'were missing in a file imported on %s.') %
time.strftime('%x %X', time.localtime())) strftime('%x %X', localtime()))
note.set_handle(create_id()) note.set_handle(create_id())
note.set_gramps_id(dbase.find_next_note_gramps_id()) note.set_gramps_id(dbase.find_next_note_gramps_id())
# Use defaults for privacy, format and type. # Use defaults for privacy, format and type.

View File

@ -5974,7 +5974,7 @@ class GedcomParser(UpdateCallback):
@type state: CurrentState @type state: CurrentState
""" """
# The ADDR may already have been parsed by the level above # The ADDR may already have been parsed by the level above
assert state.addr.get_street() == "" # assert state.addr.get_street() == ""
if state.addr.get_street() != "": if state.addr.get_street() != "":
self.__add_msg(_("Warn: ADDR overwritten"), line, state) self.__add_msg(_("Warn: ADDR overwritten"), line, state)
state.addr.set_street(line.data) state.addr.set_street(line.data)

View File

@ -25,6 +25,8 @@ import unittest
import os import os
import sys import sys
import re import re
from time import localtime
from unittest.mock import patch
#import logging #import logging
from gramps.gen.merge.diff import diff_dbs, import_as_dict from gramps.gen.merge.diff import diff_dbs, import_as_dict
@ -45,6 +47,17 @@ TEST_DIR = os.path.abspath(os.path.join(DATA_DIR, "tests"))
# Local Functions # Local Functions
# ------------------------------------------------------------------ # ------------------------------------------------------------------
def mock_time(*args):
"""
Mock up a dummy to replace the varying 'time string results'
"""
return 946101600.
def mock_localtime(*args):
"""
Mock up a dummy to replace the varying 'time string results'
"""
return localtime(946101600.)
class CompleteCheck(unittest.TestCase): class CompleteCheck(unittest.TestCase):
"""The test class cases will be dynamically created at import time from """The test class cases will be dynamically created at import time from
@ -174,16 +187,27 @@ def make_tst_function(tstfile, file_name):
""" This is here to support the dynamic function creation. This creates """ This is here to support the dynamic function creation. This creates
the test function (a method, to be precise). the test function (a method, to be precise).
""" """
def tst(self):
@patch('gramps.plugins.db.dbapi.dbapi.time')
@patch('gramps.plugins.db.bsddb.write.time')
@patch('gramps.gen.utils.unknown.localtime')
@patch('gramps.gen.utils.unknown.time')
def tst(self, mocktime, mockltime, mockwtime, mockdtime):
""" This compares the import file with the expected result '.gramps' """ This compares the import file with the expected result '.gramps'
file. file.
""" """
mocktime.side_effect = mock_time
mockltime.side_effect = mock_localtime
mockwtime.side_effect = mock_time
mockdtime.side_effect = mock_time
fn1 = os.path.join(TEST_DIR, tstfile) fn1 = os.path.join(TEST_DIR, tstfile)
fn2 = os.path.join(TEST_DIR, (file_name + ".gramps")) fn2 = os.path.join(TEST_DIR, (file_name + ".gramps"))
fres = os.path.join(TEMP_DIR, (file_name + ".difs")) fres = os.path.join(TEMP_DIR, (file_name + ".difs"))
fout = os.path.join(TEMP_DIR, (file_name + ".gramps")) fout = os.path.join(TEMP_DIR, (file_name + ".gramps"))
if "_dfs" in tstfile: if "_dfs" in tstfile:
config.set('preferences.default-source', True) config.set('preferences.default-source', True)
config.set('preferences.tag-on-import-format', "Imported")
config.set('preferences.tag-on-import', True)
skp_imp_adds = False skp_imp_adds = False
else: else:
skp_imp_adds = True skp_imp_adds = True