Skip to content

Commit

Permalink
FORGE-2400: Tests now use the simple container
Browse files Browse the repository at this point in the history
  • Loading branch information
gastaldi committed Aug 6, 2015
1 parent 8f880fe commit c78aae8
Show file tree
Hide file tree
Showing 5 changed files with 49 additions and 30 deletions.
6 changes: 0 additions & 6 deletions script/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -44,12 +44,6 @@
<artifactId>arquillian-furnace-classpath</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.jboss.forge.furnace.container</groupId>
<artifactId>cdi</artifactId>
<classifier>forge-addon</classifier>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.jboss.forge.addon</groupId>
<artifactId>shell-test-harness</artifactId>
Expand Down
19 changes: 12 additions & 7 deletions script/src/test/java/org/jboss/forge/addon/script/ScriptTest.java
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,6 @@

import java.io.File;

import javax.inject.Inject;
import javax.script.ScriptContext;
import javax.script.ScriptEngine;
import javax.script.ScriptEngineManager;
Expand All @@ -21,8 +20,10 @@
import org.jboss.forge.addon.resource.Resource;
import org.jboss.forge.addon.resource.ResourceFactory;
import org.jboss.forge.addon.script.impl.ForgeScriptEngineFactory;
import org.jboss.forge.furnace.container.simple.lifecycle.SimpleContainer;
import org.jboss.forge.furnace.util.OperatingSystemUtils;
import org.junit.Assert;
import org.junit.Before;
import org.junit.Test;
import org.junit.runner.RunWith;

Expand All @@ -33,16 +34,20 @@
@RunWith(Arquillian.class)
public class ScriptTest
{
@Inject
private ForgeScriptEngineFactory factory;
protected ForgeScriptEngineFactory engineFactory;
protected ResourceFactory resourceFactory;

@Inject
private ResourceFactory resourceFactory;
@Before
public void setUp()
{
engineFactory = SimpleContainer.getServices(getClass().getClassLoader(), ForgeScriptEngineFactory.class).get();
resourceFactory = SimpleContainer.getServices(getClass().getClassLoader(), ResourceFactory.class).get();
}

@Test
public void testLookupScriptEngineFactoryThroughContainer() throws Exception
{
Assert.assertThat(factory, notNullValue());
Assert.assertThat(engineFactory, notNullValue());
}

@Test
Expand All @@ -58,7 +63,7 @@ public void testScriptExecution() throws Exception
{
Resource<File> tmpDir = resourceFactory.create(OperatingSystemUtils.createTempDir());
ScriptContext context = ScriptContextBuilder.create().currentResource(tmpDir).build();
ScriptEngine scriptEngine = factory.getScriptEngine();
ScriptEngine scriptEngine = engineFactory.getScriptEngine();
Assert.assertThat(tmpDir.getChild("newfile.txt").exists(), is(false));
scriptEngine.eval("touch newfile.txt", context);
Assert.assertThat(tmpDir.getChild("newfile.txt").exists(), is(true));
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,6 @@
import java.io.File;
import java.nio.file.Files;

import javax.inject.Inject;
import javax.script.ScriptContext;

import org.jboss.arquillian.junit.Arquillian;
Expand All @@ -24,9 +23,11 @@
import org.jboss.forge.addon.resource.ResourceFactory;
import org.jboss.forge.addon.script.ScriptContextBuilder;
import org.jboss.forge.addon.script.impl.ForgeScriptEngineFactory;
import org.jboss.forge.furnace.container.simple.lifecycle.SimpleContainer;
import org.jboss.forge.furnace.util.OperatingSystemUtils;
import org.junit.Assert;
import org.junit.Assume;
import org.junit.Before;
import org.junit.Test;
import org.junit.runner.RunWith;

Expand All @@ -37,11 +38,15 @@
@RunWith(Arquillian.class)
public class ScriptFileResourceTest
{
@Inject
private ForgeScriptEngineFactory engineFactory;
private ResourceFactory resourceFactory;

@Inject
private ForgeScriptEngineFactory engineFactory;
@Before
public void setUp()
{
engineFactory = SimpleContainer.getServices(getClass().getClassLoader(), ForgeScriptEngineFactory.class).get();
resourceFactory = SimpleContainer.getServices(getClass().getClassLoader(), ResourceFactory.class).get();
}

@Test
public void testScriptFileResource() throws Exception
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,8 +9,6 @@

import java.util.concurrent.TimeUnit;

import javax.inject.Inject;

import org.hamcrest.CoreMatchers;
import org.jboss.arquillian.container.test.api.Deployment;
import org.jboss.arquillian.junit.Arquillian;
Expand All @@ -24,6 +22,8 @@
import org.jboss.forge.addon.ui.result.Result;
import org.jboss.forge.arquillian.AddonDependencies;
import org.jboss.forge.arquillian.archive.AddonArchive;
import org.jboss.forge.furnace.container.simple.Service;
import org.jboss.forge.furnace.container.simple.lifecycle.SimpleContainer;
import org.jboss.forge.furnace.util.OperatingSystemUtils;
import org.jboss.shrinkwrap.api.ShrinkWrap;
import org.junit.Assert;
Expand All @@ -38,29 +38,27 @@
@RunWith(Arquillian.class)
public class RunCommandTest
{
@SuppressWarnings("deprecation")
@Deployment
@AddonDependencies
public static AddonArchive getDeployment()
{
AddonArchive archive = ShrinkWrap
return ShrinkWrap
.create(AddonArchive.class)
.addClasses(ThrowExceptionCommand.class)
.addBeansXML();

return archive;
.addAsServiceProvider(Service.class, RunCommandTest.class, ThrowExceptionCommand.class);
}

private static final int COMMAND_TIMEOUT = 5000;

@Inject
private ShellTest shellTest;

@Inject
private ResourceFactory resourceFactory;

@Before
public void setUp() throws Exception
{
shellTest = SimpleContainer.getServices(getClass().getClassLoader(), ShellTest.class).get();
resourceFactory = SimpleContainer.getServices(getClass().getClassLoader(), ResourceFactory.class).get();
shellTest.clearScreen();
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,15 +6,32 @@
*/
package org.jboss.forge.addon.script.ui;

import org.jboss.forge.addon.ui.annotation.Command;
import org.jboss.forge.addon.ui.command.AbstractUICommand;
import org.jboss.forge.addon.ui.context.UIBuilder;
import org.jboss.forge.addon.ui.context.UIContext;
import org.jboss.forge.addon.ui.context.UIExecutionContext;
import org.jboss.forge.addon.ui.metadata.UICommandMetadata;
import org.jboss.forge.addon.ui.result.Result;
import org.jboss.forge.addon.ui.util.Metadata;

/**
* @author <a href="mailto:stale.pedersen@jboss.org">Ståle W. Pedersen</a>
*/
public class ThrowExceptionCommand
public class ThrowExceptionCommand extends AbstractUICommand
{
@Command("throw-exception")
public String throwIt()
@Override
public void initializeUI(UIBuilder builder) throws Exception
{
}

@Override
public UICommandMetadata getMetadata(UIContext context)
{
return Metadata.forCommand(getClass()).name("throw-it");
}

@Override
public Result execute(UIExecutionContext context) throws Exception
{
throw new UnsupportedOperationException("Intentional failure.");
}
Expand Down

0 comments on commit c78aae8

Please sign in to comment.