package org.pentaho.test.platform.engine.services;
import java.io.ByteArrayInputStream;
import java.io.ByteArrayOutputStream;
import java.io.InputStream;
import java.util.HashMap;
import java.util.Map;
import org.pentaho.platform.api.engine.IFileInfo;
import org.pentaho.platform.api.engine.IParameterProvider;
import org.pentaho.platform.api.engine.IPentahoSession;
import org.pentaho.platform.api.engine.ISolutionFile;
import org.pentaho.platform.engine.core.solution.SimpleParameterProvider;
import org.pentaho.platform.engine.core.system.PentahoSessionHolder;
import org.pentaho.platform.engine.core.system.StandaloneSession;
import org.pentaho.platform.engine.services.messages.Messages;
import org.pentaho.platform.engine.services.solution.SimpleContentGenerator;
import org.pentaho.platform.engine.services.solution.SolutionRepoFileInfo;
import org.pentaho.platform.engine.services.solution.SolutionRepoLoadContentGenerator;
import org.pentaho.test.platform.engine.core.BaseTest;
import junit.framework.TestCase;
@SuppressWarnings({"all"})
public class SolutionRepoFileInfoTest extends BaseTest {
private static final String SOLUTION_PATH = "test-src/solution";
public String getSolutionPath() {
return SOLUTION_PATH;
}
public void testState() {
String doc = "<state-file><documentation></documentation></state-file>";
ByteArrayInputStream in = new ByteArrayInputStream( doc.getBytes() );
SolutionRepoFileInfo solutionRepoFileInfo = new SolutionRepoFileInfo();
IFileInfo fileInfo = solutionRepoFileInfo.getFileInfo(null, in);
assertEquals( "bad author", "", fileInfo.getAuthor() );
}
public void testState2() {
String doc = "<state-file><documentation><author><![CDATA[test author]]></author><title><![CDATA[test title]]></title><description><![CDATA[test description]]></description><icon><![CDATA[test icon]]></icon></documentation></state-file>";
ByteArrayInputStream in = new ByteArrayInputStream( doc.getBytes() );
SolutionRepoFileInfo solutionRepoFileInfo = new SolutionRepoFileInfo();
IFileInfo fileInfo = solutionRepoFileInfo.getFileInfo(null, in);
assertEquals( "bad author", "test author", fileInfo.getAuthor() );
assertEquals( "bad title", "test title", fileInfo.getTitle() );
assertEquals( "bad description", "test description", fileInfo.getDescription() );
assertEquals( "bad icon", "test icon", fileInfo.getIcon() );
}
public void testBadDoc() {
String doc = "afdadfadf";
ByteArrayInputStream in = new ByteArrayInputStream( doc.getBytes() );
SolutionRepoFileInfo solutionRepoFileInfo = new SolutionRepoFileInfo();
solutionRepoFileInfo.setLogger( new SolutionRepoLoadContentGenerator() );
IFileInfo fileInfo = solutionRepoFileInfo.getFileInfo(null, in);
assertNull( fileInfo );
}
public void testNullStream() {
SolutionRepoFileInfo solutionRepoFileInfo = new SolutionRepoFileInfo();
IFileInfo fileInfo = solutionRepoFileInfo.getFileInfo(null, null);
assertNull( fileInfo );
}
public void testLogger() {
SolutionRepoFileInfo solutionRepoFileInfo = new SolutionRepoFileInfo();
solutionRepoFileInfo.setLogger( new SolutionRepoLoadContentGenerator() );
}
}