Gedcom g = new Gedcom();
rootValidator.gedcom = g;
rootValidator.autorepair = false;
Submitter s = new Submitter();
s.xref = "@SUBM0001@";
s.name = new StringWithCustomTags("test");
g.submitters.put(s.xref, s);
Header h = g.header;
h.submitter = s;
g.submission = new Submission("@SUBN0001@");
h.submission = g.submission;
h.sourceSystem = null;
rootValidator.validate();
assertFindingsContain(Severity.ERROR, "source system", "specified");
h.sourceSystem = new SourceSystem();
rootValidator.validate();
assertNoIssues();
h.sourceSystem.corporation = null;
rootValidator.validate();
assertNoIssues();
h.sourceSystem.corporation = new Corporation();
rootValidator.validate();
assertNoIssues();
h.sourceSystem.corporation.businessName = null;
rootValidator.validate();
assertFindingsContain(Severity.ERROR, "source system", "corporation", "name");
h.sourceSystem.corporation.businessName = "Frying Pan";
rootValidator.validate();
assertNoIssues();
h.sourceSystem.productName = new StringWithCustomTags("Yo");
rootValidator.validate();
assertNoIssues();
h.sourceSystem.productName.customTags = null;
rootValidator.validate();