package eu.dnetlib.clients;

import junit.framework.Assert;

import org.apache.cxf.interceptor.LoggingInInterceptor;
import org.apache.cxf.jaxws.JaxWsProxyFactoryBean;
import org.apache.log4j.BasicConfigurator;
import org.junit.BeforeClass;
import org.junit.Test;

import eu.dnetlib.clients.data.search.ws.SearchWebService;
import eu.dnetlib.clients.data.search.ws.SearchWebServiceException;
import eu.dnetlib.domain.data.FormattedSearchResult;
import eu.dnetlib.domain.data.SearchResult;

public class TestSearchService {

	static SearchWebService sws = null;
	
	@BeforeClass
	public static void setup() {
		
		BasicConfigurator.configure();
		
		JaxWsProxyFactoryBean factory = new JaxWsProxyFactoryBean();
		factory.setServiceClass(SearchWebService.class);
		factory.setAddress("http://88.197.53.114:8080/uoa-search-latest/services/searchWebService");
		
		sws = (SearchWebService) factory.create();
	}
	
	@Test
	public void testFormat() throws SearchWebServiceException {
		FormattedSearchResult r = sws.search("oaftype=datasource", "datasourceVocabularyTransformer", "vocabulary", null, 1, 10);

//		System.out.println(r.getFormattedResult());
		
		Assert.assertEquals(10, r.getResultsNumber());
	}
	
	@Test
	public void testSimple() throws SearchWebServiceException {
		SearchResult r = sws.search("oaftype=datasource", "datasourceVocabularyTransformer", null, 1, 10);

		Assert.assertEquals(10, r.getSize());
	}
}
