You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@jena.apache.org by an...@apache.org on 2015/03/17 16:56:05 UTC

[6/8] jena git commit: Replace mixed tabs/spaces with spaces.

http://git-wip-us.apache.org/repos/asf/jena/blob/807dc362/jena-text/src/test/java/org/apache/jena/query/text/assembler/TestEntityMapAssembler.java
----------------------------------------------------------------------
diff --git a/jena-text/src/test/java/org/apache/jena/query/text/assembler/TestEntityMapAssembler.java b/jena-text/src/test/java/org/apache/jena/query/text/assembler/TestEntityMapAssembler.java
index f95ac35..1261ee4 100644
--- a/jena-text/src/test/java/org/apache/jena/query/text/assembler/TestEntityMapAssembler.java
+++ b/jena-text/src/test/java/org/apache/jena/query/text/assembler/TestEntityMapAssembler.java
@@ -49,270 +49,270 @@ public class TestEntityMapAssembler {
     // Suppress warnings
     @BeforeClass public static void beforeClass() { LogCtl.setError(EntityDefinitionAssembler.class); }
     @AfterClass  public static void afterClass()  { LogCtl.setInfo(EntityDefinitionAssembler.class); }
-	
-	private static final String TESTBASE = "http://example.org/test/";
-	private static final Resource spec1;
-	private static final Resource spec2;
-	private static final Resource spec3;
-	private static final Resource spec4;
-	private static final Resource spec5;
-	private static final Resource spec6;
-	private static final Resource specNoEntityField;
-	private static final Resource specNoDefaultField;
-	private static final Resource specNoMapProperty;
-	private static final Resource specNoPrimaryFieldDef;
-	
-	@Test public void EntityHasPrimaryField() {
-		EntityDefinitionAssembler entDefAssem = new EntityDefinitionAssembler();
-		EntityDefinition entityDef = entDefAssem.open(null, spec1, null);
-		assertEquals(SPEC1_DEFAULT_FIELD, entityDef.getPrimaryField());
-	}
-	
-	@Test public void EntityHasEntityField() {
-		EntityDefinitionAssembler entDefAssem = new EntityDefinitionAssembler();
-		EntityDefinition entityDef = entDefAssem.open(null, spec1, null);
-		assertEquals(SPEC1_ENTITY_FIELD, entityDef.getEntityField());		
-	}
-	
-	@Test public void EntityHasMapEntries() {
-		EntityDefinitionAssembler entDefAssem = new EntityDefinitionAssembler();
-		EntityDefinition entityDef = entDefAssem.open(null, spec1, null);
-		assertEquals(SPEC1_PREDICATE.asNode(), getOne(entityDef,SPEC1_DEFAULT_FIELD));
-	}
-	
-	private Object getOne(EntityDefinition entityDef, String field) {
-	    Collection<Node> x = entityDef.getPredicates(field) ;
-	    if ( x == null || x.size() == 0 )
-	        return null ;
-	    if ( x.size() != 1 )
-	        throw new InternalErrorException("Not unique: "+field) ;
+    
+    private static final String TESTBASE = "http://example.org/test/";
+    private static final Resource spec1;
+    private static final Resource spec2;
+    private static final Resource spec3;
+    private static final Resource spec4;
+    private static final Resource spec5;
+    private static final Resource spec6;
+    private static final Resource specNoEntityField;
+    private static final Resource specNoDefaultField;
+    private static final Resource specNoMapProperty;
+    private static final Resource specNoPrimaryFieldDef;
+    
+    @Test public void EntityHasPrimaryField() {
+        EntityDefinitionAssembler entDefAssem = new EntityDefinitionAssembler();
+        EntityDefinition entityDef = entDefAssem.open(null, spec1, null);
+        assertEquals(SPEC1_DEFAULT_FIELD, entityDef.getPrimaryField());
+    }
+    
+    @Test public void EntityHasEntityField() {
+        EntityDefinitionAssembler entDefAssem = new EntityDefinitionAssembler();
+        EntityDefinition entityDef = entDefAssem.open(null, spec1, null);
+        assertEquals(SPEC1_ENTITY_FIELD, entityDef.getEntityField());        
+    }
+    
+    @Test public void EntityHasMapEntries() {
+        EntityDefinitionAssembler entDefAssem = new EntityDefinitionAssembler();
+        EntityDefinition entityDef = entDefAssem.open(null, spec1, null);
+        assertEquals(SPEC1_PREDICATE.asNode(), getOne(entityDef,SPEC1_DEFAULT_FIELD));
+    }
+    
+    private Object getOne(EntityDefinition entityDef, String field) {
+        Collection<Node> x = entityDef.getPredicates(field) ;
+        if ( x == null || x.size() == 0 )
+            return null ;
+        if ( x.size() != 1 )
+            throw new InternalErrorException("Not unique: "+field) ;
         return x.iterator().next() ; 
     }
 
     @Test public void EntityHasMultipleMapEntries() {
-		EntityDefinitionAssembler entDefAssem = new EntityDefinitionAssembler();
-		EntityDefinition entityDef = entDefAssem.open(null, spec2, null);
-		assertEquals(SPEC2_PREDICATE1.asNode(), getOne(entityDef,SPEC2_DEFAULT_FIELD));
-		assertEquals(SPEC2_PREDICATE2.asNode(), getOne(entityDef, SPEC2_FIELD2));
-	}
+        EntityDefinitionAssembler entDefAssem = new EntityDefinitionAssembler();
+        EntityDefinition entityDef = entDefAssem.open(null, spec2, null);
+        assertEquals(SPEC2_PREDICATE1.asNode(), getOne(entityDef,SPEC2_DEFAULT_FIELD));
+        assertEquals(SPEC2_PREDICATE2.asNode(), getOne(entityDef, SPEC2_FIELD2));
+    }
     
     @Test public void EntityHasMapEntryWithSimpleAnalyzer() {
-    	EntityDefinitionAssembler entDefAssem = new EntityDefinitionAssembler();
-    	EntityDefinition entityDef = entDefAssem.open(Assembler.general, spec3,  null);
-    	assertEquals(SimpleAnalyzer.class, entityDef.getAnalyzer(SPEC1_DEFAULT_FIELD).getClass());
+        EntityDefinitionAssembler entDefAssem = new EntityDefinitionAssembler();
+        EntityDefinition entityDef = entDefAssem.open(Assembler.general, spec3,  null);
+        assertEquals(SimpleAnalyzer.class, entityDef.getAnalyzer(SPEC1_DEFAULT_FIELD).getClass());
     }
     
     @Test public void EntityHasMapEntryWithStandardAnalyzerAndStopWords() {
-    	EntityDefinitionAssembler entDefAssem = new EntityDefinitionAssembler();
-    	EntityDefinition entityDef = entDefAssem.open(Assembler.general, spec4,  null);
-    	assertEquals(StandardAnalyzer.class, entityDef.getAnalyzer(SPEC1_DEFAULT_FIELD).getClass());
+        EntityDefinitionAssembler entDefAssem = new EntityDefinitionAssembler();
+        EntityDefinition entityDef = entDefAssem.open(Assembler.general, spec4,  null);
+        assertEquals(StandardAnalyzer.class, entityDef.getAnalyzer(SPEC1_DEFAULT_FIELD).getClass());
     }
     
     @Test public void EntityHasMapEntryWithKeywordAnalyzer() {
-    	EntityDefinitionAssembler entDefAssem = new EntityDefinitionAssembler();
-    	EntityDefinition entityDef = entDefAssem.open(Assembler.general, spec5,  null);
-    	assertEquals(KeywordAnalyzer.class, entityDef.getAnalyzer(SPEC1_DEFAULT_FIELD).getClass());
+        EntityDefinitionAssembler entDefAssem = new EntityDefinitionAssembler();
+        EntityDefinition entityDef = entDefAssem.open(Assembler.general, spec5,  null);
+        assertEquals(KeywordAnalyzer.class, entityDef.getAnalyzer(SPEC1_DEFAULT_FIELD).getClass());
     }    
-	
+    
     @Test public void EntityHasMapEntryWithLowerCaseKeywordAnalyzer() {
-    	EntityDefinitionAssembler entDefAssem = new EntityDefinitionAssembler();
-    	EntityDefinition entityDef = entDefAssem.open(Assembler.general, spec6,  null);
-    	assertEquals(LowerCaseKeywordAnalyzer.class, entityDef.getAnalyzer(SPEC1_DEFAULT_FIELD).getClass());
+        EntityDefinitionAssembler entDefAssem = new EntityDefinitionAssembler();
+        EntityDefinition entityDef = entDefAssem.open(Assembler.general, spec6,  null);
+        assertEquals(LowerCaseKeywordAnalyzer.class, entityDef.getAnalyzer(SPEC1_DEFAULT_FIELD).getClass());
     }    
-	
-	@Test(expected=TextIndexException.class) public void errorOnNoEntityField() {
-		EntityDefinitionAssembler entDefAssem = new EntityDefinitionAssembler();
-		entDefAssem.open(null, specNoEntityField, null);
-	}
-	
-	@Test(expected=TextIndexException.class) public void errorOnNoDefaultField() {
-		EntityDefinitionAssembler entDefAssem = new EntityDefinitionAssembler();
-		entDefAssem.open(null, specNoDefaultField, null);
-	}
-	
-	@Test(expected=TextIndexException.class) public void errorOnNoMapProperty() {
-		EntityDefinitionAssembler entDefAssem = new EntityDefinitionAssembler();
-		entDefAssem.open(null, specNoMapProperty, null);
-	}
-	
-	@Test(expected=TextIndexException.class) public void errorOnNoPrimaryFieldDef() {
-		EntityDefinitionAssembler entDefAssem = new EntityDefinitionAssembler();
-		try {
-		    entDefAssem.open(null, specNoPrimaryFieldDef, null);
-		} catch (TextIndexException e) {
-			assertTrue(e.getMessage().contains(SPEC1_DEFAULT_FIELD));
-			throw e ;
-		}	
-		
-	}
-	
-	private static final String SPEC1_ENTITY_FIELD = "spec1EntityField";
-	private static final String SPEC1_DEFAULT_FIELD = "spec1DefaultField";
-	private static final Property SPEC1_PREDICATE = RDFS.label;
-	
-	private static final String SPEC2_ENTITY_FIELD = "spec2EntityField";
-	private static final String SPEC2_DEFAULT_FIELD = "spec2DefaultField";
-	private static final String SPEC2_FIELD2 = "spec2Field2";
-	private static final Property SPEC2_PREDICATE1 = RDFS.label;
-	private static final Property SPEC2_PREDICATE2 = RDFS.comment;
-	static {
-		TextAssembler.init();
-		Model model = ModelFactory.createDefaultModel();
-		
-		// create a simple entity map specification
-		
-		spec1 = model.createResource(TESTBASE + "spec1")
-				     .addProperty(TextVocab.pEntityField, SPEC1_ENTITY_FIELD)
-				     .addProperty(TextVocab.pDefaultField, SPEC1_DEFAULT_FIELD)
-				     .addProperty(TextVocab.pMap,
-				    		      model.createList(
-				    		    		  new RDFNode[] {
-				    		    				model.createResource()
-				    		    				     .addProperty(TextVocab.pField, SPEC1_DEFAULT_FIELD)
-				    		    				     .addProperty(TextVocab.pPredicate, SPEC1_PREDICATE)
-				    		    		  }))
-				     ;
-		
-		// create an entity map specification with multiple map entries
-		
-		spec2 = model.createResource(TESTBASE + "spec2")
-				     .addProperty(TextVocab.pEntityField, SPEC2_ENTITY_FIELD)
-				     .addProperty(TextVocab.pDefaultField, SPEC2_DEFAULT_FIELD)
-				     .addProperty(TextVocab.pMap,
-				    		      model.createList(
-				    		    		  new RDFNode[] {
-				    		    				model.createResource()
-				    		    				     .addProperty(TextVocab.pField, SPEC2_DEFAULT_FIELD)
-				    		    				     .addProperty(TextVocab.pPredicate, SPEC2_PREDICATE1),
-							    		    	model.createResource()
-							    		    	     .addProperty(TextVocab.pField, SPEC2_FIELD2)
-							    		    		 .addProperty(TextVocab.pPredicate, SPEC2_PREDICATE2),
-				    		    				    
-				    		    		  }))
-				     ;
-		
-		// create a simple entity map specification using a keyword analyzer
-		
-				spec3 = model.createResource(TESTBASE + "spec3")
-						     .addProperty(TextVocab.pEntityField, SPEC1_ENTITY_FIELD)
-						     .addProperty(TextVocab.pDefaultField, SPEC1_DEFAULT_FIELD)
-						     .addProperty(TextVocab.pMap,
-						    		      model.createList(
-						    		    		  new RDFNode[] {
-						    		    				model.createResource()
-						    		    				     .addProperty(TextVocab.pField, SPEC1_DEFAULT_FIELD)
-						    		    				     .addProperty(TextVocab.pPredicate, SPEC1_PREDICATE)
-						    		    				     .addProperty(TextVocab.pAnalyzer, 
-						    		    				    		      model.createResource()
-						    		    				    		           .addProperty(RDF.type, TextVocab.simpleAnalyzer))
-						    		    		  }))
-						     ;
-				// create a simple entity map specification using a standard analyzer with stop words
-				
-				spec4 = model.createResource(TESTBASE + "spec4")
-						     .addProperty(TextVocab.pEntityField, SPEC1_ENTITY_FIELD)
-						     .addProperty(TextVocab.pDefaultField, SPEC1_DEFAULT_FIELD)
-						     .addProperty(TextVocab.pMap,
-						    		      model.createList(
-						    		    		  new RDFNode[] {
-						    		    				model.createResource()
-						    		    				     .addProperty(TextVocab.pField, SPEC1_DEFAULT_FIELD)
-						    		    				     .addProperty(TextVocab.pPredicate, SPEC1_PREDICATE)
-						    		    				     .addProperty(TextVocab.pAnalyzer, 
-						    		    				    		      model.createResource()
-						    		    				    		           .addProperty(RDF.type, TextVocab.standardAnalyzer))
-						    		    				    		           .addProperty(TextVocab.pStopWords, toList(model, "and the but"))
-						    		    		  }));		
-		// create a simple entity map specification using a keyword analyzer
-		
-				spec5 = model.createResource(TESTBASE + "spec5")
-						     .addProperty(TextVocab.pEntityField, SPEC1_ENTITY_FIELD)
-						     .addProperty(TextVocab.pDefaultField, SPEC1_DEFAULT_FIELD)
-						     .addProperty(TextVocab.pMap,
-						    		      model.createList(
-						    		    		  new RDFNode[] {
-						    		    				model.createResource()
-						    		    				     .addProperty(TextVocab.pField, SPEC1_DEFAULT_FIELD)
-						    		    				     .addProperty(TextVocab.pPredicate, SPEC1_PREDICATE)
-						    		    				     .addProperty(TextVocab.pAnalyzer, 
-						    		    				    		      model.createResource()
-						    		    				    		           .addProperty(RDF.type, TextVocab.keywordAnalyzer))
-						    		    		  }));
-				
-		// create a simple entity map specification using a lowercase keyword analyzer
-		
-				spec6 = model.createResource(TESTBASE + "spec6")
-						     .addProperty(TextVocab.pEntityField, SPEC1_ENTITY_FIELD)
-						     .addProperty(TextVocab.pDefaultField, SPEC1_DEFAULT_FIELD)
-						     .addProperty(TextVocab.pMap,
-						    		      model.createList(
-						    		    		  new RDFNode[] {
-						    		    				model.createResource()
-						    		    				     .addProperty(TextVocab.pField, SPEC1_DEFAULT_FIELD)
-						    		    				     .addProperty(TextVocab.pPredicate, SPEC1_PREDICATE)
-						    		    				     .addProperty(TextVocab.pAnalyzer, 
-						    		    				    		      model.createResource()
-						    		    				    		           .addProperty(RDF.type, TextVocab.lowerCaseKeywordAnalyzer))
-						    		    		  }));
-				
-		// bad assembler spec
-				
-		specNoEntityField = 
-				model.createResource(TESTBASE + "specNoEntityField")
-				     .addProperty(TextVocab.pDefaultField, SPEC1_DEFAULT_FIELD)
-				     .addProperty(TextVocab.pMap,
-				    		      model.createList(
-				    		    		  new RDFNode[] {
-				    		    				model.createResource()
-				    		    				     .addProperty(TextVocab.pField, SPEC1_DEFAULT_FIELD)
-				    		    				     .addProperty(TextVocab.pPredicate, SPEC1_PREDICATE)
-				    		    		  }))
-				     ;
-		
-		// bad assembler spec
-		
-		specNoDefaultField = 
-				model.createResource(TESTBASE + "specNoDefaultField")
-				     .addProperty(TextVocab.pDefaultField, SPEC1_DEFAULT_FIELD)
-				     .addProperty(TextVocab.pMap,
-				    		      model.createList(
-				    		    		  new RDFNode[] {
-				    		    				model.createResource()
-				    		    				     .addProperty(TextVocab.pField, SPEC1_DEFAULT_FIELD)
-				    		    				     .addProperty(TextVocab.pPredicate, SPEC1_PREDICATE)
-				    		    		  }))
-				     ;
-		// bad assembler spec
-		specNoMapProperty = 
-				model.createResource(TESTBASE + "specNoMapProperty")
-				     .addProperty(TextVocab.pEntityField, SPEC1_ENTITY_FIELD)
-				     .addProperty(TextVocab.pDefaultField, SPEC1_DEFAULT_FIELD)
-				     ;
-		
-		// bad assembler spec		
-		specNoPrimaryFieldDef =
-				model.createResource(TESTBASE + "noPrimaryFieldDef")
-				     .addProperty(TextVocab.pEntityField, SPEC1_ENTITY_FIELD)
-				     .addProperty(TextVocab.pDefaultField, SPEC1_DEFAULT_FIELD)
-				     .addProperty(TextVocab.pMap,
-				    		      model.createList(
-				    		    		  new RDFNode[] {
-				    		    				model.createResource()
-				    		    				     .addProperty(TextVocab.pField, SPEC1_ENTITY_FIELD)
-				    		    				     .addProperty(TextVocab.pPredicate, SPEC1_PREDICATE)
-				    		    		  }))
-				     ;
-	}
-	
-	private static Resource toList(Model model, String string) {
-		String[] members = string.split("\\s");
-		Resource current = RDF.nil;
-		for (int i = members.length-1; i>=0; i--) {
-			Resource previous = current;
-			current = model.createResource();
-			current.addProperty(RDF.rest, previous);
-			current.addProperty(RDF.first, members[i]);			
-		}
-		return current;	
-	}
+    
+    @Test(expected=TextIndexException.class) public void errorOnNoEntityField() {
+        EntityDefinitionAssembler entDefAssem = new EntityDefinitionAssembler();
+        entDefAssem.open(null, specNoEntityField, null);
+    }
+    
+    @Test(expected=TextIndexException.class) public void errorOnNoDefaultField() {
+        EntityDefinitionAssembler entDefAssem = new EntityDefinitionAssembler();
+        entDefAssem.open(null, specNoDefaultField, null);
+    }
+    
+    @Test(expected=TextIndexException.class) public void errorOnNoMapProperty() {
+        EntityDefinitionAssembler entDefAssem = new EntityDefinitionAssembler();
+        entDefAssem.open(null, specNoMapProperty, null);
+    }
+    
+    @Test(expected=TextIndexException.class) public void errorOnNoPrimaryFieldDef() {
+        EntityDefinitionAssembler entDefAssem = new EntityDefinitionAssembler();
+        try {
+            entDefAssem.open(null, specNoPrimaryFieldDef, null);
+        } catch (TextIndexException e) {
+            assertTrue(e.getMessage().contains(SPEC1_DEFAULT_FIELD));
+            throw e ;
+        }    
+        
+    }
+    
+    private static final String SPEC1_ENTITY_FIELD = "spec1EntityField";
+    private static final String SPEC1_DEFAULT_FIELD = "spec1DefaultField";
+    private static final Property SPEC1_PREDICATE = RDFS.label;
+    
+    private static final String SPEC2_ENTITY_FIELD = "spec2EntityField";
+    private static final String SPEC2_DEFAULT_FIELD = "spec2DefaultField";
+    private static final String SPEC2_FIELD2 = "spec2Field2";
+    private static final Property SPEC2_PREDICATE1 = RDFS.label;
+    private static final Property SPEC2_PREDICATE2 = RDFS.comment;
+    static {
+        TextAssembler.init();
+        Model model = ModelFactory.createDefaultModel();
+        
+        // create a simple entity map specification
+        
+        spec1 = model.createResource(TESTBASE + "spec1")
+                     .addProperty(TextVocab.pEntityField, SPEC1_ENTITY_FIELD)
+                     .addProperty(TextVocab.pDefaultField, SPEC1_DEFAULT_FIELD)
+                     .addProperty(TextVocab.pMap,
+                                  model.createList(
+                                          new RDFNode[] {
+                                                model.createResource()
+                                                     .addProperty(TextVocab.pField, SPEC1_DEFAULT_FIELD)
+                                                     .addProperty(TextVocab.pPredicate, SPEC1_PREDICATE)
+                                          }))
+                     ;
+        
+        // create an entity map specification with multiple map entries
+        
+        spec2 = model.createResource(TESTBASE + "spec2")
+                     .addProperty(TextVocab.pEntityField, SPEC2_ENTITY_FIELD)
+                     .addProperty(TextVocab.pDefaultField, SPEC2_DEFAULT_FIELD)
+                     .addProperty(TextVocab.pMap,
+                                  model.createList(
+                                          new RDFNode[] {
+                                                model.createResource()
+                                                     .addProperty(TextVocab.pField, SPEC2_DEFAULT_FIELD)
+                                                     .addProperty(TextVocab.pPredicate, SPEC2_PREDICATE1),
+                                                model.createResource()
+                                                     .addProperty(TextVocab.pField, SPEC2_FIELD2)
+                                                     .addProperty(TextVocab.pPredicate, SPEC2_PREDICATE2),
+                                                    
+                                          }))
+                     ;
+        
+        // create a simple entity map specification using a keyword analyzer
+        
+                spec3 = model.createResource(TESTBASE + "spec3")
+                             .addProperty(TextVocab.pEntityField, SPEC1_ENTITY_FIELD)
+                             .addProperty(TextVocab.pDefaultField, SPEC1_DEFAULT_FIELD)
+                             .addProperty(TextVocab.pMap,
+                                          model.createList(
+                                                  new RDFNode[] {
+                                                        model.createResource()
+                                                             .addProperty(TextVocab.pField, SPEC1_DEFAULT_FIELD)
+                                                             .addProperty(TextVocab.pPredicate, SPEC1_PREDICATE)
+                                                             .addProperty(TextVocab.pAnalyzer, 
+                                                                          model.createResource()
+                                                                               .addProperty(RDF.type, TextVocab.simpleAnalyzer))
+                                                  }))
+                             ;
+                // create a simple entity map specification using a standard analyzer with stop words
+                
+                spec4 = model.createResource(TESTBASE + "spec4")
+                             .addProperty(TextVocab.pEntityField, SPEC1_ENTITY_FIELD)
+                             .addProperty(TextVocab.pDefaultField, SPEC1_DEFAULT_FIELD)
+                             .addProperty(TextVocab.pMap,
+                                          model.createList(
+                                                  new RDFNode[] {
+                                                        model.createResource()
+                                                             .addProperty(TextVocab.pField, SPEC1_DEFAULT_FIELD)
+                                                             .addProperty(TextVocab.pPredicate, SPEC1_PREDICATE)
+                                                             .addProperty(TextVocab.pAnalyzer, 
+                                                                          model.createResource()
+                                                                               .addProperty(RDF.type, TextVocab.standardAnalyzer))
+                                                                               .addProperty(TextVocab.pStopWords, toList(model, "and the but"))
+                                                  }));        
+        // create a simple entity map specification using a keyword analyzer
+        
+                spec5 = model.createResource(TESTBASE + "spec5")
+                             .addProperty(TextVocab.pEntityField, SPEC1_ENTITY_FIELD)
+                             .addProperty(TextVocab.pDefaultField, SPEC1_DEFAULT_FIELD)
+                             .addProperty(TextVocab.pMap,
+                                          model.createList(
+                                                  new RDFNode[] {
+                                                        model.createResource()
+                                                             .addProperty(TextVocab.pField, SPEC1_DEFAULT_FIELD)
+                                                             .addProperty(TextVocab.pPredicate, SPEC1_PREDICATE)
+                                                             .addProperty(TextVocab.pAnalyzer, 
+                                                                          model.createResource()
+                                                                               .addProperty(RDF.type, TextVocab.keywordAnalyzer))
+                                                  }));
+                
+        // create a simple entity map specification using a lowercase keyword analyzer
+        
+                spec6 = model.createResource(TESTBASE + "spec6")
+                             .addProperty(TextVocab.pEntityField, SPEC1_ENTITY_FIELD)
+                             .addProperty(TextVocab.pDefaultField, SPEC1_DEFAULT_FIELD)
+                             .addProperty(TextVocab.pMap,
+                                          model.createList(
+                                                  new RDFNode[] {
+                                                        model.createResource()
+                                                             .addProperty(TextVocab.pField, SPEC1_DEFAULT_FIELD)
+                                                             .addProperty(TextVocab.pPredicate, SPEC1_PREDICATE)
+                                                             .addProperty(TextVocab.pAnalyzer, 
+                                                                          model.createResource()
+                                                                               .addProperty(RDF.type, TextVocab.lowerCaseKeywordAnalyzer))
+                                                  }));
+                
+        // bad assembler spec
+                
+        specNoEntityField = 
+                model.createResource(TESTBASE + "specNoEntityField")
+                     .addProperty(TextVocab.pDefaultField, SPEC1_DEFAULT_FIELD)
+                     .addProperty(TextVocab.pMap,
+                                  model.createList(
+                                          new RDFNode[] {
+                                                model.createResource()
+                                                     .addProperty(TextVocab.pField, SPEC1_DEFAULT_FIELD)
+                                                     .addProperty(TextVocab.pPredicate, SPEC1_PREDICATE)
+                                          }))
+                     ;
+        
+        // bad assembler spec
+        
+        specNoDefaultField = 
+                model.createResource(TESTBASE + "specNoDefaultField")
+                     .addProperty(TextVocab.pDefaultField, SPEC1_DEFAULT_FIELD)
+                     .addProperty(TextVocab.pMap,
+                                  model.createList(
+                                          new RDFNode[] {
+                                                model.createResource()
+                                                     .addProperty(TextVocab.pField, SPEC1_DEFAULT_FIELD)
+                                                     .addProperty(TextVocab.pPredicate, SPEC1_PREDICATE)
+                                          }))
+                     ;
+        // bad assembler spec
+        specNoMapProperty = 
+                model.createResource(TESTBASE + "specNoMapProperty")
+                     .addProperty(TextVocab.pEntityField, SPEC1_ENTITY_FIELD)
+                     .addProperty(TextVocab.pDefaultField, SPEC1_DEFAULT_FIELD)
+                     ;
+        
+        // bad assembler spec        
+        specNoPrimaryFieldDef =
+                model.createResource(TESTBASE + "noPrimaryFieldDef")
+                     .addProperty(TextVocab.pEntityField, SPEC1_ENTITY_FIELD)
+                     .addProperty(TextVocab.pDefaultField, SPEC1_DEFAULT_FIELD)
+                     .addProperty(TextVocab.pMap,
+                                  model.createList(
+                                          new RDFNode[] {
+                                                model.createResource()
+                                                     .addProperty(TextVocab.pField, SPEC1_ENTITY_FIELD)
+                                                     .addProperty(TextVocab.pPredicate, SPEC1_PREDICATE)
+                                          }))
+                     ;
+    }
+    
+    private static Resource toList(Model model, String string) {
+        String[] members = string.split("\\s");
+        Resource current = RDF.nil;
+        for (int i = members.length-1; i>=0; i--) {
+            Resource previous = current;
+            current = model.createResource();
+            current.addProperty(RDF.rest, previous);
+            current.addProperty(RDF.first, members[i]);            
+        }
+        return current;    
+    }
 }

http://git-wip-us.apache.org/repos/asf/jena/blob/807dc362/jena-text/src/test/java/org/apache/jena/query/text/assembler/TestTextDatasetAssembler.java
----------------------------------------------------------------------
diff --git a/jena-text/src/test/java/org/apache/jena/query/text/assembler/TestTextDatasetAssembler.java b/jena-text/src/test/java/org/apache/jena/query/text/assembler/TestTextDatasetAssembler.java
index abcf0a7..744edab 100644
--- a/jena-text/src/test/java/org/apache/jena/query/text/assembler/TestTextDatasetAssembler.java
+++ b/jena-text/src/test/java/org/apache/jena/query/text/assembler/TestTextDatasetAssembler.java
@@ -44,123 +44,123 @@ import com.hp.hpl.jena.vocabulary.RDF ;
  */
 public class TestTextDatasetAssembler extends AbstractTestTextAssembler {
 
-	private static final String TESTBASE = "http://example.org/testDatasetAssembler/";
-
-	private static final Resource spec1;
-	private static final Resource noDatasetPropertySpec;
-	private static final Resource noIndexPropertySpec;
-	private static final Resource customTextDocProducerSpec;
-	private static final Resource customDyadicTextDocProducerSpec;
-
-	@Test
-	public void testSimpleDatasetAssembler() {
-		Dataset dataset = (Dataset) Assembler.general.open(spec1);
-		assertTrue(dataset.getContext().get(TextQuery.textIndex) instanceof TextIndexLucene);
-	}
-
-	@Test(expected = AssemblerException.class)
-	public void testErrorOnNoDataset() {
-		Assembler.general.open(noDatasetPropertySpec);
-	}
-
-	@Test(expected = AssemblerException.class)
-	public void testErrorOnNoIndex() {
-		Assembler.general.open(noIndexPropertySpec);
-	}
-
-	@Test
-	public void testCustomTextDocProducer() {
-		Dataset dataset = (Dataset)Assembler.general.open(customTextDocProducerSpec) ;
-		DatasetGraphText dsgText = (DatasetGraphText)dataset.asDatasetGraph() ;
-		assertTrue(dsgText.getMonitor() instanceof CustomTextDocProducer) ;
-		dataset.close();
-	}
-
-	@Test
-	public void testCustomTextDocProducerDyadicConstructor() {
-		Dataset dataset = (Dataset)Assembler.general.open(customDyadicTextDocProducerSpec) ;
-		DatasetGraphText dsgText = (DatasetGraphText)dataset.asDatasetGraph() ;
-		assertTrue(dsgText.getMonitor() instanceof CustomDyadicTextDocProducer) ;
-	
-		Node G= NodeFactory.createURI("http://example.com/G");
-		Node S = NodeFactory.createURI("http://example.com/S");
-		Node P = NodeFactory.createURI("http://example.com/P");
-		Node O = NodeFactory.createLiteral("http://example.com/O");
-	
-		dsgText.begin(ReadWrite.WRITE);
-		dsgText.add(G, S, P, O);
-		dsgText.commit();
-		dataset.close();
-	}
-
-	static {
-		TextAssembler.init();
-		AssemblerTDB.init();
-		spec1 =
-			model.createResource(TESTBASE + "spec1")
-			     .addProperty(RDF.type, TextVocab.textDataset)
-			     .addProperty(TextVocab.pDataset, SIMPLE_DATASET_SPEC)
-			     .addProperty(TextVocab.pIndex, SIMPLE_INDEX_SPEC3);
-		noDatasetPropertySpec =
-			model.createResource(TESTBASE + "noDatasetPropertySpec")
-			     .addProperty(RDF.type, TextVocab.textDataset)
-			     .addProperty(TextVocab.pIndex, SIMPLE_INDEX_SPEC4);
-		noIndexPropertySpec =
-			model.createResource(TESTBASE + "noIndexPropertySpec")
-			     .addProperty(RDF.type, TextVocab.textDataset)
-			     .addProperty(TextVocab.pDataset, SIMPLE_DATASET_SPEC);
-		customTextDocProducerSpec =
-			model.createResource(TESTBASE + "customTextDocProducerSpec")
-		    	.addProperty(RDF.type, TextVocab.textDataset)
-		    	.addProperty(TextVocab.pDataset, SIMPLE_DATASET_SPEC)
-		    	.addProperty(TextVocab.pIndex, SIMPLE_INDEX_SPEC5)
-		    	.addProperty(TextVocab.pTextDocProducer, model.createResource("java:org.apache.jena.query.text.assembler.TestTextDatasetAssembler$CustomTextDocProducer"));
-
-		customDyadicTextDocProducerSpec =
-			model.createResource(TESTBASE + "customDyadicTextDocProducerSpec")
-				.addProperty(RDF.type, TextVocab.textDataset)
-				.addProperty(TextVocab.pDataset, SIMPLE_DATASET_SPEC)
-				.addProperty(TextVocab.pIndex, SIMPLE_INDEX_SPEC5)
-				.addProperty(TextVocab.pTextDocProducer, model.createResource("java:org.apache.jena.query.text.assembler.TestTextDatasetAssembler$CustomDyadicTextDocProducer"));
-	}
-
-	private static class CustomTextDocProducer implements TextDocProducer {
-	    
-		public CustomTextDocProducer(TextIndex textIndex) { }
-
-		@Override
-		public void start() { }
-
-		@Override
-		public void finish() { }
-
-		@Override
-		public void change(QuadAction qaction, Node g, Node s, Node p, Node o) { }
-	}
-
-
-	private static class CustomDyadicTextDocProducer implements TextDocProducer {
-	    
-		final DatasetGraph dg;
-		Node lastSubject = null;
-
-		public CustomDyadicTextDocProducer(DatasetGraph dg, TextIndex textIndex) { 
-			this.dg = dg;
-		}
-
-		@Override
-		public void start() { }
-
-		@Override
-		public void finish() { 
-			Iterator<Quad> qi = dg.find(null, lastSubject, Node.ANY, Node.ANY);
-			while (qi.hasNext()) qi.next();
-		}
-
-		@Override
-		public void change(QuadAction qaction, Node g, Node s, Node p, Node o) { 
-			lastSubject = s;
-		}
-	}
+    private static final String TESTBASE = "http://example.org/testDatasetAssembler/";
+
+    private static final Resource spec1;
+    private static final Resource noDatasetPropertySpec;
+    private static final Resource noIndexPropertySpec;
+    private static final Resource customTextDocProducerSpec;
+    private static final Resource customDyadicTextDocProducerSpec;
+
+    @Test
+    public void testSimpleDatasetAssembler() {
+        Dataset dataset = (Dataset) Assembler.general.open(spec1);
+        assertTrue(dataset.getContext().get(TextQuery.textIndex) instanceof TextIndexLucene);
+    }
+
+    @Test(expected = AssemblerException.class)
+    public void testErrorOnNoDataset() {
+        Assembler.general.open(noDatasetPropertySpec);
+    }
+
+    @Test(expected = AssemblerException.class)
+    public void testErrorOnNoIndex() {
+        Assembler.general.open(noIndexPropertySpec);
+    }
+
+    @Test
+    public void testCustomTextDocProducer() {
+        Dataset dataset = (Dataset)Assembler.general.open(customTextDocProducerSpec) ;
+        DatasetGraphText dsgText = (DatasetGraphText)dataset.asDatasetGraph() ;
+        assertTrue(dsgText.getMonitor() instanceof CustomTextDocProducer) ;
+        dataset.close();
+    }
+
+    @Test
+    public void testCustomTextDocProducerDyadicConstructor() {
+        Dataset dataset = (Dataset)Assembler.general.open(customDyadicTextDocProducerSpec) ;
+        DatasetGraphText dsgText = (DatasetGraphText)dataset.asDatasetGraph() ;
+        assertTrue(dsgText.getMonitor() instanceof CustomDyadicTextDocProducer) ;
+
+        Node G= NodeFactory.createURI("http://example.com/G");
+        Node S = NodeFactory.createURI("http://example.com/S");
+        Node P = NodeFactory.createURI("http://example.com/P");
+        Node O = NodeFactory.createLiteral("http://example.com/O");
+
+        dsgText.begin(ReadWrite.WRITE);
+        dsgText.add(G, S, P, O);
+        dsgText.commit();
+        dataset.close();
+    }
+
+    static {
+        TextAssembler.init();
+        AssemblerTDB.init();
+        spec1 =
+            model.createResource(TESTBASE + "spec1")
+                 .addProperty(RDF.type, TextVocab.textDataset)
+                 .addProperty(TextVocab.pDataset, SIMPLE_DATASET_SPEC)
+                 .addProperty(TextVocab.pIndex, SIMPLE_INDEX_SPEC3);
+        noDatasetPropertySpec =
+            model.createResource(TESTBASE + "noDatasetPropertySpec")
+                 .addProperty(RDF.type, TextVocab.textDataset)
+                 .addProperty(TextVocab.pIndex, SIMPLE_INDEX_SPEC4);
+        noIndexPropertySpec =
+            model.createResource(TESTBASE + "noIndexPropertySpec")
+                 .addProperty(RDF.type, TextVocab.textDataset)
+                 .addProperty(TextVocab.pDataset, SIMPLE_DATASET_SPEC);
+        customTextDocProducerSpec =
+            model.createResource(TESTBASE + "customTextDocProducerSpec")
+                 .addProperty(RDF.type, TextVocab.textDataset)
+                 .addProperty(TextVocab.pDataset, SIMPLE_DATASET_SPEC)
+                 .addProperty(TextVocab.pIndex, SIMPLE_INDEX_SPEC5)
+                 .addProperty(TextVocab.pTextDocProducer, model.createResource("java:org.apache.jena.query.text.assembler.TestTextDatasetAssembler$CustomTextDocProducer"));
+
+        customDyadicTextDocProducerSpec =
+            model.createResource(TESTBASE + "customDyadicTextDocProducerSpec")
+                 .addProperty(RDF.type, TextVocab.textDataset)
+                 .addProperty(TextVocab.pDataset, SIMPLE_DATASET_SPEC)
+                 .addProperty(TextVocab.pIndex, SIMPLE_INDEX_SPEC5)
+                 .addProperty(TextVocab.pTextDocProducer, model.createResource("java:org.apache.jena.query.text.assembler.TestTextDatasetAssembler$CustomDyadicTextDocProducer"));
+    }
+
+    private static class CustomTextDocProducer implements TextDocProducer {
+
+        public CustomTextDocProducer(TextIndex textIndex) { }
+
+        @Override
+        public void start() { }
+
+        @Override
+        public void finish() { }
+
+        @Override
+        public void change(QuadAction qaction, Node g, Node s, Node p, Node o) { }
+    }
+
+
+    private static class CustomDyadicTextDocProducer implements TextDocProducer {
+
+        final DatasetGraph dg;
+        Node lastSubject = null;
+
+        public CustomDyadicTextDocProducer(DatasetGraph dg, TextIndex textIndex) { 
+            this.dg = dg;
+        }
+
+        @Override
+        public void start() { }
+
+        @Override
+        public void finish() { 
+            Iterator<Quad> qi = dg.find(null, lastSubject, Node.ANY, Node.ANY);
+            while (qi.hasNext()) qi.next();
+        }
+
+        @Override
+        public void change(QuadAction qaction, Node g, Node s, Node p, Node o) { 
+            lastSubject = s;
+        }
+    }
 
 }

http://git-wip-us.apache.org/repos/asf/jena/blob/807dc362/jena-text/src/test/java/org/apache/jena/query/text/assembler/TestTextIndexSolrAssembler.java
----------------------------------------------------------------------
diff --git a/jena-text/src/test/java/org/apache/jena/query/text/assembler/TestTextIndexSolrAssembler.java b/jena-text/src/test/java/org/apache/jena/query/text/assembler/TestTextIndexSolrAssembler.java
index 06e9658..b6229a1 100644
--- a/jena-text/src/test/java/org/apache/jena/query/text/assembler/TestTextIndexSolrAssembler.java
+++ b/jena-text/src/test/java/org/apache/jena/query/text/assembler/TestTextIndexSolrAssembler.java
@@ -30,41 +30,41 @@ import com.hp.hpl.jena.vocabulary.RDF ;
 import com.hp.hpl.jena.vocabulary.RDFS ;
 
 public class TestTextIndexSolrAssembler extends AbstractTestTextAssembler {
-	
-	private static final String TESTBASE = "http://example.org/solrAssembler/";
-	private static final Resource EMBEDDED_SOLR_INDEX_SPEC;
-	private static final Resource HTTP_SOLR_INDEX_SPEC;
-	
-//	@Test public void testIndexUsesEmbeddedServer() throws IOException {
-//		if (EMBEDDED_SOLR.DATA_DIR.exists()) 
-//			TextSearchUtil.emptyAndDeleteDirectory(EMBEDDED_SOLR.DATA_DIR);
-//		EMBEDDED_SOLR.INDEX_DIR.mkdirs();
-//		TextSearchUtil.createEmptyIndex(EMBEDDED_SOLR.INDEX_DIR);
-//		TextIndexSolr indexSolr = (TextIndexSolr) Assembler.general.open(EMBEDDED_SOLR_INDEX_SPEC);
-//		assertEquals("org.apache.solr.client.solrj.embedded.EmbeddedSolrServer", indexSolr.getServer().getClass().getName());
-//		assertEquals(RDFS.label.asNode(), indexSolr.getDocDef().getPrimaryPredicate());	
-//		indexSolr.getServer().shutdown();
-//	}
-	
-	@Test public void testIndexUsesHttpServer() {
-		TextIndexSolr indexSolr = (TextIndexSolr) Assembler.general.open(HTTP_SOLR_INDEX_SPEC);
-		assertTrue(indexSolr.getServer() instanceof HttpSolrServer);
-		assertEquals(indexSolr.getDocDef().getPrimaryPredicate(), RDFS.label.asNode());	
-		indexSolr.getServer().shutdown();			
-	}
-	
-	static {
-		TextAssembler.init();
-		EMBEDDED_SOLR_INDEX_SPEC = 
-				model.createResource(TESTBASE + "embeddedSolrIndexSpec")
-				     .addProperty(RDF.type, TextVocab.textIndexSolr)
-				     .addProperty(TextVocab.pServer, model.createResource("embedded:solr"))
-				     .addProperty(TextVocab.pEntityMap, SIMPLE_ENTITY_MAP_SPEC);			
-		HTTP_SOLR_INDEX_SPEC = 
-				model.createResource(TESTBASE + "httpSolrIndexSpec")
-				     .addProperty(RDF.type, TextVocab.textIndexSolr)
-				     .addProperty(TextVocab.pServer, model.createResource("http://example.org/solr/index"))
-				     .addProperty(TextVocab.pEntityMap, SIMPLE_ENTITY_MAP_SPEC);				
-	}
+
+    private static final String TESTBASE = "http://example.org/solrAssembler/";
+    private static final Resource EMBEDDED_SOLR_INDEX_SPEC;
+    private static final Resource HTTP_SOLR_INDEX_SPEC;
+    
+//    @Test public void testIndexUsesEmbeddedServer() throws IOException {
+//        if (EMBEDDED_SOLR.DATA_DIR.exists()) 
+//            TextSearchUtil.emptyAndDeleteDirectory(EMBEDDED_SOLR.DATA_DIR);
+//        EMBEDDED_SOLR.INDEX_DIR.mkdirs();
+//        TextSearchUtil.createEmptyIndex(EMBEDDED_SOLR.INDEX_DIR);
+//        TextIndexSolr indexSolr = (TextIndexSolr) Assembler.general.open(EMBEDDED_SOLR_INDEX_SPEC);
+//        assertEquals("org.apache.solr.client.solrj.embedded.EmbeddedSolrServer", indexSolr.getServer().getClass().getName());
+//        assertEquals(RDFS.label.asNode(), indexSolr.getDocDef().getPrimaryPredicate());    
+//        indexSolr.getServer().shutdown();
+//    }
+    
+    @Test public void testIndexUsesHttpServer() {
+        TextIndexSolr indexSolr = (TextIndexSolr) Assembler.general.open(HTTP_SOLR_INDEX_SPEC);
+        assertTrue(indexSolr.getServer() instanceof HttpSolrServer);
+        assertEquals(indexSolr.getDocDef().getPrimaryPredicate(), RDFS.label.asNode());    
+        indexSolr.getServer().shutdown();
+    }
+    
+    static {
+        TextAssembler.init();
+        EMBEDDED_SOLR_INDEX_SPEC = 
+                model.createResource(TESTBASE + "embeddedSolrIndexSpec")
+                     .addProperty(RDF.type, TextVocab.textIndexSolr)
+                     .addProperty(TextVocab.pServer, model.createResource("embedded:solr"))
+                     .addProperty(TextVocab.pEntityMap, SIMPLE_ENTITY_MAP_SPEC);            
+        HTTP_SOLR_INDEX_SPEC = 
+                model.createResource(TESTBASE + "httpSolrIndexSpec")
+                     .addProperty(RDF.type, TextVocab.textIndexSolr)
+                     .addProperty(TextVocab.pServer, model.createResource("http://example.org/solr/index"))
+                     .addProperty(TextVocab.pEntityMap, SIMPLE_ENTITY_MAP_SPEC);                
+    }
 
 }