public void testCreate() throws Exception {
   UppercaseProcessor.Factory factory = new UppercaseProcessor.Factory();
   Map<String, Object> config = new HashMap<>();
   config.put("field", "field1");
   String processorTag = randomAsciiOfLength(10);
   config.put(AbstractProcessorFactory.TAG_KEY, processorTag);
   UppercaseProcessor uppercaseProcessor = factory.create(config);
   assertThat(uppercaseProcessor.getTag(), equalTo(processorTag));
   assertThat(uppercaseProcessor.getField(), equalTo("field1"));
 }
 public void testCreateMissingField() throws Exception {
   UppercaseProcessor.Factory factory = new UppercaseProcessor.Factory();
   Map<String, Object> config = new HashMap<>();
   try {
     factory.create(config);
     fail("factory create should have failed");
   } catch (IllegalArgumentException e) {
     assertThat(e.getMessage(), equalTo("required property [field] is missing"));
   }
 }
 public void testCreateMissingField() throws Exception {
   UppercaseProcessor.Factory factory = new UppercaseProcessor.Factory();
   Map<String, Object> config = new HashMap<>();
   try {
     factory.create(null, config);
     fail("factory create should have failed");
   } catch (ElasticsearchParseException e) {
     assertThat(e.getMessage(), equalTo("[field] required property is missing"));
   }
 }