Skip to content

Commit

Permalink
Changed tests to always use local file-based Maven repositories to avoid
Browse files Browse the repository at this point in the history
socket timeouts due to slow access to online repositories.
  • Loading branch information
jpav committed Oct 17, 2013
1 parent 2ed4a31 commit 9e48f61
Show file tree
Hide file tree
Showing 11 changed files with 61 additions and 61 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -27,8 +27,6 @@
import static org.hamcrest.core.IsNull.notNullValue;
import static org.junit.Assert.assertThat;

import java.net.URL;

import javax.jcr.Node;
import javax.jcr.Session;

Expand All @@ -43,9 +41,6 @@ public class ITJavaDependencyProcessor extends BaseIntegrationTest {

@Test
public void shouldDetermineDependencies() throws Exception {
for ( final URL url : modelTypeManager().modelTypeRepositories() )
modelTypeManager().unregisterModelTypeRepository( url );
modelTypeManager().registerModelTypeRepository( MODEL_TYPE_REPOSITORY );
assertThat( modelTypeManager().install( "java" ).length == 0, is( true ) );
final String name = JavaDependencyProcessor.class.getName();
// final File file = new File( "src/main/java/" + name.replace( '.', '/' ) + ".java" );
Expand Down
Binary file not shown.
Binary file not shown.
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,6 @@
import static org.junit.Assert.assertThat;

import java.io.File;
import java.net.URL;

import javax.jcr.Session;

Expand All @@ -45,9 +44,6 @@ public class ITModeler extends BaseIntegrationTest {

@Test
public void shouldExportToFile() throws Exception {
for ( final URL url : modelTypeManager().modelTypeRepositories() )
modelTypeManager().unregisterModelTypeRepository( url );
modelTypeManager().registerModelTypeRepository( MODEL_TYPE_REPOSITORY );
assertThat( modelTypeManager().install( "java" ).length == 0, is( true ) );
final String name = ModelImpl.class.getName();
final File file = new File( "src/main/java/" + name.replace( '.', '/' ) + ".java" );
Expand All @@ -61,18 +57,12 @@ public void shouldExportToFile() throws Exception {

@Test( expected = ModelerException.class )
public void shouldFailToCreateModelIfTypeIsInapplicable() throws Exception {
for ( final URL url : modelTypeManager().modelTypeRepositories() )
modelTypeManager().unregisterModelTypeRepository( url );
modelTypeManager().registerModelTypeRepository( MODEL_TYPE_REPOSITORY );
modelTypeManager().install( "xml" );
modeler().generateModel( importArtifact( "stuff" ), ARTIFACT_NAME, modelTypeManager().modelType( XML_MODEL_TYPE_ID ) );
}

@Test( expected = ModelerException.class )
public void shouldFailToGenerateModelIfFileIsInvalid() throws Exception {
for ( final URL url : modelTypeManager().modelTypeRepositories() )
modelTypeManager().unregisterModelTypeRepository( url );
modelTypeManager().registerModelTypeRepository( MODEL_TYPE_REPOSITORY );
modelTypeManager().install( "xml" );
modeler().generateModel( importArtifact( XML_DECLARATION + "<stuff>" ),
ARTIFACT_NAME,
Expand All @@ -81,7 +71,6 @@ public void shouldFailToGenerateModelIfFileIsInvalid() throws Exception {

@Test
public void shouldGenerateModelOfSuppliedType() throws Exception {
modelTypeManager().registerModelTypeRepository( MODEL_TYPE_REPOSITORY );
modelTypeManager().install( "xml" );
modelTypeManager().install( "sramp" );
modelTypeManager().install( "xsd" );
Expand All @@ -107,7 +96,6 @@ public Void run( final Session session ) throws Exception {

@Test
public void shouldNotFindDependencyProcessorForXsdModelNode() throws Exception {
modelTypeManager().registerModelTypeRepository( MODEL_TYPE_REPOSITORY );
modelTypeManager().install( "sramp" );
modelTypeManager().install( "xsd" );

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -34,8 +34,10 @@
import javax.jcr.Session;

import org.junit.Test;
import org.modeshape.modeler.ModeShapeModeler;
import org.modeshape.modeler.ModelType;
import org.modeshape.modeler.ModelTypeManager;
import org.modeshape.modeler.Modeler;
import org.modeshape.modeler.ModelerException;
import org.modeshape.modeler.integration.BaseIntegrationTest;

Expand Down Expand Up @@ -87,8 +89,11 @@ public void shouldGetModelTypeCategories() throws Exception {

@Test
public void shouldIniitializeModelTypeRepositories() throws Exception {
assertThat( modelTypeManager().modelTypeRepositories()[ 0 ], is( new URL( ModelTypeManager.JBOSS_MODEL_TYPE_REPOSITORY ) ) );
assertThat( modelTypeManager().modelTypeRepositories()[ 1 ], is( new URL( ModelTypeManager.MAVEN_MODEL_TYPE_REPOSITORY ) ) );
modeler().close();
try ( final Modeler modeler = new ModeShapeModeler( TEST_REPOSITORY_STORE_PARENT_PATH, TEST_MODESHAPE_CONFIGURATION_PATH ) ) {
assertThat( modeler.modelTypeManager().modelTypeRepositories()[ 0 ], is( new URL( ModelTypeManager.JBOSS_MODEL_TYPE_REPOSITORY ) ) );
assertThat( modeler.modelTypeManager().modelTypeRepositories()[ 1 ], is( new URL( ModelTypeManager.MAVEN_MODEL_TYPE_REPOSITORY ) ) );
}
}

@Test
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,7 @@
*/
package org.modeshape.modeler.internal;

import java.io.File;
import java.io.IOException;
import java.io.InputStream;
import java.lang.reflect.Modifier;
Expand Down Expand Up @@ -421,11 +422,20 @@ public String[] installableModelTypeCategories() throws ModelerException {
final Set< String > categories = new HashSet<>();
for ( final URL repositoryUrl : modelTypeRepositories ) {
try {
final Document doc = Jsoup.connect( path( repositoryUrl.toString(), MODESHAPE_GROUP ) ).get();
final Elements elements = doc.getElementsMatchingOwnText( "sequencer-" );
for ( final Element element : elements ) {
final String href = element.attr( "href" );
categories.add( href.substring( href.indexOf( "sequencer-" ) + "sequencer-".length(), href.lastIndexOf( '/' ) ) );
if ( repositoryUrl.getProtocol().startsWith( "file" ) ) {
final File folder = new File( new URL( repositoryUrl, MODESHAPE_GROUP ).getPath() );
for ( final File file : folder.listFiles() ) {
final String name = file.getName();
if ( name.contains( "sequencer-" ) )
categories.add( name.substring( name.indexOf( "sequencer-" ) + "sequencer-".length() ) );
}
} else {
final Document doc = Jsoup.connect( path( repositoryUrl.toString(), MODESHAPE_GROUP ) ).get();
final Elements elements = doc.getElementsMatchingOwnText( "sequencer-" );
for ( final Element element : elements ) {
final String href = element.attr( "href" );
categories.add( href.substring( href.indexOf( "sequencer-" ) + "sequencer-".length(), href.lastIndexOf( '/' ) ) );
}
}
} catch ( final IOException e ) {
throw new ModelerException( e );
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -213,7 +213,6 @@ public void shouldFailToImportFileUrlIfNotFound() throws Exception {

@Test
public void shouldGenerateModelFromFile() throws Exception {
modelTypeManager().registerModelTypeRepository( MODEL_TYPE_REPOSITORY );
modelTypeManager().install( "xml" );
final Model model = modeler().generateModel( new File( "src/test/resources/Books.xsd" ),
null,
Expand All @@ -223,7 +222,6 @@ public void shouldGenerateModelFromFile() throws Exception {

@Test
public void shouldGenerateModelFromFileWithSuppliedName() throws Exception {
modelTypeManager().registerModelTypeRepository( MODEL_TYPE_REPOSITORY );
modelTypeManager().install( "xml" );
final Model model = modeler().generateModel( new File( "src/test/resources/Books.xsd" ),
null,
Expand All @@ -241,7 +239,6 @@ public void shouldGenerateModelFromStream() throws Exception {

@Test
public void shouldGenerateModelFromUrl() throws Exception {
modelTypeManager().registerModelTypeRepository( MODEL_TYPE_REPOSITORY );
modelTypeManager().install( "xml" );
final Model model = modeler().generateModel( new URL( "file:src/test/resources/Books.xsd" ),
null,
Expand All @@ -251,7 +248,6 @@ public void shouldGenerateModelFromUrl() throws Exception {

@Test
public void shouldGenerateModelFromUrlWithSuppliedName() throws Exception {
modelTypeManager().registerModelTypeRepository( MODEL_TYPE_REPOSITORY );
modelTypeManager().install( "xml" );
final Model model = modeler().generateModel( new URL( "file:src/test/resources/Books.xsd" ),
null,
Expand All @@ -263,15 +259,14 @@ public void shouldGenerateModelFromUrlWithSuppliedName() throws Exception {

@Test
public void shouldGenerateModelFromWorkspaceArtifact() throws Exception {
modelTypeManager().registerModelTypeRepository( MODEL_TYPE_REPOSITORY );
modelTypeManager().install( "xml" );
final String path = modeler().importArtifact( stream( XML_ARTIFACT ), ARTIFACT_NAME );
final Model model = modeler().generateModel( path, ARTIFACT_NAME, modelTypeManager().modelType( XML_MODEL_TYPE_ID ) );
assertThat( model, notNullValue() );
}

@Test
public void shouldGetChangedModeShapeConfigurationPath() {
public void shouldGetChangedModeShapeConfigurationPath() throws Exception {
assertThat( modeler().modeShapeConfigurationPath(), is( TEST_MODESHAPE_CONFIGURATION_PATH ) );
}

Expand All @@ -297,7 +292,7 @@ public void shouldGetNullModelIfPathNotFound() throws Exception {
}

@Test
public void shouldGetRepositoryStoreParentPath() {
public void shouldGetRepositoryStoreParentPath() throws Exception {
assertThat( modeler().repositoryStoreParentPath(), is( TEST_REPOSITORY_STORE_PARENT_PATH ) );
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -42,7 +42,6 @@ protected ModelObject failingModelObject() {
}

protected ModelObject modelObject() throws Exception {
modelTypeManager().registerModelTypeRepository( MODEL_TYPE_REPOSITORY );
modelTypeManager().install( "xml" );
final ModelObject modelObject =
modeler().generateModel( stream( XML_ARTIFACT ), MODEL_NAME, modelTypeManager().modelType( XML_MODEL_TYPE_ID ) );
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -166,7 +166,7 @@ public void shouldGetEmptyApplicableModelTypesIfFileHasUknownMimeType() throws E
public void shouldGetExistingRegisteredModelTypeRepositoriesIfRegisteringRegisteredUrl() throws Exception {
final URL[] origRepos = modelTypeManager().modelTypeRepositories();
final URL[] repos =
modelTypeManager().registerModelTypeRepository( new URL( ModelTypeManager.JBOSS_MODEL_TYPE_REPOSITORY ) );
modelTypeManager().registerModelTypeRepository( MODEL_TYPE_REPOSITORY );
assertThat( repos, notNullValue() );
assertThat( repos, is( origRepos ) );
}
Expand All @@ -181,14 +181,12 @@ public void shouldGetExistingRegisteredModelTypeRepositoriesIfUnregisteringUnreg

@Test
public void shouldGetModelType() throws Exception {
modelTypeManager().registerModelTypeRepository( MODEL_TYPE_REPOSITORY );
modelTypeManager().install( "xml" );
assertThat( modelTypeManager().modelType( XML_MODEL_TYPE_ID ), notNullValue() );
}

@Test
public void shouldGetModelTypeCategories() throws Exception {
modelTypeManager().registerModelTypeRepository( MODEL_TYPE_REPOSITORY );
modelTypeManager().install( "java" );
assertThat( modelTypeManager().modelTypeCategories().length, is( 1 ) );
assertThat( modelTypeManager().modelTypeCategories()[ 0 ], is( "java" ) );
Expand All @@ -202,7 +200,6 @@ public void shouldGetNullDefaultModelTypeIfFileHasUknownMimeType() throws Except

@Test
public void shouldInstallModelTypes() throws Exception {
modelTypeManager().registerModelTypeRepository( MODEL_TYPE_REPOSITORY );
final String[] potentialSequencerClassNames = modelTypeManager().install( "java" );
assertThat( potentialSequencerClassNames.length == 0, is( true ) );
assertThat( modelTypeManager().modelTypes().length == 0, is( false ) );
Expand All @@ -218,6 +215,8 @@ public void shouldLoadState() throws Exception {
try ( Modeler modeler = new ModeShapeModeler( TEST_REPOSITORY_STORE_PARENT_PATH ) ) {
final ModelTypeManager modelTypeManager = modeler.modelTypeManager();
repos = modelTypeManager.modelTypeRepositories().length;
for ( final URL url : modelTypeManager.modelTypeRepositories() )
modelTypeManager.unregisterModelTypeRepository( url );
modelTypeManager.registerModelTypeRepository( MODEL_TYPE_REPOSITORY );
modelTypeManager.install( "java" );
modelTypeManager.install( "xsd" );
Expand All @@ -242,22 +241,28 @@ public Void run( final Session session,

@Test
public void shouldMoveModelTypeRepositoryDown() throws Exception {
final URL url = new URL( ModelTypeManager.JBOSS_MODEL_TYPE_REPOSITORY );
final int size = modelTypeManager().modelTypeRepositories().length;
assertThat( modelTypeManager().modelTypeRepositories()[ 0 ], is( url ) );
modelTypeManager().moveModelTypeRepositoryDown( url );
assertThat( modelTypeManager().modelTypeRepositories()[ 1 ], is( url ) );
assertThat( modelTypeManager().modelTypeRepositories().length, is( size ) );
modeler().close();
try ( Modeler modeler = new ModeShapeModeler( TEST_REPOSITORY_STORE_PARENT_PATH, TEST_MODESHAPE_CONFIGURATION_PATH ) ) {
final URL url = new URL( ModelTypeManager.JBOSS_MODEL_TYPE_REPOSITORY );
final int size = modeler.modelTypeManager().modelTypeRepositories().length;
assertThat( modeler.modelTypeManager().modelTypeRepositories()[ 0 ], is( url ) );
modeler.modelTypeManager().moveModelTypeRepositoryDown( url );
assertThat( modeler.modelTypeManager().modelTypeRepositories()[ 1 ], is( url ) );
assertThat( modeler.modelTypeManager().modelTypeRepositories().length, is( size ) );
}
}

@Test
public void shouldMoveModelTypeRepositoryUp() throws Exception {
final URL url = new URL( ModelTypeManager.MAVEN_MODEL_TYPE_REPOSITORY );
final int size = modelTypeManager().modelTypeRepositories().length;
assertThat( modelTypeManager().modelTypeRepositories()[ 1 ], is( url ) );
modelTypeManager().moveModelTypeRepositoryUp( url );
assertThat( modelTypeManager().modelTypeRepositories()[ 0 ], is( url ) );
assertThat( modelTypeManager().modelTypeRepositories().length, is( size ) );
modeler().close();
try ( Modeler modeler = new ModeShapeModeler( TEST_REPOSITORY_STORE_PARENT_PATH, TEST_MODESHAPE_CONFIGURATION_PATH ) ) {
final URL url = new URL( ModelTypeManager.MAVEN_MODEL_TYPE_REPOSITORY );
final int size = modeler.modelTypeManager().modelTypeRepositories().length;
assertThat( modeler.modelTypeManager().modelTypeRepositories()[ 1 ], is( url ) );
modeler.modelTypeManager().moveModelTypeRepositoryUp( url );
assertThat( modeler.modelTypeManager().modelTypeRepositories()[ 0 ], is( url ) );
assertThat( modeler.modelTypeManager().modelTypeRepositories().length, is( size ) );
}
}

@Test
Expand All @@ -275,24 +280,25 @@ public Void run( final Session session,
return null;
}
} );
modelTypeManager().registerModelTypeRepository( MODEL_TYPE_REPOSITORY );
modelTypeManager().install( "test" );
assertThat( modelTypeManager().modelTypes().length == 0, is( true ) );
}

@Test
public void shouldNotMoveModelTypeRepositoryDownIfUrlLast() throws Exception {
final URL[] urls = modelTypeManager().modelTypeRepositories();
final URL url = new URL( ModelTypeManager.MAVEN_MODEL_TYPE_REPOSITORY );
modelTypeManager().moveModelTypeRepositoryDown( url );
assertThat( modelTypeManager().modelTypeRepositories(), is( urls ) );
modeler().close();
try ( Modeler modeler = new ModeShapeModeler( TEST_REPOSITORY_STORE_PARENT_PATH, TEST_MODESHAPE_CONFIGURATION_PATH ) ) {
final URL[] urls = modeler.modelTypeManager().modelTypeRepositories();
final URL url = new URL( ModelTypeManager.MAVEN_MODEL_TYPE_REPOSITORY );
modeler.modelTypeManager().moveModelTypeRepositoryDown( url );
assertThat( modeler.modelTypeManager().modelTypeRepositories(), is( urls ) );
}
}

@Test
public void shouldNotMoveModelTypeRepositoryUpIfUrlFirst() throws Exception {
final URL[] urls = modelTypeManager().modelTypeRepositories();
final URL url = new URL( ModelTypeManager.JBOSS_MODEL_TYPE_REPOSITORY );
modelTypeManager().moveModelTypeRepositoryUp( url );
modelTypeManager().moveModelTypeRepositoryUp( MODEL_TYPE_REPOSITORY );
assertThat( modelTypeManager().modelTypeRepositories(), is( urls ) );
}

Expand All @@ -311,15 +317,15 @@ public void shouldNotReturnNullModelTypesForCategory() throws Exception {
@Test
public void shouldRegisterModelTypeRepository() throws Exception {
final int size = modelTypeManager().modelTypeRepositories().length;
final URL[] repos = modelTypeManager().registerModelTypeRepository( MODEL_TYPE_REPOSITORY );
final URL url = new URL( "file:bogus" );
final URL[] repos = modelTypeManager().registerModelTypeRepository( url );
assertThat( repos, notNullValue() );
assertThat( repos.length, is( size + 1 ) );
assertThat( repos[ 0 ], is( MODEL_TYPE_REPOSITORY ) );
assertThat( repos[ 0 ], is( url ) );
}

@Test
public void shouldUninstall() throws Exception {
modelTypeManager().registerModelTypeRepository( MODEL_TYPE_REPOSITORY );
assertThat( modelTypeManager().install( "java" ).length, is( 0 ) );
assertThat( modelTypeManager().modelTypes().length, not( 0 ) );
assertThat( modelTypeManager().potentialSequencerClassNamesByCategory.isEmpty(), is( true ) );
Expand All @@ -341,7 +347,6 @@ public Void run( final Session session,

@Test
public void shouldUninstallWhenClassNamesUnresolvable() throws Exception {
modelTypeManager().registerModelTypeRepository( MODEL_TYPE_REPOSITORY );
assertThat( modelTypeManager().install( "xsd" ).length, not( 0 ) );
manager().run( modelTypeManager(), new SystemTask< Void >() {

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -121,13 +121,16 @@ public FileVisitResult visitFile( final Path file,
} );
}

public Manager manager() {
public Manager manager() throws Exception {
return TestUtil.manager( modeler() );
}

public ModeShapeModeler modeler() {
public ModeShapeModeler modeler() throws Exception {
if ( modeler == null )
modeler = new ModeShapeModeler( TEST_REPOSITORY_STORE_PARENT_PATH, TEST_MODESHAPE_CONFIGURATION_PATH );
for ( final URL url : modeler.modelTypeManager().modelTypeRepositories() )
modeler.modelTypeManager().unregisterModelTypeRepository( url );
modeler.modelTypeManager().registerModelTypeRepository( MODEL_TYPE_REPOSITORY );
return modeler;
}

Expand Down
Binary file not shown.

0 comments on commit 9e48f61

Please sign in to comment.