package com.enonic.cms.core.plugin.ext;
import java.io.IOException;
import java.io.InputStream;
import org.junit.Test;
import com.enonic.cms.api.plugin.ext.TaskHandler;
import com.enonic.cms.api.plugin.ext.TextExtractor;
import static org.junit.Assert.*;
public class TextExtractorExtensionsTest
extends ExtensionPointTest<TextExtractor, TextExtractorExtensions>
{
public TextExtractorExtensionsTest()
{
super( TextExtractor.class );
}
@Override
protected TextExtractorExtensions createExtensionPoint()
{
return new TextExtractorExtensions();
}
private TextExtractor create( final String displayName, final String canHandleType )
{
final TextExtractor ext = new TextExtractor()
{
@Override
public boolean canHandle( final String mimeType )
{
return canHandleType.equals( mimeType );
}
@Override
public String extractText( final String mimeType, final InputStream stream, final String encoding )
throws IOException
{
return null;
}
};
ext.setDisplayName( displayName );
return ext;
}
@Override
protected TextExtractor createOne()
{
return create( "a", "text/plain" );
}
@Override
protected TextExtractor createTwo()
{
return create( "b", "text/html" );
}
@Test
public void testGetByMimeType()
{
assertNull( this.extensions.getByMimeType( "text/plain" ) );
this.extensions.addExtension( this.ext1 );
assertSame( this.ext1, this.extensions.getByMimeType( "text/plain" ) );
}
}