[mb-commits] r13719 - in search_server/trunk/index/src: main/java/org/musicbrainz/search/index test/java/org/musicbrainz/search/index
[email protected] Thu, 03 Oct 2013 13:28:39 +0000
| Newsgroups | gmane.comp.audio.musicbrainz.cvs |
|---|---|
| Message-ID | <E1VRixL-0002jv-10@wiley> |
Author: ijabz
Date: 2013-10-03 13:28:38 +0000 (Thu, 03 Oct 2013)
New Revision: 13719
Modified:
search_server/trunk/index/src/main/java/org/musicbrainz/search/index/ReleaseIndex.java
search_server/trunk/index/src/test/java/org/musicbrainz/search/index/ReleaseIndexTest.java
Log:
SEARCH-324:Release search should return catalog numbers in ascending order
Modified: search_server/trunk/index/src/main/java/org/musicbrainz/search/index/ReleaseIndex.java
===================================================================
--- search_server/trunk/index/src/main/java/org/musicbrainz/search/index/ReleaseIndex.java 2013-10-03 12:22:56 UTC (rev 13718)
+++ search_server/trunk/index/src/main/java/org/musicbrainz/search/index/ReleaseIndex.java 2013-10-03 13:28:38 UTC (rev 13719)
@@ -110,7 +110,8 @@
"SELECT rl.release as releaseId, l.gid as labelId, l.name as labelName, catalog_number " +
" FROM release_label rl " +
" LEFT JOIN label l ON rl.label=l.id " +
- " WHERE rl.release BETWEEN ? AND ?");
+ " WHERE rl.release BETWEEN ? AND ?" +
+ " ORDER BY catalog_number, labelName");
addPreparedStatement("MEDIUMS",
"SELECT m.release as releaseId, mf.name as format, m.track_count as numTracksOnMedium, count(mc.id) as discidsOnMedium " +
Modified: search_server/trunk/index/src/test/java/org/musicbrainz/search/index/ReleaseIndexTest.java
===================================================================
--- search_server/trunk/index/src/test/java/org/musicbrainz/search/index/ReleaseIndexTest.java 2013-10-03 12:22:56 UTC (rev 13718)
+++ search_server/trunk/index/src/test/java/org/musicbrainz/search/index/ReleaseIndexTest.java 2013-10-03 13:28:38 UTC (rev 13719)
@@ -5,10 +5,7 @@
import org.apache.lucene.store.RAMDirectory;
import org.apache.lucene.util.NumericUtils;
import org.junit.Test;
-import org.musicbrainz.mmd2.ArtistCredit;
-import org.musicbrainz.mmd2.Release;
-import org.musicbrainz.mmd2.ReleaseEvent;
-import org.musicbrainz.mmd2.ReleaseEventList;
+import org.musicbrainz.mmd2.*;
import java.sql.Statement;
@@ -231,7 +228,12 @@
stmt.addBatch("INSERT INTO label (id, gid, name, sort_name,area) " +
" VALUES (1, 'a539bb1e-f2e1-4b45-9db8-8053841e7503', 'korova', 'korova', 1)");
- stmt.addBatch("INSERT INTO release_label (id, release, label, catalog_number) VALUES (1, 491240, 1, 'ECHO1')");
+ stmt.addBatch("INSERT INTO label (id, gid, name, sort_name,area) " +
+ " VALUES (2, 'bbbbbbbb-f2e1-4b45-9db8-8053841e7503', 'wea', 'wea', 1)");
+
+
+ stmt.addBatch("INSERT INTO release_label (id, release, label, catalog_number) VALUES (1, 491240, 1, 'FRED')");
+ stmt.addBatch("INSERT INTO release_label (id, release, label, catalog_number) VALUES (2, 491240, 2, 'ECHO1')");
stmt.addBatch("INSERT INTO release_meta (id, amazon_asin) VALUES (491240, 'B00005NTQ7')");
stmt.addBatch("INSERT INTO medium (id, track_count, release, position, format) VALUES (1, 1, 491240, 1, 7)");
@@ -899,4 +901,33 @@
}
ir.close();
}
-}
\ No newline at end of file
+
+ /**
+ * @throws Exception exception
+ */
+ @Test
+ public void testStoredRelease3() throws Exception {
+
+ addReleaseFive();
+ RAMDirectory ramDir = new RAMDirectory();
+ createIndex(ramDir);
+
+ IndexReader ir = DirectoryReader.open(ramDir);
+ assertEquals(2, ir.numDocs());
+ {
+
+ Document doc = ir.document(1);
+ Release release = (Release) MMDSerializer.unserialize(doc.get(ReleaseIndexField.RELEASE_STORE.getName()), Release.class);
+ assertEquals("c3b8dbc9-c1ff-4743-9015-8d762819134e", release.getId());
+ assertEquals("B00005NTQ7", release.getAsin());
+
+
+ LabelInfoList labellist = release.getLabelInfoList();
+ assertNotNull(labellist);
+ assertEquals(2, labellist.getLabelInfo().size());
+ assertEquals("ECHO1", labellist.getLabelInfo().get(0).getCatalogNumber());
+ assertEquals("FRED", labellist.getLabelInfo().get(1).getCatalogNumber());
+ }
+ ir.close();
+ }
+}