private Path createGoodRecordDefinitionRequiredMissing() throws IOException { List<TemplateFieldConfiguration> fields = new ArrayList<>(); TemplateFieldConfiguration field = new TemplateFieldConfiguration("field", "Paragraph:nth-of-type(5)"); field.setRequired(true); fields.add(field); Path definitionFile = Files.createTempFile( tempDirectory, AbstractRecordAnnotatorTest.class.getSimpleName(), ".yml"); TemplateRecordConfiguration recordDefinition = new TemplateRecordConfiguration(fields, 0); YAMLMAPPER.writeValue(definitionFile.toFile(), singleton(recordDefinition)); return definitionFile; }
private Path createGoodRecordDefinitionWithRegexRequired() throws IOException { TemplateFieldConfiguration fieldDefinitionConfiguration = new TemplateFieldConfiguration("field", "Paragraph:nth-of-type(3)"); fieldDefinitionConfiguration.setRegex("(?<=brown )(.*)(?= jumped)"); fieldDefinitionConfiguration.setRequired(true); return createRecord("test", fieldDefinitionConfiguration); }
private Path createRecordDefinitionWithRequiredField() throws IOException { TemplateFieldConfiguration notRequiredField = new TemplateFieldConfiguration("optional", "Paragraph:nth-of-type(3)"); TemplateFieldConfiguration requiredField = new TemplateFieldConfiguration("required", "Paragraph:nth-of-type(2)"); requiredField.setRequired(true); return createRecord("record", notRequiredField, requiredField); }
private Path createGoodRecordDefinitionWithRegexRequiredAndMissing() throws IOException { TemplateFieldConfiguration fieldDefinitionConfiguration = new TemplateFieldConfiguration("field", "Paragraph:nth-of-type(3)"); fieldDefinitionConfiguration.setRegex("(?<=white )(.*)(?= jumped)"); fieldDefinitionConfiguration.setRequired(true); return createRecord("test", fieldDefinitionConfiguration); }
/** * Make field from definition and path * * @param templateFieldDefinition the field definition * @param fields the fields * @return the configuration */ private TemplateFieldConfiguration makeField( TemplateFieldDefinition templateFieldDefinition, String fieldPath) { TemplateFieldConfiguration field = new TemplateFieldConfiguration(templateFieldDefinition.getName(), fieldPath); field.setRequired(templateFieldDefinition.getRequired()); field.setRepeat(templateFieldDefinition.getRepeat()); field.setRegex(templateFieldDefinition.getRegex()); return field; }