Package com.github.hakko.musiccabinet.parser.musicbrainz

Source Code of com.github.hakko.musiccabinet.parser.musicbrainz.ArtistQueryParserTest

package com.github.hakko.musiccabinet.parser.musicbrainz;

import static junit.framework.Assert.assertEquals;
import static org.junit.Assert.assertNull;

import org.junit.Test;

import com.github.hakko.musiccabinet.domain.model.music.MBArtist;
import com.github.hakko.musiccabinet.exception.ApplicationException;
import com.github.hakko.musiccabinet.util.ResourceUtil;

public class ArtistQueryParserTest {

  private static final String ARTIST_QUERY_DATE_FILE =
      "musicbrainz/xml/artistQuery-date.xml";

  private static final String ARTIST_QUERY_EMPTY_FILE =
    "musicbrainz/xml/artistQuery-empty.xml";
 
  private static final String ARTIST_QUERY_FILE =
    "musicbrainz/xml/artistQuery.xml";

  // constant values below are copied from file above
  private static final String MBID = "d347406f-839d-4423-9a28-188939282afa";
  private static final String NAME = "Cult of Luna";
  private static final String COUNTRY_CODE = "SE";
  private static final short START_YEAR = 1998;
  private static final boolean ACTIVE = true;

  // year from date 1966-06-03 in file artistQuery-date.xml
  private static final short YEAR_PART = 1966;
 
  @Test
  public void emptyResourceFileCorrectlyParsed() throws ApplicationException {
    ArtistQueryParser parser = new ArtistQueryParserImpl(
        new ResourceUtil(ARTIST_QUERY_EMPTY_FILE).getInputStream());
   
    MBArtist artist = parser.getArtist();
   
    assertNull(artist);
  }

  @Test
  public void resourceFileCorrectlyParsed() throws ApplicationException {
    ArtistQueryParser parser = new ArtistQueryParserImpl(
        new ResourceUtil(ARTIST_QUERY_FILE).getInputStream());
   
    MBArtist artist = parser.getArtist();
   
    assertEquals(MBID, artist.getMbid());
    assertEquals(NAME, artist.getName());
    assertEquals(COUNTRY_CODE, artist.getCountryCode());
    assertEquals(START_YEAR, artist.getStartYear());
    assertEquals(ACTIVE, artist.isActive());
  }

  @Test
  public void dateGetsStoredAsYearOnly() throws ApplicationException {
    ArtistQueryParser parser = new ArtistQueryParserImpl(
        new ResourceUtil(ARTIST_QUERY_DATE_FILE).getInputStream());
   
    MBArtist artist = parser.getArtist();
   
    assertEquals(YEAR_PART, artist.getStartYear());
  }

}
TOP

Related Classes of com.github.hakko.musiccabinet.parser.musicbrainz.ArtistQueryParserTest

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.