import java.io.BufferedReader;
import java.io.InputStreamReader;

import org.apache.log4j.BasicConfigurator;
import org.junit.*;

import eu.dnetlib.data.utility.resource_discovery.plugin.ResourceDiscoveryPlugin;


public class TestPlugin {
	
	MySourceDataProvider provider;
	static private int N = 7;
	
	@BeforeClass
	public static void Config() {
		BasicConfigurator.configure();
	}
	
	@Before
	public void InitializeProvider() throws Exception {
		provider = new MySourceDataProvider();
		for(int i=7;i<=N;i++) {
			BufferedReader br = new BufferedReader(new InputStreamReader(TestPlugin.class.getResourceAsStream("record"+i+".xml")));
			
			String line;
			String record = "";
			while((line = br.readLine()) != null)
				record += line;
			provider.addDMFRecord(record);
		}
	}
	
	@Test
	public void TestResourcePlugin() throws Exception {
		ResourceDiscoveryPlugin plugin = new ResourceDiscoveryPlugin();
		plugin.setDao(new MyResultDao());
		plugin.setSourceDataProvider(provider);
		plugin.init();
		
		//System.out.println(provider.getRecords(1, 2));
		//System.out.println(provider.getRecords(1, 2).size());
		plugin.execute();
		System.out.println("\n\n" + plugin.getDao().getResults(1, 1));
	}
	
}
