Package no.kommune.bergen.soa.svarut

Source Code of no.kommune.bergen.soa.svarut.VelocityModelFactoryTest

package no.kommune.bergen.soa.svarut;

import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertFalse;
import static org.junit.Assert.assertNotNull;
import static org.junit.Assert.assertNull;
import static org.junit.Assert.assertTrue;

import java.io.File;
import java.util.Map;

import no.kommune.bergen.soa.svarut.dao.ForsendelsesArkiv;
import no.kommune.bergen.soa.svarut.dao.ForsendelsesArkivTest;
import no.kommune.bergen.soa.svarut.domain.Forsendelse;

import org.junit.Before;
import org.junit.Test;

public class VelocityModelFactoryTest {
  private VelocityModelFactory velocityModelFactory;
  private static final String urlTemplate = "http://suse-oas-portal.iktfou.no:7778/wsproxy/forsendelse?forsendelsesId=";
  private static final String helpLink = "http://suse-oas-portal.iktfou.no:7777/wsproxy/HjelpTilNedlasting?forsendelsesId=";
  private static final String pdfLinkText = "Dokument ref.";
  private static final String helpLinkText = "Hjelp";
  private static final String readerDownloadLink = "http://get.adobe.com/no/reader/";
  private static final String readerDownloadLinkText = "Last ned her";

  @Before
  public void init() {
    velocityModelFactory = createVelocityModelFactory();
  }

  @Test
  public void createModel() {
    Forsendelse f = createForsendelse();
    Map<String, String> model = velocityModelFactory.createModel( f );
    verifyModel( model, f );
  }

  @Test
  public void takesTwoArguments() {
    boolean takesTwoArguments = velocityModelFactory.takesTwoArguments( "http://suse-oas-portal.iktfou.no:7778/wsproxy/forsendelse?forsendelsesId=%s" );
    assertFalse( takesTwoArguments );
    takesTwoArguments = velocityModelFactory.takesTwoArguments( "http://localhost:9080/forsendelse/service/rest/forsendelsesservice/download/%s/%s" );
    assertTrue( takesTwoArguments );
  }

  private Forsendelse createForsendelse() {
    ForsendelsesArkiv forsendelsesArkiv = ForsendelsesArkivTest.createForsendesesArkiv();
    Forsendelse forsendelse = ForsendelsesArkivTest.createForsendelse( 1 );
    String id = forsendelsesArkiv.save( forsendelse, ForsendelsesArkivTest.getTestDocument() );
    Forsendelse f = forsendelsesArkiv.retrieve( id );
    return f;
  }

  public static VelocityModelFactory createVelocityModelFactory() {
    return new VelocityModelFactory( urlTemplate + "%s", pdfLinkText, helpLink + "%s", helpLinkText, readerDownloadLink, readerDownloadLinkText );
  }

  public static void verifyModel( Map<String, String> model, Forsendelse f ) {
    for (Map.Entry<String, String> entry : model.entrySet()) {
      assertNotNull( entry.getKey() + " is null", entry.getValue() );
    }
    assertEquals( f.getAvsenderNavn(), model.get( "AVSENDER_NAVN" ) );
    assertEquals( f.getAvsenderAdresse1(), model.get( "AVSENDER_ADRESSE1" ) );
    assertEquals( f.getAvsenderAdresse2(), model.get( "AVSENDER_ADRESSE2" ) );
    assertEquals( f.getAvsenderAdresse3(), model.get( "AVSENDER_ADRESSE3" ) );
    assertEquals( f.getAvsenderPostnr(), model.get( "AVSENDER_POSTNR" ) );
    assertEquals( f.getAvsenderPoststed(), model.get( "AVSENDER_POSTSTED" ) );
    assertEquals( f.getNavn(), model.get( "NAVN" ) );
    assertEquals( f.getPostnr(), model.get( "POSTNR" ) );
    assertEquals( f.getPoststed(), model.get( "POSTSTED" ) );
    assertEquals( f.getAdresse1(), model.get( "ADRESSE1" ) );
    assertEquals( f.getAdresse2(), model.get( "ADRESSE2" ) );
    assertEquals( f.getAdresse3(), model.get( "ADRESSE3" ) );
    assertEquals( f.getNavn(), model.get( "NAVN" ) );
    assertEquals( f.getPostnr(), model.get( "POSTNR" ) );
    assertEquals( f.getPoststed(), model.get( "POSTSTED" ) );
    assertEquals( f.getLand(), model.get( "LAND" ) );
    assertEquals( f.getTittel(), model.get( "TITTEL" ) );
    assertEquals( f.getMeldingsTekst(), model.get( "MELDING" ) );
    assertEquals( f.getFnr(), model.get( "FNR" ) );
    assertEquals( String.valueOf( f.getOrgnr() ), model.get( "ORGNR" ) );
    assertEquals( f.getId(), model.get( "ID" ) );
    String url = model.get( "URL" );
    assertNotNull( url );
    assertTrue( url.indexOf( f.getId() ) > -1 );
    assertTrue( url.indexOf( urlTemplate ) > -1 );
    File file = new File( model.get( "FILE" ) );
    assertNotNull( file );
    assertTrue( file.getPath().indexOf( f.getId() ) > -1 );
    String helpUrl = model.get( "Help-Link" );
    assertNotNull( helpUrl );
    assertTrue( helpUrl.indexOf( f.getId() ) > -1 );
    assertTrue( helpUrl.indexOf( helpLink ) > -1 );
    assertNull( model.get( "DOKUMENT" ) );
    String readerDownloadUrl = model.get( "ReaderDownload-Link" );
    assertNotNull( readerDownloadUrl );
    assertTrue( readerDownloadUrl.indexOf( readerDownloadLink ) > -1 );
  }

}
TOP

Related Classes of no.kommune.bergen.soa.svarut.VelocityModelFactoryTest

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.