Exercise 10b: Music Data and Testing

Last modified by superadmin on 2018-01-12 20:26

Exercise 10b: Music Data and Testing

10. uzdevuma sākums (iepriekšējā diena)

  1. Svarīgi: Lai netraucētu citus izstrādātājus, ļoti ieteicams atslēgt skaņu - izvēlas 'Mute', ar labo klikšķi no audio ikonas uz augšējā paneļa. Ja skaņa nav atslēgta, tad jums jāpārliecinās, ka audio izejā ir iespraustas austiņas un dators apkārtējiem dzirdamu skaņu nerada.
  2. Iegūst MP3 failu datus no kompaktdiska - sk. instrukciju MP3 iegūšana no mūzikas CD. Pārliecinās, ka direktorijā ~/mp3 ir izveidojusies direktorija ar dziesmu nosaukumiem; Ja nepieciešams, pārsauc tos atbilstoši saprātīgām failu nosaukšanas konvencijām. Ieteicamākais veids, kā saukt MP3 failus ir sekojošs: 
Ansamblis - 01 - Pirmaa Treka Nosaukums.mp3
Ansamblis - 02 - Otraa Treka Nosaukums.mp3
Ansamblis - 03 - Treshaa Treka Nosaukums.mp3
  1. Izmaina failu ex10/src/main/resources/data/persons.xml - ieraksta tajā reālus ansambļu dalībniekus un/vai individuālus izpildītājus. Piešķir katram no tiem unikālu identifikatoru "person_1", "person_2", utml.
  2. Iekopē MP3 failus no ~/mp3 direktorijas uz ex10/src/main/resources/data
  3. Izmaina žanrus failā ex10/src/main/resources/data/catalog.xml. Izvēlas žanru, piemēram 
<genres>
  <genre id="genre_1">
    <name>Folksongs</name>
  </genre>
</genres>
  1. Izmaina māksliniekus (t.i. ansambļus un individuālos izpildītājus). Veido atsauces uz failā persons.xml atrodamajiem cilvēkiem. 
  2. Izmaina albuma aprakstu - failā catalog.xml anotē 1 vai 2 mūzikas albumus. Albuma elementā pievieno arī trekus. Jāizmanto sekojoša sintakse: 
<album id="album_3">
  <title>Albuma nosaukums</title>
  <year>2001</year>
  <genre idref="genre_1"/>
  <genre idref="genre_2"/>
  <artist idref="artist_1"/>
  <track num="1" title="Pirma dziesma" mp3="Artist_01_DziesmasVirsraksts1.mp3"/>
  <track num="1" title="Pirma dziesma" mp3="Artist_02_DziesmasVirsraksts2.mp3"/>
</album>
  1. Izmaina XML gramatikas failu catalog.xsd, ieviešot tajā jaunu apakšelementu zem "album": 
<xsd:complexType name="albumType">
  <xsd:sequence>
    <xsd:element name="title" type="xsd:string"/>
    <xsd:element name="year" type="xsd:string"/>
    <xsd:element name="genre" type="ref" minOccurs="0" maxOccurs="unbounded"/>
    <xsd:element name="artist" type="ref" minOccurs="0" maxOccurs="1"/>
    <xsd:element name="track" type="trackType" minOccurs="1" maxOccurs="unbounded"/>
  </xsd:sequence>
  <xsd:attribute name="id" type="xsd:string"/>
</xsd:complexType>

 Definē arī "trackType" pēc analoģijas ar citiem šajā failā aprakstītajiem tipiem. 

  1. Mainīt "extractAlbums()" metodi klasē "DomXMLParser". Ievietot koda fragmentu, kurš nolasa "track" elementus, inicializē "Track" objektus un pievieno tos albumam. Lai pārliecinātos, ka DOM parsētājs "track" elementu ar visiem trim atribūtiem atrod, ierakstīt šādu kodu: 
if ("track".equals(attributeNode.getNodeName())){
    System.err.println("found track:");
    String num = getNodeAttributeValue(attributeNode, "num");
    System.err.println("   num = " + num);
    String title = getNodeAttributeValue(attributeNode, "title");
    System.err.println("   title = " + title);
    String mp3 = getNodeAttributeValue(attributeNode, "mp3");
    System.err.println("   title = " + mp3);
  }

 (Jums šis kods ir nedaudz jāmaina - jāinicializē "Track" klases objekti un jāpievieno tie albumam.)

  1. Izveidot JUnit testu DomXmlParserTest, ko izveido direktorijā src/test/java/com/web/music/impl - testēt metodes klasē DomXmlParser 
public Map<String,Person> extractPersons(InputStream input);
public Catalog extractCatalog(InputStream input, Map<String, Person> persons);
  1. Izveidot JUnit testu PersistenceHelperImplTest. Testēt metodes 
public void save(PersistentObject object);
public PersistentObject getById(Class<? extends PersistentObject> clazz, Long id);

 Pēc katra JUnit testa izpildīt "tearDown()" (anotēt ar "@After"), kura izdzēš datubāzes saturu ar "deleteEverything()". 

  1. Izveidot Ant skriptu, kurš veic šādus soļus:
    1a. Validē XML datu failus persons.xml un catalog.xml
    1a. Ielasa failus ar MusicMain datubāzē

Failu iesniegšana un koda ievietošana versiju kontroles sistēmā

  1. Subversion versiju kontroles sistēmā visiem MP3 failiem apakšdirektorijā src/main/resources/data pievienot "svn:ignore". Tas nepieciešams, lai publiski redzamajā Internetā netiktu izplatīti mūzikas faili, kurus mums nav tiesību izplatīt. 
  2. Direktorijā "workspace/ex10" izpildīt Ant komandu: 
ant -Dpackage.name=student1_student2  make-package

 Stringa "student1_student2" vietā norādīt savas komandas pārstāvju vārdus vai uzvārdus. Šī komanda veidos failu "student1_student2.zip". Šo failu vajag augšuplādēt uz anonīmā ftp://10.122.131.15/ FTP servera vai citur, sekojot pasniedzēju ieteikumiem.

  1. Versiju kontrolē jābūt ievietotiem visiem Jūsu sarakstītajiem failiem:
    1a. Ant skriptam ex10/build.xml
    1a. XML un XSD failiem direktorijā ex10/src/main/resources/data
    1a. Izmainītiem JUnit testiem. 
Tags:
Created by Kalvis Apsītis on 2008-07-15 08:30
    
This wiki is licensed under a Creative Commons 2.0 license
XWiki Enterprise 6.4 - Documentation