Changeset 980 for AnalyzerBeans/trunk/src/test/java/org/eobjects/analyzer/job/JaxbJobFactoryTest.java
- Timestamp:
- 08/28/10 14:22:32 (21 months ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
AnalyzerBeans/trunk/src/test/java/org/eobjects/analyzer/job/JaxbJobFactoryTest.java
r978 r980 2 2 3 3 import java.io.File; 4 import java.util.Arrays; 5 import java.util.List; 4 6 7 import org.eobjects.analyzer.data.MetaModelInputColumn; 8 import org.eobjects.analyzer.job.runner.AnalysisRunnerImpl; 9 import org.eobjects.analyzer.result.AnalyzerResult; 10 import org.eobjects.analyzer.result.CrosstabResult; 5 11 import org.eobjects.analyzer.test.TestHelper; 6 12 … … 44 50 JaxbJobFactory factory = new JaxbJobFactory(configuration); 45 51 try { 46 factory.create(new File("src/test/resources/example-job-valid.xml")); 52 factory.create(new File( 53 "src/test/resources/example-job-missing-descriptor.xml")); 47 54 fail("Exception expected"); 48 55 } catch (IllegalStateException e) { … … 51 58 } 52 59 } 60 61 public void testValidJob() throws Exception { 62 AnalyzerBeansConfiguration configuration = TestHelper 63 .createAnalyzerBeansConfiguration(TestHelper 64 .createSampleDatabaseDatastore("my database")); 65 JaxbJobFactory factory = new JaxbJobFactory(configuration); 66 AnalysisJobBuilder builder = factory.create(new File( 67 "src/test/resources/example-job-valid.xml")); 68 assertTrue(builder.isConfigured()); 69 70 List<MetaModelInputColumn> sourceColumns = builder.getSourceColumns(); 71 assertEquals(3, sourceColumns.size()); 72 assertEquals( 73 "MetaModelInputColumn[JdbcColumn[name=FIRSTNAME,columnNumber=2,type=VARCHAR,nullable=false,indexed=false,nativeType=VARCHAR,columnSize=50]]", 74 sourceColumns.get(0).toString()); 75 assertEquals( 76 "MetaModelInputColumn[JdbcColumn[name=LASTNAME,columnNumber=1,type=VARCHAR,nullable=false,indexed=false,nativeType=VARCHAR,columnSize=50]]", 77 sourceColumns.get(1).toString()); 78 assertEquals( 79 "MetaModelInputColumn[JdbcColumn[name=EMAIL,columnNumber=4,type=VARCHAR,nullable=false,indexed=false,nativeType=VARCHAR,columnSize=100]]", 80 sourceColumns.get(2).toString()); 81 82 assertEquals(1, builder.getTransformerJobBuilders().size()); 83 assertEquals( 84 "[TransformedInputColumn[id=trans-1,name=username,type=STRING], " 85 + "TransformedInputColumn[id=trans-2,name=domain,type=STRING]]", 86 builder.getTransformerJobBuilders().get(0).getOutputColumns() 87 .toString()); 88 assertEquals( 89 "[TransformedInputColumn[id=trans-1,name=username,type=STRING], " 90 + "TransformedInputColumn[id=trans-2,name=domain,type=STRING], " 91 + "MetaModelInputColumn[JdbcColumn[name=FIRSTNAME,columnNumber=2,type=VARCHAR,nullable=false,indexed=false,nativeType=VARCHAR,columnSize=50]], " 92 + "MetaModelInputColumn[JdbcColumn[name=LASTNAME,columnNumber=1,type=VARCHAR,nullable=false,indexed=false,nativeType=VARCHAR,columnSize=50]]]", 93 Arrays.toString(builder.getAnalyzerJobBuilders().get(0) 94 .toAnalyzerJob().getInput())); 95 96 List<AnalyzerResult> results = new AnalysisRunnerImpl(configuration) 97 .run(builder.toAnalysisJob()).getResults(); 98 assertEquals(1, results.size()); 99 CrosstabResult crosstabResult = (CrosstabResult) results.get(0); 100 assertEquals("Crosstab:|" + "domain,Lowercase chars: 95%|" 101 + "domain,Uppercase chars: 0%|" + "domain,Avg white spaces: 0|" 102 + "username,Max chars: 10|" + "FIRSTNAME,Word count: 24|" 103 + "domain,Word count: 23|" + "username,Max white spaces: 0|" 104 + "FIRSTNAME,Max words: 2|" + "LASTNAME,Min words: 1|" 105 + "FIRSTNAME,Max white spaces: 1|" 106 + "username,Char count: 172|" + "username,Avg chars: 7,48|" 107 + "LASTNAME,Word count: 23|" + "username,Min white spaces: 0|" 108 + "LASTNAME,Max white spaces: 0|" + "LASTNAME,Char count: 147|" 109 + "FIRSTNAME,Avg chars: 5,39|" + "domain,Min white spaces: 0|" 110 + "domain,Max chars: 20|" + "LASTNAME,Avg chars: 6,39|" 111 + "username,Uppercase chars: 0%|" 112 + "username,Lowercase chars: 100%|" + "LASTNAME,Max words: 1|" 113 + "LASTNAME,Avg white spaces: 0|" + "LASTNAME,Min chars: 3|" 114 + "domain,Min chars: 20|" + "FIRSTNAME,Min white spaces: 0|" 115 + "username,Avg white spaces: 0|" 116 + "FIRSTNAME,Char count: 124|" 117 + "LASTNAME,Min white spaces: 0|" + "domain,Avg chars: 20|" 118 + "FIRSTNAME,Non-letter chars: 0%|" + "domain,Max words: 1|" 119 + "FIRSTNAME,Uppercase chars: 19%|" + "username,Max words: 1|" 120 + "FIRSTNAME,Min words: 1|" + "username,Min chars: 5|" 121 + "LASTNAME,Lowercase chars: 84%|" + "username,Min words: 1|" 122 + "FIRSTNAME,Max chars: 8|" + "domain,Min words: 1|" 123 + "FIRSTNAME,Avg white spaces: 0,04|" 124 + "username,Word count: 23|" + "LASTNAME,Uppercase chars: 15%|" 125 + "LASTNAME,Non-letter chars: 0%|" + "domain,Char count: 460|" 126 + "username,Non-letter chars: 0%|" + "FIRSTNAME,Min chars: 3|" 127 + "domain,Non-letter chars: 5%|" 128 + "domain,Max white spaces: 0|" 129 + "FIRSTNAME,Lowercase chars: 79%|" + "LASTNAME,Max chars: 9", 130 crosstabResult.toString().replaceAll("\n", "|")); 131 } 53 132 }
Note: See TracChangeset
for help on using the changeset viewer.
