Author: lewismc
Date: Wed Nov 21 18:21:38 2012
New Revision: 1412222

URL: http://svn.apache.org/viewvc?rev=1412222&view=rev
Log:
ANY23-116 Empty values are skipped when reading tab separated CSV.

Added:
    
any23/trunk/test-resources/src/test/resources/org/apache/any23/extractor/csv/test-missing.csv
Modified:
    
any23/trunk/core/src/main/java/org/apache/any23/extractor/csv/CSVExtractor.java
    
any23/trunk/core/src/test/java/org/apache/any23/extractor/csv/CSVExtractorTest.java

Modified: 
any23/trunk/core/src/main/java/org/apache/any23/extractor/csv/CSVExtractor.java
URL: 
http://svn.apache.org/viewvc/any23/trunk/core/src/main/java/org/apache/any23/extractor/csv/CSVExtractor.java?rev=1412222&r1=1412221&r2=1412222&view=diff
==============================================================================
--- 
any23/trunk/core/src/main/java/org/apache/any23/extractor/csv/CSVExtractor.java 
(original)
+++ 
any23/trunk/core/src/main/java/org/apache/any23/extractor/csv/CSVExtractor.java 
Wed Nov 21 18:21:38 2012
@@ -244,6 +244,7 @@ public class CSVExtractor implements Ext
                 break;
             }
             if (cell.equals("")) {
+                index++;
                 continue;
             }
             URI predicate = headerURIs[index];

Modified: 
any23/trunk/core/src/test/java/org/apache/any23/extractor/csv/CSVExtractorTest.java
URL: 
http://svn.apache.org/viewvc/any23/trunk/core/src/test/java/org/apache/any23/extractor/csv/CSVExtractorTest.java?rev=1412222&r1=1412221&r2=1412222&view=diff
==============================================================================
--- 
any23/trunk/core/src/test/java/org/apache/any23/extractor/csv/CSVExtractorTest.java
 (original)
+++ 
any23/trunk/core/src/test/java/org/apache/any23/extractor/csv/CSVExtractorTest.java
 Wed Nov 21 18:21:38 2012
@@ -96,5 +96,20 @@ public class CSVExtractorTest extends Ab
         assertContains(null, null, new LiteralImpl("7.9", XMLSchema.FLOAT));
         assertContains(null, null, new LiteralImpl("10" , XMLSchema.INTEGER));
     }
+    
+    @Test
+    public void testExtractionEmptyValue() throws RepositoryException {
+        CSV csv = CSV.getInstance();
+        assertExtract("/org/apache/any23/extractor/csv/test-missing.csv");
+        logger.debug(dumpModelToRDFXML());
+
+        assertModelNotEmpty();
+        assertStatementsSize(null, null, null, 25);
+        assertStatementsSize(null, RDF.TYPE, csv.rowType, 3);
+        assertContains(null, csv.numberOfColumns, new LiteralImpl("4", 
XMLSchema.INTEGER));
+        assertContains(null, csv.numberOfRows, new LiteralImpl("3", 
XMLSchema.INTEGER));
+        assertContains(null, null, new LiteralImpl("Michele", 
XMLSchema.STRING));
+        assertContains(null, null, new LiteralImpl("Giovanni", 
XMLSchema.STRING));
+    }
 
 }

Added: 
any23/trunk/test-resources/src/test/resources/org/apache/any23/extractor/csv/test-missing.csv
URL: 
http://svn.apache.org/viewvc/any23/trunk/test-resources/src/test/resources/org/apache/any23/extractor/csv/test-missing.csv?rev=1412222&view=auto
==============================================================================
--- 
any23/trunk/test-resources/src/test/resources/org/apache/any23/extractor/csv/test-missing.csv
 (added)
+++ 
any23/trunk/test-resources/src/test/resources/org/apache/any23/extractor/csv/test-missing.csv
 Wed Nov 21 18:21:38 2012
@@ -0,0 +1,4 @@
+first name,last name,http://xmlns.org/foaf/01/knows,age
+,Palmisano,http://michelemostarda.com,30
+Michele,,http://g1o.net,
+Giovanni,Tummarello,,


Reply via email to