Project

General

Profile

1
package eu.dnetlib.data.search.transform;
2

    
3
import eu.dnetlib.data.search.transform.formatter.SimpleFormatter;
4
import org.apache.log4j.BasicConfigurator;
5
import org.junit.Before;
6
import org.junit.Test;
7

    
8
import java.io.IOException;
9
import java.util.ArrayList;
10
import java.util.Locale;
11

    
12
public class FormatterTest {
13
	@Before
14
	public void setup() throws IOException {
15
		BasicConfigurator.configure();
16
	}
17
	@Test
18
	public void TestFormatter() throws Exception{
19
		
20
		String per1 = "<?xml version=\"1.0\" encoding=\"UTF-8\"?> <record xmlns:dri=\"http://www.driver-repository.eu/namespace/dri\" xmlns:oaf=\"http://namespace.openaire.eu/oaf\" xmlns:dc=\"http://purl.org/dc/elements/1.1/\" type=\"person\">    <field name=\"personId\" multiplicity=\"false\" value=\"WOS:000285231000019_E._Egecioglu\" label=\"personId\" indexId=\"dri:objIdentifier\"/>    <field name=\"fullname\" multiplicity=\"false\" value=\"E. Egecioglu\" label=\"Fullname\" indexId=\"\"/>    <field multiplicity=\"true\" name=\"coauthor\">       <field name=\"personId\" multiplicity=\"false\" value=\"WOS:000285231000019_K._P._Skibicka\" label=\"personId\" indexId=\"\"/>       <field name=\"fullname\" multiplicity=\"false\" value=\"K. P. Skibicka\" label=\"Fullname\" indexId=\"\"/>    </field>    <field multiplicity=\"true\" name=\"coauthor\">       <field name=\"personId\" multiplicity=\"false\" value=\"WOS:000285231000019_E._Hrabovszky\" label=\"personId\" indexId=\"\"/>       <field name=\"fullname\" multiplicity=\"false\" value=\"E. Hrabovszky\" label=\"Fullname\" indexId=\"\"/>    </field>    <field multiplicity=\"true\" name=\"coauthor\">       <field name=\"personId\" multiplicity=\"false\" value=\"WOS:000285231000019_Z._Liposits\" label=\"personId\" indexId=\"\"/>       <field name=\"fullname\" multiplicity=\"false\" value=\"Z. Liposits\" label=\"Fullname\" indexId=\"\"/>    </field>    <field multiplicity=\"true\" name=\"coauthor\">       <field name=\"personId\" multiplicity=\"false\" value=\"WOS:000285231000019_J._A._Engel\" label=\"personId\" indexId=\"\"/>       <field name=\"fullname\" multiplicity=\"false\" value=\"J. A. Engel\" label=\"Fullname\" indexId=\"\"/>    </field>    <field multiplicity=\"true\" name=\"coauthor\">       <field name=\"personId\" multiplicity=\"false\" value=\"WOS:000285231000019_E._Jerlhag\" label=\"personId\" indexId=\"\"/>       <field name=\"fullname\" multiplicity=\"false\" value=\"E. Jerlhag\" label=\"Fullname\" indexId=\"\"/>    </field>    <field multiplicity=\"true\" name=\"coauthor\">       <field name=\"personId\" multiplicity=\"false\" value=\"WOS:000285231000019_C._S._Molnar\" label=\"personId\" indexId=\"\"/>       <field name=\"fullname\" multiplicity=\"false\" value=\"C. S. Molnar\" label=\"Fullname\" indexId=\"\"/>    </field>    <field multiplicity=\"true\" name=\"coauthor\">       <field name=\"personId\" multiplicity=\"false\" value=\"WOS:000285231000019_S._L._Dickson\" label=\"personId\" indexId=\"\"/>       <field name=\"fullname\" multiplicity=\"false\" value=\"S. L. Dickson\" label=\"Fullname\" indexId=\"\"/>    </field>    <field multiplicity=\"true\" name=\"coauthor\">       <field name=\"personId\" multiplicity=\"false\" value=\"WOS:000285231000019_M._Alvarez-Crespo\" label=\"personId\" indexId=\"\"/>       <field name=\"fullname\" multiplicity=\"false\" value=\"M. Alvarez-Crespo\" label=\"Fullname\" indexId=\"\"/>    </field>    <field multiplicity=\"true\" name=\"coauthor\">       <field name=\"personId\" multiplicity=\"false\" value=\"WOS:000285231000019_C._Hansson\" label=\"personId\" indexId=\"\"/>       <field name=\"fullname\" multiplicity=\"false\" value=\"C. Hansson\" label=\"Fullname\" indexId=\"\"/>    </field>    <field multiplicity=\"true\" name=\"result\">       <field name=\"resultId\" multiplicity=\"false\" value=\"WOS:000285231000019\" label=\"resultId\" indexId=\"\"/>       <field name=\"title\" multiplicity=\"true\" value=\"BLOCKADE OF CENTRAL NICOTINE ACETYLCHOLINE RECEPTOR SIGNALING ATTENUATE GHRELIN-INDUCED FOOD INTAKE IN RODENTS\" label=\"Title\" indexId=\"\"/>       <field name=\"publicationYear\" multiplicity=\"false\" value=\"2010\" label=\"Publication Year\" indexId=\"\"/>    </field> </record>";
21
		
22
		String per2 = "<?xml version=\"1.0\" encoding=\"UTF-8\"?> <record xmlns:dri=\"http://www.driver-repository.eu/namespace/dri\" xmlns:oaf=\"http://namespace.openaire.eu/oaf\" xmlns:dc=\"http://purl.org/dc/elements/1.1/\" type=\"person\">    <field name=\"personId\" multiplicity=\"false\" value=\"WOS:000285231000019_E._Egecioglu\" label=\"personId\" indexId=\"dri:objIdentifier\"/>    <field name=\"fullname\" multiplicity=\"false\" value=\"E. Egecioglu\" label=\"Fullname\" indexId=\"\"/>    <field multiplicity=\"true\" name=\"coauthor\">       <field name=\"personId\" multiplicity=\"false\" value=\"WOS:000285231000019_K._P._Skibicka\" label=\"personId\" indexId=\"\"/>       <field name=\"fullname\" multiplicity=\"false\" value=\"K. P. Skibicka\" label=\"Fullname\" indexId=\"\"/>    </field>    <field multiplicity=\"true\" name=\"coauthor\">       <field name=\"personId\" multiplicity=\"false\" value=\"WOS:000285231000019_E._Hrabovszky\" label=\"personId\" indexId=\"\"/>       <field name=\"fullname\" multiplicity=\"false\" value=\"E. Hrabovszky\" label=\"Fullname\" indexId=\"\"/>    </field>    <field multiplicity=\"true\" name=\"coauthor\">       <field name=\"personId\" multiplicity=\"false\" value=\"WOS:000285231000019_Z._Liposits\" label=\"personId\" indexId=\"\"/>       <field name=\"fullname\" multiplicity=\"false\" value=\"Z. Liposits\" label=\"Fullname\" indexId=\"\"/>    </field>    <field multiplicity=\"true\" name=\"coauthor\">       <field name=\"personId\" multiplicity=\"false\" value=\"WOS:000285231000019_J._A._Engel\" label=\"personId\" indexId=\"\"/>       <field name=\"fullname\" multiplicity=\"false\" value=\"J. A. Engel\" label=\"Fullname\" indexId=\"\"/>    </field>    <field multiplicity=\"true\" name=\"coauthor\">       <field name=\"personId\" multiplicity=\"false\" value=\"WOS:000285231000019_E._Jerlhag\" label=\"personId\" indexId=\"\"/>       <field name=\"fullname\" multiplicity=\"false\" value=\"E. Jerlhag\" label=\"Fullname\" indexId=\"\"/>    </field>    <field multiplicity=\"true\" name=\"coauthor\">       <field name=\"personId\" multiplicity=\"false\" value=\"WOS:000285231000019_C._S._Molnar\" label=\"personId\" indexId=\"\"/>       <field name=\"fullname\" multiplicity=\"false\" value=\"C. S. Molnar\" label=\"Fullname\" indexId=\"\"/>    </field>    <field multiplicity=\"true\" name=\"coauthor\">       <field name=\"personId\" multiplicity=\"false\" value=\"WOS:000285231000019_S._L._Dickson\" label=\"personId\" indexId=\"\"/>       <field name=\"fullname\" multiplicity=\"false\" value=\"S. L. Dickson\" label=\"Fullname\" indexId=\"\"/>    </field>    <field multiplicity=\"true\" name=\"coauthor\">       <field name=\"personId\" multiplicity=\"false\" value=\"WOS:000285231000019_M._Alvarez-Crespo\" label=\"personId\" indexId=\"\"/>       <field name=\"fullname\" multiplicity=\"false\" value=\"M. Alvarez-Crespo\" label=\"Fullname\" indexId=\"\"/>    </field>    <field multiplicity=\"true\" name=\"coauthor\">       <field name=\"personId\" multiplicity=\"false\" value=\"WOS:000285231000019_C._Hansson\" label=\"personId\" indexId=\"\"/>       <field name=\"fullname\" multiplicity=\"false\" value=\"C. Hansson\" label=\"Fullname\" indexId=\"\"/>    </field>    <field multiplicity=\"true\" name=\"result\">       <field name=\"resultId\" multiplicity=\"false\" value=\"WOS:000285231000019\" label=\"resultId\" indexId=\"\"/>       <field name=\"title\" multiplicity=\"true\" value=\"BLOCKADE OF CENTRAL NICOTINE ACETYLCHOLINE RECEPTOR SIGNALING ATTENUATE GHRELIN-INDUCED FOOD INTAKE IN RODENTS\" label=\"Title\" indexId=\"\"/>       <field name=\"publicationYear\" multiplicity=\"false\" value=\"2010\" label=\"Publication Year\" indexId=\"\"/>    </field> </record>";
23
		
24
		String per3 = "<?xml version=\"1.0\" encoding=\"UTF-8\"?> <record xmlns:dri=\"http://www.driver-repository.eu/namespace/dri\" xmlns:oaf=\"http://namespace.openaire.eu/oaf\" xmlns:dc=\"http://purl.org/dc/elements/1.1/\" type=\"person\">    <field name=\"personId\" multiplicity=\"false\" value=\"WOS:000285231000019_E._Egecioglu\" label=\"personId\" indexId=\"dri:objIdentifier\"/>    <field name=\"fullname\" multiplicity=\"false\" value=\"E. Egecioglu\" label=\"Fullname\" indexId=\"\"/>    <field multiplicity=\"true\" name=\"coauthor\">       <field name=\"personId\" multiplicity=\"false\" value=\"WOS:000285231000019_K._P._Skibicka\" label=\"personId\" indexId=\"\"/>       <field name=\"fullname\" multiplicity=\"false\" value=\"K. P. Skibicka\" label=\"Fullname\" indexId=\"\"/>    </field>    <field multiplicity=\"true\" name=\"coauthor\">       <field name=\"personId\" multiplicity=\"false\" value=\"WOS:000285231000019_E._Hrabovszky\" label=\"personId\" indexId=\"\"/>       <field name=\"fullname\" multiplicity=\"false\" value=\"E. Hrabovszky\" label=\"Fullname\" indexId=\"\"/>    </field>    <field multiplicity=\"true\" name=\"coauthor\">       <field name=\"personId\" multiplicity=\"false\" value=\"WOS:000285231000019_Z._Liposits\" label=\"personId\" indexId=\"\"/>       <field name=\"fullname\" multiplicity=\"false\" value=\"Z. Liposits\" label=\"Fullname\" indexId=\"\"/>    </field>    <field multiplicity=\"true\" name=\"coauthor\">       <field name=\"personId\" multiplicity=\"false\" value=\"WOS:000285231000019_J._A._Engel\" label=\"personId\" indexId=\"\"/>       <field name=\"fullname\" multiplicity=\"false\" value=\"J. A. Engel\" label=\"Fullname\" indexId=\"\"/>    </field>    <field multiplicity=\"true\" name=\"coauthor\">       <field name=\"personId\" multiplicity=\"false\" value=\"WOS:000285231000019_E._Jerlhag\" label=\"personId\" indexId=\"\"/>       <field name=\"fullname\" multiplicity=\"false\" value=\"E. Jerlhag\" label=\"Fullname\" indexId=\"\"/>    </field>    <field multiplicity=\"true\" name=\"coauthor\">       <field name=\"personId\" multiplicity=\"false\" value=\"WOS:000285231000019_C._S._Molnar\" label=\"personId\" indexId=\"\"/>       <field name=\"fullname\" multiplicity=\"false\" value=\"C. S. Molnar\" label=\"Fullname\" indexId=\"\"/>    </field>    <field multiplicity=\"true\" name=\"coauthor\">       <field name=\"personId\" multiplicity=\"false\" value=\"WOS:000285231000019_S._L._Dickson\" label=\"personId\" indexId=\"\"/>       <field name=\"fullname\" multiplicity=\"false\" value=\"S. L. Dickson\" label=\"Fullname\" indexId=\"\"/>    </field>    <field multiplicity=\"true\" name=\"coauthor\">       <field name=\"personId\" multiplicity=\"false\" value=\"WOS:000285231000019_M._Alvarez-Crespo\" label=\"personId\" indexId=\"\"/>       <field name=\"fullname\" multiplicity=\"false\" value=\"M. Alvarez-Crespo\" label=\"Fullname\" indexId=\"\"/>    </field>    <field multiplicity=\"true\" name=\"coauthor\">       <field name=\"personId\" multiplicity=\"false\" value=\"WOS:000285231000019_C._Hansson\" label=\"personId\" indexId=\"\"/>       <field name=\"fullname\" multiplicity=\"false\" value=\"C. Hansson\" label=\"Fullname\" indexId=\"\"/>    </field>    <field multiplicity=\"true\" name=\"result\">       <field name=\"resultId\" multiplicity=\"false\" value=\"WOS:000285231000019\" label=\"resultId\" indexId=\"\"/>       <field name=\"title\" multiplicity=\"true\" value=\"BLOCKADE OF CENTRAL NICOTINE ACETYLCHOLINE RECEPTOR SIGNALING ATTENUATE GHRELIN-INDUCED FOOD INTAKE IN RODENTS\" label=\"Title\" indexId=\"\"/>       <field name=\"publicationYear\" multiplicity=\"false\" value=\"2010\" label=\"Publication Year\" indexId=\"\"/>    </field> </record>";
25
		
26
		String output = null;
27
		Locale locale = new Locale("en");
28
		
29
		ArrayList<String> initResults = new ArrayList<String>();
30
		ArrayList<String> cleanResults = new ArrayList<String>();
31
		
32
		initResults.add(per1);
33
		initResults.add(per2);
34
		initResults.add(per3);
35
		
36
		SimpleFormatter formatter = new SimpleFormatter(); 
37

    
38
		cleanResults = (ArrayList<String>) formatter.clearDeclarations(initResults);
39
		System.out.println(initResults.toString());
40
		
41
	}
42
}
(2-2/5)