Author: lcorneliussen
Date: Wed May 16 11:27:00 2012
New Revision: 1339119
URL: http://svn.apache.org/viewvc?rev=1339119&view=rev
Log:
[NPANDAY-210] Deprecate includeSources in favor of include/exclude patterns
o fixed bug in test source files resolve
Modified:
incubator/npanday/trunk/components/dotnet-executable/src/main/java/npanday/executable/impl/CompilerContextImpl.java
Modified:
incubator/npanday/trunk/components/dotnet-executable/src/main/java/npanday/executable/impl/CompilerContextImpl.java
URL:
http://svn.apache.org/viewvc/incubator/npanday/trunk/components/dotnet-executable/src/main/java/npanday/executable/impl/CompilerContextImpl.java?rev=1339119&r1=1339118&r2=1339119&view=diff
==============================================================================
---
incubator/npanday/trunk/components/dotnet-executable/src/main/java/npanday/executable/impl/CompilerContextImpl.java
(original)
+++
incubator/npanday/trunk/components/dotnet-executable/src/main/java/npanday/executable/impl/CompilerContextImpl.java
Wed May 16 11:27:00 2012
@@ -166,7 +166,8 @@ public final class CompilerContextImpl
public boolean shouldCompile()
{
- if (isTestCompile() && getSourceFiles().size() == 0){
+ if ( isTestCompile() && getSourceFiles().size() == 0 )
+ {
logger.info( "NPANDAY-061-017: Skipping test compile; no sources
found" );
return false;
}
@@ -450,12 +451,14 @@ public final class CompilerContextImpl
}
Set<File> expandedSourceFiles;
+
public Set<File> getSourceFiles()
{
- if (expandedSourceFiles == null)
- expandedSourceFiles = expandSourceFiles();
+ // TODO: cache source files - but it seems that this instance is
reused... ??
+ /*if (expandedSourceFiles == null)
+ expandedSourceFiles = expandSourceFiles();*/
- return expandedSourceFiles;
+ return expandSourceFiles();
}
private Set<File> expandSourceFiles()
@@ -471,33 +474,43 @@ public final class CompilerContextImpl
files.addAll( expandSources( getGeneratedSourcesDirectory() ) );
- String defaultSourceRoot = isTestCompile() ?
project.getBuild().getTestSourceDirectory() :
project.getBuild().getSourceDirectory();
+ String defaultSourceRoot = isTestCompile()
+ ? project.getBuild().getTestSourceDirectory()
+ : project.getBuild().getSourceDirectory();
Set<String> additionalRoots = Sets.newHashSet();
List bareRoots = isTestCompile() ? project.getTestCompileSourceRoots()
: project.getCompileSourceRoots();
- if ( bareRoots != null) {
- for(Object root : project.getCompileSourceRoots()){
- if (!root.equals( defaultSourceRoot ) ){
- additionalRoots.add( (String)root );
+ if ( bareRoots != null )
+ {
+ for ( Object root : project.getCompileSourceRoots() )
+ {
+ if ( !root.equals( defaultSourceRoot ) )
+ {
+ additionalRoots.add( (String) root );
}
}
}
if ( additionalRoots.size() > 0 )
{
- getLogger().debug(
+ getLogger().debug(
"NPANDAY-061-009: Adding additional compile source roots: " +
additionalRoots
);
- for(String root : additionalRoots){
+ for ( String root : additionalRoots )
+ {
files.addAll( expandSources( new File( root ) ) );
}
}
- if ( !isSourceAndTestsTogether() )
+ if ( isTestCompile() )
{
- files.addAll( isTestCompile() ? expandTestSourceFilePatterns() :
expandMainSourceFilePatterns());
+ files.addAll( expandTestSourceFilePatterns() );
+ }
+ else if ( !isSourceAndTestsTogether() )
+ {
+ files.addAll( expandMainSourceFilePatterns() );
}
else
{
@@ -505,27 +518,21 @@ public final class CompilerContextImpl
List<File> testSources = expandTestSourceFilePatterns();
getLogger().debug(
- "NPANDAY-061-010: Since source and tests reside in same
folder, "
- + " test sources will be excluded from main sources and
vice versa"
+ "NPANDAY-061-014: Since tests (" + testSources.size()
+ + " files) reside in same folder as main sources (" +
mainSources.size() + " files),"
+ + " they will be excluded from main sources"
);
- if ( isTestCompile() )
- {
- List<File> sources = Lists.newArrayList();
- sources.addAll( testSources );
- sources.removeAll( mainSources );
- files.addAll( sources );
- }
- else
- {
- List<File> sources = Lists.newArrayList();
- sources.addAll( mainSources );
- sources.removeAll( testSources );
- files.addAll( sources );
- }
+ List<File> sources = Lists.newArrayList();
+ sources.addAll( mainSources );
+ sources.removeAll( testSources );
+ files.addAll( sources );
}
- logger.info( "NPANDAY-061-011: Found " + files.size() + " source
files" );
+ logger.info(
+ "NPANDAY-061-011: Found " + files.size() + " source files for " +
( isTestCompile() ? "test" : "main" )
+ + " compile"
+ );
return files;
}
@@ -589,8 +596,8 @@ public final class CompilerContextImpl
"NPANDAY-061-014: Since source and tests reside in same
folder, "
+ "and no default includes are stated, conventions for
finding tests will be applied."
);
- includes.add( "**/Test/*" + config.getLanguageFileExtension()
);
- includes.add( "**/Tests/*" + config.getLanguageFileExtension()
);
+ includes.add( "**/Test/**/*.*" +
config.getLanguageFileExtension() );
+ includes.add( "**/Tests/**/*.*" +
config.getLanguageFileExtension() );
includes.add( "**/*Tests." + config.getLanguageFileExtension()
);
includes.add( "**/*Test." + config.getLanguageFileExtension()
);
}