// Copyright 2013 Michel Kraemer // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. // You may obtain a copy of the License at // // http://www.apache.org/licenses/LICENSE-2.0 // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. package de.undercouch.citeproc.ris; import static org.junit.Assert.assertEquals; import org.junit.Test; import de.undercouch.citeproc.csl.CSLItemData; import de.undercouch.citeproc.csl.CSLType; /** * Tests {@link RISConverter} * @author Michel Kraemer */ public class RISConverterTest { /** * Tests if a single entry can be converted correctly */ @Test public void singleEntry() { RISReference ref = new RISReferenceBuilder() .type(RISType.RPRT) .title("The Programming Language B") .authors("Johnson, S. C.", "Kernighan, B. W.") .year("1973") .number("8") .publisher("Bell Laboratories,") .place("Murray Hill, NJ, USA") .label("Johnson:1973:PLB") .build(); RISConverter conv = new RISConverter(); CSLItemData item = conv.toItemData(ref); assertEquals(CSLType.REPORT, item.getType()); assertEquals("The Programming Language B", item.getTitle()); assertEquals("1973", item.getIssued().getRaw()); assertEquals("8", item.getNumber()); assertEquals("Bell Laboratories,", item.getPublisher()); assertEquals("Murray Hill, NJ, USA", item.getEventPlace()); assertEquals("Murray Hill, NJ, USA", item.getPublisherPlace()); assertEquals("Johnson:1973:PLB", item.getId()); assertEquals(2, item.getAuthor().length); assertEquals("S. C.", item.getAuthor()[0].getGiven()); assertEquals("Johnson", item.getAuthor()[0].getFamily()); assertEquals("B. W.", item.getAuthor()[1].getGiven()); assertEquals("Kernighan", item.getAuthor()[1].getFamily()); } }