From 51bb3b6ea57321ea18ecce27e9b32a6bd49896dc Mon Sep 17 00:00:00 2001 From: sentriz Date: Thu, 6 Jun 2019 16:39:35 +0100 Subject: [PATCH] don't give a cover id for a cover that doesn't exist --- server/handler/construct_sub_by_folder.go | 23 ++++--- server/handler/construct_sub_by_tags.go | 11 +++- server/handler/test_data/db | Bin 102400 -> 102400 bytes .../test_data/test_get_album_list_random | 34 +++++----- .../test_get_album_list_two_alpha_artist | 11 ++-- .../test_get_album_list_two_alpha_name | 11 ++-- .../test_data/test_get_album_list_two_newest | 11 ++-- .../test_data/test_get_album_list_two_random | 43 +++++++------ .../test_data/test_get_album_with_cover | 58 +++++++++++++----- .../test_data/test_get_album_without_cover | 3 +- .../handler/test_data/test_get_artist_id_one | 5 +- .../test_data/test_get_artist_id_three | 2 +- .../handler/test_data/test_get_artist_id_two | 4 +- .../test_get_music_directory_with_tracks | 28 +++++++++ .../test_get_music_directory_without_tracks | 1 - .../handler/test_data/test_search_three_q_13 | 2 +- .../handler/test_data/test_search_three_q_ani | 2 +- server/handler/test_data/test_search_two_q_13 | 4 ++ 18 files changed, 157 insertions(+), 96 deletions(-) diff --git a/server/handler/construct_sub_by_folder.go b/server/handler/construct_sub_by_folder.go index 9177a49..f197c8a 100644 --- a/server/handler/construct_sub_by_folder.go +++ b/server/handler/construct_sub_by_folder.go @@ -19,20 +19,20 @@ func newAlbumByFolder(f *model.Album) *subsonic.Album { } func newTCAlbumByFolder(f *model.Album, parent *model.Album) *subsonic.TrackChild { - child := &subsonic.TrackChild{ - CoverID: f.ID, - ID: f.ID, - IsDir: true, - Title: f.RightPath, + trCh := &subsonic.TrackChild{ + ID: f.ID, + IsDir: true, + Title: f.RightPath, + ParentID: f.ParentID, } - if parent != nil { - child.ParentID = parent.ID + if f.Cover != "" { + trCh.CoverID = f.ID } - return child + return trCh } func newTCTrackByFolder(t *model.Track, parent *model.Album) *subsonic.TrackChild { - return &subsonic.TrackChild{ + trCh := &subsonic.TrackChild{ ID: t.ID, Album: t.Album.RightPath, ContentType: t.MIME(), @@ -47,12 +47,15 @@ func newTCTrackByFolder(t *model.Track, parent *model.Album) *subsonic.TrackChil t.Filename, ), ParentID: parent.ID, - CoverID: parent.ID, Duration: t.Duration, Bitrate: t.Bitrate, IsDir: false, Type: "music", } + if parent.Cover != "" { + trCh.CoverID = parent.ID + } + return trCh } func newArtistByFolder(f *model.Album) *subsonic.Artist { diff --git a/server/handler/construct_sub_by_tags.go b/server/handler/construct_sub_by_tags.go index 8cfd65b..c748f5b 100644 --- a/server/handler/construct_sub_by_tags.go +++ b/server/handler/construct_sub_by_tags.go @@ -9,11 +9,13 @@ import ( func newAlbumByTags(a *model.Album, artist *model.Artist) *subsonic.Album { ret := &subsonic.Album{ - CoverID: a.ID, Created: a.CreatedAt, ID: a.ID, Name: a.TagTitle, } + if a.Cover != "" { + ret.CoverID = a.ID + } if artist != nil { ret.Artist = artist.Name ret.ArtistID = artist.ID @@ -22,7 +24,7 @@ func newAlbumByTags(a *model.Album, artist *model.Artist) *subsonic.Album { } func newTrackByTags(t *model.Track, album *model.Album) *subsonic.TrackChild { - return &subsonic.TrackChild{ + ret := &subsonic.TrackChild{ ID: t.ID, ContentType: t.MIME(), Suffix: t.Ext(), @@ -40,11 +42,14 @@ func newTrackByTags(t *model.Track, album *model.Album) *subsonic.TrackChild { Album: album.TagTitle, AlbumID: album.ID, ArtistID: album.TagArtist.ID, - CoverID: album.ID, Duration: t.Duration, Bitrate: t.Bitrate, Type: "music", } + if album.Cover != "" { + ret.CoverID = album.ID + } + return ret } func newArtistByTags(a *model.Artist) *subsonic.Artist { diff --git a/server/handler/test_data/db b/server/handler/test_data/db index 8249c9517ba5b62d03ed17ee3237064085db2fa3..194561a299b8f77df35e6580b8f189ce55aa3c28 100644 GIT binary patch literal 102400 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⋙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 literal 102400 zcmeI54{#jUecyL)7q|C+`5%Nxh)Yls0f7K^?{4o8X_*EIfJ6uoBmjnHG!eACTjEYS z+(P#UBx1P=9RJ~@wZ~TKiDb7)+r+WQi7hpmvDt|;@i=2w)lBO&R-LgdXI!VU9XFoT z)}B6st`_wh&GLhLeq*^@)9VXbqjk`J`zqGyJ&awK**MF9v^Ka)=nmyvtxsy`HyX$K3N>A8=tWT4Cqca4 zC@<;9`kKq+vpaS}&xWmZOu8^TIXyaiMLIWr#k$gJ zVvTa6qFX22;dddl+jJ3(9gu$GTtevX>0#gd7`lpeIx7^NZem6D*-lcfHuOckCN0;> zOImGJdQ@MPtV{zZS<)Sou8SP&R?3ElBBWmiP1|_^O96;Rw~E( zmbDsO9`c}10+G_}_{8|^`1#Z0bCPuj{pI2Sp)oc-H4Y{D^yu8_(Xny&SqjFAUUOa2 zbsu()6AYFD0-JJ$#Czq5r$@CYY&x5-LwTN#)S7K|q9Y5Tjy0N9s9swcJg_zq zw(4@IV6ZN4G|JV*dR@2vjW{{AqDe8mo!T0Tugmp3<*#U!Cg^W(C7gw4Q!P(U4%K|b zznZu1X922t>r)h({19pOFNK2L1KsQ@x*ln3F%uW6+LDf+!Zw0UZSsa4`W}9T_Lv+9 zE%Lki1G9Ob6`0rbf=)fJ-lA}uNjphl>BSuicapKQPT>K)`dtX6&A0jTbh=`*rZu3?yitL9n%2v|2GvNbp7S)j zT80d0Y{!x`qQ!E(uuyF-T_ufo>)bA1zm3MWVKlS~p0w_NI<#wfir;lfL9xBqzeJ)+ zwBE+;_;v~&;)L#@1MC{RUV&QKUdJlb{>*nOyQH#hx5dI_M{HE27Xt9yG{|1D+9#|3 zUe_OM>eYg7cjsGQIY-fQCH9k=`<5}*Vq0ZM=ppaduZO5hGA5au|hXS7;=RI7If zI7U@cjgmA`F^rltUeQ;yhEc2UVmW4TR64EK8d|w3&60tuxcD~=FMg2`UlqS6eo_3Z zJNOo{~%}pT6aR*p?VE`B5xgOS9nQ;=Z#KLw$ zBmnW&0=`&?<+{VT&MN{YocNy@@dfew@DKf?1SkPYfD)htC;>`<5}*Vq0ZM=ppadv^ zJDETPp6;#re{MggvYqDt1G~7vuxtLm3+^c(zDn+FulRq&SL26b?~c9}eI)XY$W-_* z!bd_+h2p|Zfe9{jz0h@rzr~MmAK|#b3i~B?i21|*>7s|_`yu&{7vUx>L%XvR}4wImqBl4#7m2w036WQ9B*WTYW zH)1;q3xTkq9uzi%!tx+2?7=Oo=GAP*Us$_IP*!Yi%hF`EPUy{-%5~|i0mDbONbcY( zHwnNF799nH-pGE`JBWJs`hiU5GP#UzK4;raf^wGV9c$Jbt?a$>@yAW_y|We&v!@%y zoCp)AyEn`ZdO2Mtl}l{_&tbyLsbM)UO&GO;UX-S^=3)s&nSoQ!Hq7>Dcd_JzKU>?i z4`o4af~+HcvgB-DP5Cm)w43m9p2)gPwr$mkl3D`%*Bh~=!DK8KOyN%CY|yt ziE5h#5A_7dm|m6U;3XAh%ZW^ue|5}Uk8{fjfSkx~Avr&r%++A(f1K@bz#ghk*tZZ5l30J2?5T0KP#kVUZoyq62IllsxY&YScK!KD=$Qj+P_?Ulu`%a+hjRRIMTOGOA}f_hj$;@<(&E1v8T;elv_>!H^<}+a*T&3GhdyE2F>Wa_kg`9BWKJTP0dF$td@hrgWj_aYnsCqoBMw|EFE3Z1 z3wF9xt`zOkHNN2&`XRfWcS{L_ z6p2GAXOI*4lqaWLHUoWVzxFHbFyR!egU;wxqp`ZIFI*_upKMh1-yAbri6iTYZixv( zE3i#kxl}%tk^L%zw8Mmht_UfA6_Ss(tan`gx@kqYrF0P~>^7xj!QSQE{0<}jMEsHXLs$dwUGZjAzjJ`XzrJ}>^M z_!;rvi+?13T>N+9zZRboe@py;cvF0r__(+tE{l(dMe!l=?c%IBB~FNM6OW5&aaimZ z`^1CdK5>T_5&6W=5k4N<}u7+m?dE#gQ1FH z8p9NZNemSXWei6!9L8`6!($i@Vt7A>0~q#Wcof6?FuWJTdoVnLVIPKvF_bVogyG#7 z_F{Mt!vh%Jg<%hd`*|+Rc9UQq3HFj;4+(aYU>6B?l3)i3L=q%O5GO&51W^*e27oXd zCP9b<0ttd7=pq460*(X$jthtJ`9Jg^llT+yusEOis`y_MA5Hv**bqOQ_`VntPl$gf zek$?H@$bYx9RJHiDiKI5B@V>@Bz`%5F!sIJZ^s^wJsf``ej@fj?6Z-s=vuTCnTVc^ z+#h*4+7Q?}R@Wemr_lq!RthSS<2fV)Lps^L||7*-@~<1tv4su9XY0Ov?Tj_2=*A zVToeYS`0HOoq_p#1C|!*`Z6Zx?&H~MNXCUbb6T+qld`bPs;JkkWhzZ;1ws?`=^E0sKD@M?%JlN=308o)X0VvAm0<=GE=0~mQdPW+0P|yzI(c*n z4y;x+Sn9E&hMD%@H%o_#whiV8O^JW0b(WZ z=UD~rCQGcy%sFItktB>**H8Lhf7oUrlcT4ND*64D$$CYr;wgp>@@$?Jl9+lKmICQ8 zuR3QmE9Csg&?^L3f`S*WH8C4zORJ625=kG#>=Yn7A)REzm{C32kj_<&>m>R9BRqQs zbmN`R8gSwnxI^ibt~W}+8W9fIm%zNV4xfO`gfm^o^nUB!!QgaF>$tA2N~hq5Ht?`Rh%-o*pUBdA1Mj(Ymt@iI-ASI+*&taJB1;#_g+>#8 zPfF^aA}&p?4Y@-wozh{MZ_z5$y$a73KrGCU%F>p1M=o*@v&M7b@B#bQIxXD2>nP98 zz{R#&JKM9DhnaHsn$`X2>RyXSyV2D>)^P5_{NJ>eaxbFpxVCW*dS-`JhP%6Yc7)x$ z;%^t`y6^J4owf?s0=OM`x9$~bB3@_n0Z0H?3ZZB884?i6Tg$ z!>XQe56`C9PAhCe_92^=y9nsK-b+t{*u40x|LC&s+`R^a$BM{*K?G+X>t2x%03;*f z&C3JG`~O+-4;c85{!s#y03|>PPy&YjofuCTAmZ;y`C1b_Mz12X^5ia%oDKl(=rPy&PPy&i3C>IuDQ7* z)0?LElj^XV$)<8?+4J3!n@#Gl;jC;_7hsRnQxE^zkAJ`SbH}(pc-xg`<5}*WL z7l8zKB-}PWK<59M9k1(5^dL%r5}*Vq0ZM=ppaduZN`Mle1SkPYfD(9v5Fqpa^!fh{ zl37$HB|r&K0+awHKnYL+lmI0_2~Yx*044A`3DD>N*9nduMhQ>?lmI0_2~Yx*03|>P zPy&*a!URM$TpJ>nf>6Nt&n_MopSBuIsfGtzp#aBmGJ~lNpe}J){fu z)j~-x>J@OxIip!E)+OVb)PR(>W5+AHb!1n;Sb4bj~0-nN*V5v_+v!ru!DN1JbxwZ|F7Yym6frg*N$i!Z_T{Dy9j~EOue0 z=DqzAN{O0J`xg@x@doPpx#_oH)aCY?^ETQ$t6bXu=9 zv~pFN)f#1k`<5}*Vq0ZM=ppakA@1bB{N zV_h7}axl=qkbwq<3^Xuoh(rbi3}KvrVY_%P%w4$ z#D5pF;(NqTCjLBeHSw{;KYP>Rq&G|nPy&r?D$zv^V+8q?creqQYW*>ZXPz$I8(xLKHj??7rMm5Zk5h^9A5t(6G7om zWc|*%X`!Rl9>E{yVK+nvqpdeFaC`Xprt=57__!DzCcpo8 zfcXF;HWS}VoQZ!fekk_t=xfnOBHxHih5sUaB=l4$F5DED;6m36U1#`P{0R3Ejti`? zUt)*gu%Gka+Q9=mVcQA&0L$`h_-L3_+0L6k)LaraF8S_qahe3>-&Yh6o>|*>7s|_`yu&{7vUx>L%YK`~REJ4W&JlT2 z`bxP$Hpf(LZOm)$Z<-si9fgHJ*ia7&n?YfD5Ek~}1{?9zY{p+$yGc-1Y;McaWVKG{ z&6mn`>8#PLw*YbnU%5#DcChFu81zQ=quxQ(yVnn7G6%b@{I;m6*>;nloF#h4n)OC2 zd#`-_ag%)StOdmE=|(XpU~r5L-y3EJy__zS%B8k|=P=>r)UceFCX8A^FG^EdbFqY? z%)qH<8)kcS*j2DO*aEd{AIgH<1X)M?WXajQn(}1?dj&U4csWmGT`pJ2zO%FCO2tyu zb*c0jvn|#wDh#56dr{O7it6?erDn6Rz0g;b!-SX9MAYe$QLb5X*watWnE2f-ga;w9 zJv*6;7s1g9okM;?V8>J1cbk~nX2C-}0WzjnrMcyDt!z1w$?~s`nd@O@Wx1g05BTwwATvbEXyHmJ$Lfcke_g<0u6Ld6uoT3R_;Y{!-dacv&S< zPHBZlrG|l<_U0N|&CW1R`_%i*O=)g{T_CV)hs&Y8YR(jFHdI}v4aCVqDd0UZGm{do{UL5=7MDg_jL_nxZl7Ch94pkm6XxAH4@>##|_ zZqh&;C$UY(N#te7jQ8nS3tm zx8GQWJ*XQd926*!G6^}O+Z7-4kFR{gv?AP6f*_?g=JH`L7a?0WQz^w~>oe}|TsPrJ zPnEcYF2O8o_`Ue^a~K=~(LHaDfY1%kd{)aAln?U#~GCzGl#Du)RNbu#E{uaj3V zebB0t-8y&>l8B&?t?OhZl}+XIzV72N;oyx1AcRzT?P83t-ok1SL0i|# zavpY@Cw+6yVZtexbIw}XhH6uoPuKJn)PM9VAsaXPlrBX+A(e^ zF_5x9h-6M8nE`Jy>3lAemSsN&cA9X|0V57vD=#lspbK`oRIU{5(lx&Lis?*nOXEP= zU0o<`6s1As>{TtpJ22#Q-nYNwG~q~(KP`<`D$@D#VyPirfW~Xp*7o>IJ4{!KTU>}_ zA&=s=Z0A8(DxJ&uZ9I3HaL_{pagKKW$*&)>+j+N?Fi4R&lyU|+flqmIg7-c^AKI^- zPdiLF1?!+QdevyGF6#>yO7$jcw{kP;W3C(r-;nfEf{ zi9{p*mH1m?zZd;U^hD%?5jK1>^t+*$P!4`Rc)07=`G4T&xM#WEz%u*S>>wQQbNyTE zOCgZcu!?~VgFkyc_d`!!f$onV5T}U%o}5&qbLHw{(O4qy4LPgB%O0x3OUtQ%IeUXK zHzn=u^zG!dX503xp#&7(DV$%Ij@YSMJMUYDkI zOXo$2F(LI^zy7p4y`xyrx=%r^Fj4_P;o;E}XbN7;0|nBjv4JOqHWLB5PoQ<83`)kU zi)0uDQ5KdNvn{ftt{@1zUq)f)P*~PaSQg%$ll5zNpdx8A5umdI!e(`NUCLFxhNCD_ z|CrId+8D4TPURT0V{%8aJc!*ff?^dE3r)5+MX3GLDf@LV9Ul%d&@10C5tJ+uOZpF& zjat#tH~Acc{Ra}$QPNJ3Bn>;A@UTZ`5Bd;Uct4R}E#@>4l3O_8L$^Ggkle@IvR2gV zdqHB)5K26O)L=Zto0_a<^1e?InN+)p0Np^KHf>ZN)mNp-dIetBVxgNk%b0fbh4J%~ za~<(TKwIJ%YRk8@dE!e#6`xG{HJKTQiI7BXmjML4*NVKSsA5U`)tijj9=mq~)*cXa z_aF*7iGrYm;R!35fhVqvZ+<#V1bE~^7ppb#>3FuZ+9)kqnjV6BZ@%P6=txWefd}u$ zej*IXLQMkWKHdV;kXQb|+AIX<|A0KG)!_N3dbA;(s~XoWbr+vSMVZO3#!)Fzt~I||(a zLZ$w;jP`5dlzbLmT;vPVVIn~H14vpFC*Z|J@bS7Wat_LD3*&lHM~Ph^amP`VxOH`> zWFe>h3x~r*fPOegoLjDF^^&Am*=&4*F)GdPX7^<-54l-f~h9HhRr4{JsZ$xZu7C9h=j z?a9Ea)YdHo1-qeGA^3K3YI9iN(-@v!W8 z1H0h{?m3LC$I*HHsw7#-$a(+1n8PGUo*!ixV>_$C`_v3+o-~Po93PGXCiAtAiZI^h zO6)j46NdSjeG)uGT0$*3=$tO=z)y`koJ)8?haQ z1Q5nli{(~ukCS~1j!Sn41?QOSEW;x=DMzz|F8(7+ID0|SzRFO z?z>SIbSYqJ#HY?w^U&U9RlgGLGzpUNKpEath!s++3bJQWcR%xE)0xsyAP)k^dQqT` z0%v@38m#tCKVLb=dr)=0^jA`g4S^Pu@AmFOuQCVq?70BgVuJb0{R zZfV@{HX?8vrw-z66!12D%D)P4V$G#fzJBR236fzeS=zD&u*vs)2c}=Qs4Y6)1SdR0 zp8sQ^Z!+Rc;*S%t_#?5e#m1r^i|&g2R)h(cA%Xr;0+awHKnYL+lmI301|zT*Jc*sO z^*(x!*LZ1GRWpk3!U}kceVa+tS}Alzt1e0;z-JrIWE0O{HP<7<_y(wYKzMO&&s$Ll zOmRT39LCYSg`}Xn=s&oUZ8wQptIWpX)z$WE(P04Dp5_ES>`(uP=}xm{aUg5Q11M|# zVZmD#zVF`eVIh-kH;KZ-0<1il#(@=lWBX;zTG_>!f#1D#%XFsLl6c|8cfJJ`!GHvS zf+c1>9?LB<8Tj3Sr0Vxn9@IBwlGI;pUbUW)K-lgZyIfgirQ7ntAa7S5<&B~|7{m6Kmx5&yxeSAWTLCE237KvW`!qO6faSW4_IN&#jmzlTg%$k=8QwHCom z!bBYz+nB59`f^KB^2>h=0~>7#wxAFQI+R60(?|)X4?P8`d6;@=y`I1GK%2uPYAq3* z(~4DC{s9X*VIIa>5ZAQUT0t)E{OpHJFz8@mD-43dBNi!@E+R8q*d@K)o%%u(?o!E z5Fl>y=#o7_Ooo4P7<1k*ES1M$R%a4sOgdR~6r2z~O`iXm9dEEkoyw&IC;>`<5}*Vq z0ZM=ppaduZN`Mle1So;qB0%2%PoMv93mG-01SkPYfD)htC;>`<5}*Vq0ZM=ppakA< z1nBes8!pSJU`l`zpaduZN`Mle1SkPYfD)htC;>{~wh7SZ|Jz1J51<4n0ZM=ppaduZ UN`Mle1SkPYfD)ht-f#r|FFvvnFaQ7m diff --git a/server/handler/test_data/test_get_album_list_random b/server/handler/test_data/test_get_album_list_random index b8427e9..b48a5e3 100644 --- a/server/handler/test_data/test_get_album_list_random +++ b/server/handler/test_data/test_get_album_list_random @@ -4,15 +4,6 @@ "version": "1.9.0", "albumList": { "album": [ - { - "id": 3, - "coverArt": 3, - "artist": "A Certain Ratio", - "title": "(1994) The Graveyard and the Ballroom", - "parent": 2, - "isDir": true, - "created": "0001-01-01T00:00:00Z" - }, { "id": 11, "coverArt": 11, @@ -22,6 +13,15 @@ "isDir": true, "created": "0001-01-01T00:00:00Z" }, + { + "id": 7, + "coverArt": 7, + "artist": "13th Floor Lowervators", + "title": "(1966) The Psychedelic Sounds of the 13th Floor Elevators", + "parent": 5, + "isDir": true, + "created": "0001-01-01T00:00:00Z" + }, { "id": 4, "coverArt": 4, @@ -32,19 +32,19 @@ "created": "0001-01-01T00:00:00Z" }, { - "id": 6, - "coverArt": 6, - "artist": "13th Floor Lowervators", - "title": "(1967) Easter Nowhere", - "parent": 5, + "id": 3, + "coverArt": 3, + "artist": "A Certain Ratio", + "title": "(1994) The Graveyard and the Ballroom", + "parent": 2, "isDir": true, "created": "0001-01-01T00:00:00Z" }, { - "id": 7, - "coverArt": 7, + "id": 6, + "coverArt": 6, "artist": "13th Floor Lowervators", - "title": "(1966) The Psychedelic Sounds of the 13th Floor Elevators", + "title": "(1967) Easter Nowhere", "parent": 5, "isDir": true, "created": "0001-01-01T00:00:00Z" diff --git a/server/handler/test_data/test_get_album_list_two_alpha_artist b/server/handler/test_data/test_get_album_list_two_alpha_artist index e6e10a1..dde3bdc 100644 --- a/server/handler/test_data/test_get_album_list_two_alpha_artist +++ b/server/handler/test_data/test_get_album_list_two_alpha_artist @@ -10,7 +10,7 @@ "artistId": 2, "artist": "13th Floor Elevators", "name": "Easter Everywhere", - "created": "2019-06-05T16:00:10.556862345+01:00" + "created": "2019-06-06T16:38:39.306600701+01:00" }, { "id": 7, @@ -18,7 +18,7 @@ "artistId": 2, "artist": "13th Floor Elevators", "name": "The Psychedelic Sounds of the 13th Floor Elevators", - "created": "2019-06-05T16:00:10.560355528+01:00" + "created": "2019-06-06T16:38:39.309763889+01:00" }, { "id": 3, @@ -26,15 +26,14 @@ "artistId": 1, "artist": "A Certain Ratio", "name": "The Graveyard and the Ballroom", - "created": "2019-06-05T16:00:10.54747823+01:00" + "created": "2019-06-06T16:38:39.298724062+01:00" }, { "id": 4, - "coverArt": 4, "artistId": 1, "artist": "A Certain Ratio", "name": "To Each...", - "created": "2019-06-05T16:00:10.553065063+01:00" + "created": "2019-06-06T16:38:39.303278797+01:00" }, { "id": 11, @@ -42,7 +41,7 @@ "artistId": 3, "artist": "Anikas", "name": "Anika", - "created": "2019-06-05T16:00:10.565661506+01:00" + "created": "2019-06-06T16:38:39.31657693+01:00" } ] } diff --git a/server/handler/test_data/test_get_album_list_two_alpha_name b/server/handler/test_data/test_get_album_list_two_alpha_name index 1f0b097..0257551 100644 --- a/server/handler/test_data/test_get_album_list_two_alpha_name +++ b/server/handler/test_data/test_get_album_list_two_alpha_name @@ -10,7 +10,7 @@ "artistId": 3, "artist": "Anikas", "name": "Anika", - "created": "2019-06-05T16:00:10.565661506+01:00" + "created": "2019-06-06T16:38:39.31657693+01:00" }, { "id": 6, @@ -18,7 +18,7 @@ "artistId": 2, "artist": "13th Floor Elevators", "name": "Easter Everywhere", - "created": "2019-06-05T16:00:10.556862345+01:00" + "created": "2019-06-06T16:38:39.306600701+01:00" }, { "id": 3, @@ -26,7 +26,7 @@ "artistId": 1, "artist": "A Certain Ratio", "name": "The Graveyard and the Ballroom", - "created": "2019-06-05T16:00:10.54747823+01:00" + "created": "2019-06-06T16:38:39.298724062+01:00" }, { "id": 7, @@ -34,15 +34,14 @@ "artistId": 2, "artist": "13th Floor Elevators", "name": "The Psychedelic Sounds of the 13th Floor Elevators", - "created": "2019-06-05T16:00:10.560355528+01:00" + "created": "2019-06-06T16:38:39.309763889+01:00" }, { "id": 4, - "coverArt": 4, "artistId": 1, "artist": "A Certain Ratio", "name": "To Each...", - "created": "2019-06-05T16:00:10.553065063+01:00" + "created": "2019-06-06T16:38:39.303278797+01:00" } ] } diff --git a/server/handler/test_data/test_get_album_list_two_newest b/server/handler/test_data/test_get_album_list_two_newest index 9648a8a..d1c062a 100644 --- a/server/handler/test_data/test_get_album_list_two_newest +++ b/server/handler/test_data/test_get_album_list_two_newest @@ -10,7 +10,7 @@ "artistId": 3, "artist": "Anikas", "name": "Anika", - "created": "2019-06-05T16:00:10.565661506+01:00" + "created": "2019-06-06T16:38:39.31657693+01:00" }, { "id": 7, @@ -18,7 +18,7 @@ "artistId": 2, "artist": "13th Floor Elevators", "name": "The Psychedelic Sounds of the 13th Floor Elevators", - "created": "2019-06-05T16:00:10.560355528+01:00" + "created": "2019-06-06T16:38:39.309763889+01:00" }, { "id": 6, @@ -26,15 +26,14 @@ "artistId": 2, "artist": "13th Floor Elevators", "name": "Easter Everywhere", - "created": "2019-06-05T16:00:10.556862345+01:00" + "created": "2019-06-06T16:38:39.306600701+01:00" }, { "id": 4, - "coverArt": 4, "artistId": 1, "artist": "A Certain Ratio", "name": "To Each...", - "created": "2019-06-05T16:00:10.553065063+01:00" + "created": "2019-06-06T16:38:39.303278797+01:00" }, { "id": 3, @@ -42,7 +41,7 @@ "artistId": 1, "artist": "A Certain Ratio", "name": "The Graveyard and the Ballroom", - "created": "2019-06-05T16:00:10.54747823+01:00" + "created": "2019-06-06T16:38:39.298724062+01:00" } ] } diff --git a/server/handler/test_data/test_get_album_list_two_random b/server/handler/test_data/test_get_album_list_two_random index e5b8c87..ecff8b8 100644 --- a/server/handler/test_data/test_get_album_list_two_random +++ b/server/handler/test_data/test_get_album_list_two_random @@ -5,20 +5,12 @@ "albumList2": { "album": [ { - "id": 4, - "coverArt": 4, - "artistId": 1, - "artist": "A Certain Ratio", - "name": "To Each...", - "created": "2019-06-05T16:00:10.553065063+01:00" - }, - { - "id": 11, - "coverArt": 11, - "artistId": 3, - "artist": "Anikas", - "name": "Anika", - "created": "2019-06-05T16:00:10.565661506+01:00" + "id": 6, + "coverArt": 6, + "artistId": 2, + "artist": "13th Floor Elevators", + "name": "Easter Everywhere", + "created": "2019-06-06T16:38:39.306600701+01:00" }, { "id": 3, @@ -26,7 +18,14 @@ "artistId": 1, "artist": "A Certain Ratio", "name": "The Graveyard and the Ballroom", - "created": "2019-06-05T16:00:10.54747823+01:00" + "created": "2019-06-06T16:38:39.298724062+01:00" + }, + { + "id": 4, + "artistId": 1, + "artist": "A Certain Ratio", + "name": "To Each...", + "created": "2019-06-06T16:38:39.303278797+01:00" }, { "id": 7, @@ -34,15 +33,15 @@ "artistId": 2, "artist": "13th Floor Elevators", "name": "The Psychedelic Sounds of the 13th Floor Elevators", - "created": "2019-06-05T16:00:10.560355528+01:00" + "created": "2019-06-06T16:38:39.309763889+01:00" }, { - "id": 6, - "coverArt": 6, - "artistId": 2, - "artist": "13th Floor Elevators", - "name": "Easter Everywhere", - "created": "2019-06-05T16:00:10.556862345+01:00" + "id": 11, + "coverArt": 11, + "artistId": 3, + "artist": "Anikas", + "name": "Anika", + "created": "2019-06-06T16:38:39.31657693+01:00" } ] } diff --git a/server/handler/test_data/test_get_album_with_cover b/server/handler/test_data/test_get_album_with_cover index 652d725..cd94224 100644 --- a/server/handler/test_data/test_get_album_with_cover +++ b/server/handler/test_data/test_get_album_with_cover @@ -8,16 +8,18 @@ "artistId": 1, "artist": "A Certain Ratio", "name": "The Graveyard and the Ballroom", - "created": "2019-06-05T16:00:10.54747823+01:00", + "created": "2019-06-06T16:38:39.298724062+01:00", "song": [ { "album": "The Graveyard and the Ballroom", "albumId": 3, "artist": "A Certain Ratio", "artistId": 1, + "bitRate": 922, "contentType": "audio/x-flac", "coverArt": 3, - "created": "2019-06-05T16:00:10.552108331+01:00", + "created": "2019-06-06T16:38:39.302489659+01:00", + "duration": 174, "id": 12, "parent": 3, "path": "A Certain Ratio/(1994) The Graveyard and the Ballroom/01.14 Do the Du (casse).flac", @@ -32,9 +34,11 @@ "albumId": 3, "artist": "A Certain Ratio", "artistId": 1, + "bitRate": 916, "contentType": "audio/x-flac", "coverArt": 3, - "created": "2019-06-05T16:00:10.550632503+01:00", + "created": "2019-06-06T16:38:39.301301007+01:00", + "duration": 142, "id": 8, "parent": 3, "path": "A Certain Ratio/(1994) The Graveyard and the Ballroom/02.14 Faceless.flac", @@ -49,9 +53,11 @@ "albumId": 3, "artist": "A Certain Ratio", "artistId": 1, + "bitRate": 957, "contentType": "audio/x-flac", "coverArt": 3, - "created": "2019-06-05T16:00:10.549864008+01:00", + "created": "2019-06-06T16:38:39.300698509+01:00", + "duration": 174, "id": 6, "parent": 3, "path": "A Certain Ratio/(1994) The Graveyard and the Ballroom/03.14 Crippled Child.flac", @@ -66,9 +72,11 @@ "albumId": 3, "artist": "A Certain Ratio", "artistId": 1, + "bitRate": 961, "contentType": "audio/x-flac", "coverArt": 3, - "created": "2019-06-05T16:00:10.551742258+01:00", + "created": "2019-06-06T16:38:39.302194015+01:00", + "duration": 201, "id": 11, "parent": 3, "path": "A Certain Ratio/(1994) The Graveyard and the Ballroom/04.14 Choir.flac", @@ -83,9 +91,11 @@ "albumId": 3, "artist": "A Certain Ratio", "artistId": 1, + "bitRate": 924, "contentType": "audio/x-flac", "coverArt": 3, - "created": "2019-06-05T16:00:10.548393601+01:00", + "created": "2019-06-06T16:38:39.299490189+01:00", + "duration": 210, "id": 2, "parent": 3, "path": "A Certain Ratio/(1994) The Graveyard and the Ballroom/05.14 Flight.flac", @@ -100,9 +110,11 @@ "albumId": 3, "artist": "A Certain Ratio", "artistId": 1, + "bitRate": 961, "contentType": "audio/x-flac", "coverArt": 3, - "created": "2019-06-05T16:00:10.552469878+01:00", + "created": "2019-06-06T16:38:39.302789079+01:00", + "duration": 131, "id": 13, "parent": 3, "path": "A Certain Ratio/(1994) The Graveyard and the Ballroom/06.14 I Feel.flac", @@ -117,9 +129,11 @@ "albumId": 3, "artist": "A Certain Ratio", "artistId": 1, + "bitRate": 929, "contentType": "audio/x-flac", "coverArt": 3, - "created": "2019-06-05T16:00:10.552842449+01:00", + "created": "2019-06-06T16:38:39.303072046+01:00", + "duration": 148, "id": 14, "parent": 3, "path": "A Certain Ratio/(1994) The Graveyard and the Ballroom/07.14 Strain.flac", @@ -134,9 +148,11 @@ "albumId": 3, "artist": "A Certain Ratio", "artistId": 1, + "bitRate": 898, "contentType": "audio/x-flac", "coverArt": 3, - "created": "2019-06-05T16:00:10.549504916+01:00", + "created": "2019-06-06T16:38:39.300381932+01:00", + "duration": 217, "id": 5, "parent": 3, "path": "A Certain Ratio/(1994) The Graveyard and the Ballroom/08.14 All Night Party.flac", @@ -151,9 +167,11 @@ "albumId": 3, "artist": "A Certain Ratio", "artistId": 1, + "bitRate": 877, "contentType": "audio/x-flac", "coverArt": 3, - "created": "2019-06-05T16:00:10.549134887+01:00", + "created": "2019-06-06T16:38:39.300087164+01:00", + "duration": 235, "id": 4, "parent": 3, "path": "A Certain Ratio/(1994) The Graveyard and the Ballroom/09.14 Oceans.flac", @@ -168,9 +186,11 @@ "albumId": 3, "artist": "A Certain Ratio", "artistId": 1, + "bitRate": 888, "contentType": "audio/x-flac", "coverArt": 3, - "created": "2019-06-05T16:00:10.551373999+01:00", + "created": "2019-06-06T16:38:39.301890876+01:00", + "duration": 212, "id": 10, "parent": 3, "path": "A Certain Ratio/(1994) The Graveyard and the Ballroom/10.14 The Choir.flac", @@ -185,9 +205,11 @@ "albumId": 3, "artist": "A Certain Ratio", "artistId": 1, + "bitRate": 916, "contentType": "audio/x-flac", "coverArt": 3, - "created": "2019-06-05T16:00:10.550996621+01:00", + "created": "2019-06-06T16:38:39.301604638+01:00", + "duration": 205, "id": 9, "parent": 3, "path": "A Certain Ratio/(1994) The Graveyard and the Ballroom/11.14 The Fox.flac", @@ -202,9 +224,11 @@ "albumId": 3, "artist": "A Certain Ratio", "artistId": 1, + "bitRate": 900, "contentType": "audio/x-flac", "coverArt": 3, - "created": "2019-06-05T16:00:10.55027053+01:00", + "created": "2019-06-06T16:38:39.301006358+01:00", + "duration": 144, "id": 7, "parent": 3, "path": "A Certain Ratio/(1994) The Graveyard and the Ballroom/12.14 Suspect.flac", @@ -219,9 +243,11 @@ "albumId": 3, "artist": "A Certain Ratio", "artistId": 1, + "bitRate": 877, "contentType": "audio/x-flac", "coverArt": 3, - "created": "2019-06-05T16:00:10.547986038+01:00", + "created": "2019-06-06T16:38:39.299163755+01:00", + "duration": 332, "id": 1, "parent": 3, "path": "A Certain Ratio/(1994) The Graveyard and the Ballroom/13.14 Flight.flac", @@ -236,9 +262,11 @@ "albumId": 3, "artist": "A Certain Ratio", "artistId": 1, + "bitRate": 893, "contentType": "audio/x-flac", "coverArt": 3, - "created": "2019-06-05T16:00:10.548763765+01:00", + "created": "2019-06-06T16:38:39.299791782+01:00", + "duration": 213, "id": 3, "parent": 3, "path": "A Certain Ratio/(1994) The Graveyard and the Ballroom/14.14 Genotype_Phenotype.flac", diff --git a/server/handler/test_data/test_get_album_without_cover b/server/handler/test_data/test_get_album_without_cover index 0b9b94f..309f458 100644 --- a/server/handler/test_data/test_get_album_without_cover +++ b/server/handler/test_data/test_get_album_without_cover @@ -4,8 +4,7 @@ "version": "1.9.0", "album": { "id": 2, - "coverArt": 2, - "created": "2019-06-05T16:00:10.547172057+01:00" + "created": "2019-06-06T16:38:39.298507437+01:00" } } } diff --git a/server/handler/test_data/test_get_artist_id_one b/server/handler/test_data/test_get_artist_id_one index 279a8a6..1ece5d9 100644 --- a/server/handler/test_data/test_get_artist_id_one +++ b/server/handler/test_data/test_get_artist_id_one @@ -12,15 +12,14 @@ "artistId": 1, "artist": "A Certain Ratio", "name": "The Graveyard and the Ballroom", - "created": "2019-06-05T16:00:10.54747823+01:00" + "created": "2019-06-06T16:38:39.298724062+01:00" }, { "id": 4, - "coverArt": 4, "artistId": 1, "artist": "A Certain Ratio", "name": "To Each...", - "created": "2019-06-05T16:00:10.553065063+01:00" + "created": "2019-06-06T16:38:39.303278797+01:00" } ] } diff --git a/server/handler/test_data/test_get_artist_id_three b/server/handler/test_data/test_get_artist_id_three index 2cb1d18..10fbb5c 100644 --- a/server/handler/test_data/test_get_artist_id_three +++ b/server/handler/test_data/test_get_artist_id_three @@ -12,7 +12,7 @@ "artistId": 3, "artist": "Anikas", "name": "Anika", - "created": "2019-06-05T16:00:10.565661506+01:00" + "created": "2019-06-06T16:38:39.31657693+01:00" } ] } diff --git a/server/handler/test_data/test_get_artist_id_two b/server/handler/test_data/test_get_artist_id_two index 50ebb3b..e314709 100644 --- a/server/handler/test_data/test_get_artist_id_two +++ b/server/handler/test_data/test_get_artist_id_two @@ -12,7 +12,7 @@ "artistId": 2, "artist": "13th Floor Elevators", "name": "Easter Everywhere", - "created": "2019-06-05T16:00:10.556862345+01:00" + "created": "2019-06-06T16:38:39.306600701+01:00" }, { "id": 7, @@ -20,7 +20,7 @@ "artistId": 2, "artist": "13th Floor Elevators", "name": "The Psychedelic Sounds of the 13th Floor Elevators", - "created": "2019-06-05T16:00:10.560355528+01:00" + "created": "2019-06-06T16:38:39.309763889+01:00" } ] } diff --git a/server/handler/test_data/test_get_music_directory_with_tracks b/server/handler/test_data/test_get_music_directory_with_tracks index b954d3a..35a5a40 100644 --- a/server/handler/test_data/test_get_music_directory_with_tracks +++ b/server/handler/test_data/test_get_music_directory_with_tracks @@ -10,9 +10,11 @@ { "album": "(1994) The Graveyard and the Ballroom", "artist": "A Certain Ratio", + "bitRate": 922, "contentType": "audio/x-flac", "coverArt": 3, "created": "0001-01-01T00:00:00Z", + "duration": 174, "id": 12, "parent": 3, "path": "A Certain Ratio/(1994) The Graveyard and the Ballroom/01.14 Do the Du (casse).flac", @@ -25,9 +27,11 @@ { "album": "(1994) The Graveyard and the Ballroom", "artist": "A Certain Ratio", + "bitRate": 916, "contentType": "audio/x-flac", "coverArt": 3, "created": "0001-01-01T00:00:00Z", + "duration": 142, "id": 8, "parent": 3, "path": "A Certain Ratio/(1994) The Graveyard and the Ballroom/02.14 Faceless.flac", @@ -40,9 +44,11 @@ { "album": "(1994) The Graveyard and the Ballroom", "artist": "A Certain Ratio", + "bitRate": 957, "contentType": "audio/x-flac", "coverArt": 3, "created": "0001-01-01T00:00:00Z", + "duration": 174, "id": 6, "parent": 3, "path": "A Certain Ratio/(1994) The Graveyard and the Ballroom/03.14 Crippled Child.flac", @@ -55,9 +61,11 @@ { "album": "(1994) The Graveyard and the Ballroom", "artist": "A Certain Ratio", + "bitRate": 961, "contentType": "audio/x-flac", "coverArt": 3, "created": "0001-01-01T00:00:00Z", + "duration": 201, "id": 11, "parent": 3, "path": "A Certain Ratio/(1994) The Graveyard and the Ballroom/04.14 Choir.flac", @@ -70,9 +78,11 @@ { "album": "(1994) The Graveyard and the Ballroom", "artist": "A Certain Ratio", + "bitRate": 924, "contentType": "audio/x-flac", "coverArt": 3, "created": "0001-01-01T00:00:00Z", + "duration": 210, "id": 2, "parent": 3, "path": "A Certain Ratio/(1994) The Graveyard and the Ballroom/05.14 Flight.flac", @@ -85,9 +95,11 @@ { "album": "(1994) The Graveyard and the Ballroom", "artist": "A Certain Ratio", + "bitRate": 961, "contentType": "audio/x-flac", "coverArt": 3, "created": "0001-01-01T00:00:00Z", + "duration": 131, "id": 13, "parent": 3, "path": "A Certain Ratio/(1994) The Graveyard and the Ballroom/06.14 I Feel.flac", @@ -100,9 +112,11 @@ { "album": "(1994) The Graveyard and the Ballroom", "artist": "A Certain Ratio", + "bitRate": 929, "contentType": "audio/x-flac", "coverArt": 3, "created": "0001-01-01T00:00:00Z", + "duration": 148, "id": 14, "parent": 3, "path": "A Certain Ratio/(1994) The Graveyard and the Ballroom/07.14 Strain.flac", @@ -115,9 +129,11 @@ { "album": "(1994) The Graveyard and the Ballroom", "artist": "A Certain Ratio", + "bitRate": 898, "contentType": "audio/x-flac", "coverArt": 3, "created": "0001-01-01T00:00:00Z", + "duration": 217, "id": 5, "parent": 3, "path": "A Certain Ratio/(1994) The Graveyard and the Ballroom/08.14 All Night Party.flac", @@ -130,9 +146,11 @@ { "album": "(1994) The Graveyard and the Ballroom", "artist": "A Certain Ratio", + "bitRate": 877, "contentType": "audio/x-flac", "coverArt": 3, "created": "0001-01-01T00:00:00Z", + "duration": 235, "id": 4, "parent": 3, "path": "A Certain Ratio/(1994) The Graveyard and the Ballroom/09.14 Oceans.flac", @@ -145,9 +163,11 @@ { "album": "(1994) The Graveyard and the Ballroom", "artist": "A Certain Ratio", + "bitRate": 888, "contentType": "audio/x-flac", "coverArt": 3, "created": "0001-01-01T00:00:00Z", + "duration": 212, "id": 10, "parent": 3, "path": "A Certain Ratio/(1994) The Graveyard and the Ballroom/10.14 The Choir.flac", @@ -160,9 +180,11 @@ { "album": "(1994) The Graveyard and the Ballroom", "artist": "A Certain Ratio", + "bitRate": 916, "contentType": "audio/x-flac", "coverArt": 3, "created": "0001-01-01T00:00:00Z", + "duration": 205, "id": 9, "parent": 3, "path": "A Certain Ratio/(1994) The Graveyard and the Ballroom/11.14 The Fox.flac", @@ -175,9 +197,11 @@ { "album": "(1994) The Graveyard and the Ballroom", "artist": "A Certain Ratio", + "bitRate": 900, "contentType": "audio/x-flac", "coverArt": 3, "created": "0001-01-01T00:00:00Z", + "duration": 144, "id": 7, "parent": 3, "path": "A Certain Ratio/(1994) The Graveyard and the Ballroom/12.14 Suspect.flac", @@ -190,9 +214,11 @@ { "album": "(1994) The Graveyard and the Ballroom", "artist": "A Certain Ratio", + "bitRate": 877, "contentType": "audio/x-flac", "coverArt": 3, "created": "0001-01-01T00:00:00Z", + "duration": 332, "id": 1, "parent": 3, "path": "A Certain Ratio/(1994) The Graveyard and the Ballroom/13.14 Flight.flac", @@ -205,9 +231,11 @@ { "album": "(1994) The Graveyard and the Ballroom", "artist": "A Certain Ratio", + "bitRate": 893, "contentType": "audio/x-flac", "coverArt": 3, "created": "0001-01-01T00:00:00Z", + "duration": 213, "id": 3, "parent": 3, "path": "A Certain Ratio/(1994) The Graveyard and the Ballroom/14.14 Genotype_Phenotype.flac", diff --git a/server/handler/test_data/test_get_music_directory_without_tracks b/server/handler/test_data/test_get_music_directory_without_tracks index 4702d84..325fb24 100644 --- a/server/handler/test_data/test_get_music_directory_without_tracks +++ b/server/handler/test_data/test_get_music_directory_without_tracks @@ -16,7 +16,6 @@ "title": "(1994) The Graveyard and the Ballroom" }, { - "coverArt": 4, "created": "0001-01-01T00:00:00Z", "id": 4, "isDir": true, diff --git a/server/handler/test_data/test_search_three_q_13 b/server/handler/test_data/test_search_three_q_13 index 5f848ed..c70a7c2 100644 --- a/server/handler/test_data/test_search_three_q_13 +++ b/server/handler/test_data/test_search_three_q_13 @@ -16,7 +16,7 @@ "artistId": 2, "artist": "13th Floor Elevators", "name": "The Psychedelic Sounds of the 13th Floor Elevators", - "created": "2019-06-05T16:00:10.560355528+01:00" + "created": "2019-06-06T16:38:39.309763889+01:00" } ] } diff --git a/server/handler/test_data/test_search_three_q_ani b/server/handler/test_data/test_search_three_q_ani index 69e491b..bf21ecf 100644 --- a/server/handler/test_data/test_search_three_q_ani +++ b/server/handler/test_data/test_search_three_q_ani @@ -16,7 +16,7 @@ "artistId": 3, "artist": "Anikas", "name": "Anika", - "created": "2019-06-05T16:00:10.565661506+01:00" + "created": "2019-06-06T16:38:39.31657693+01:00" } ] } diff --git a/server/handler/test_data/test_search_two_q_13 b/server/handler/test_data/test_search_two_q_13 index f9f8334..db2f5a2 100644 --- a/server/handler/test_data/test_search_two_q_13 +++ b/server/handler/test_data/test_search_two_q_13 @@ -24,9 +24,11 @@ { "album": "(1994) The Graveyard and the Ballroom", "artist": "A Certain Ratio", + "bitRate": 877, "contentType": "audio/x-flac", "coverArt": 3, "created": "0001-01-01T00:00:00Z", + "duration": 332, "id": 1, "parent": 3, "path": "A Certain Ratio/(1994) The Graveyard and the Ballroom/13.14 Flight.flac", @@ -39,9 +41,11 @@ { "album": "(1966) The Psychedelic Sounds of the 13th Floor Elevators", "artist": "13th Floor Elevators", + "bitRate": 245, "contentType": "audio/mpeg", "coverArt": 7, "created": "0001-01-01T00:00:00Z", + "duration": 154, "id": 35, "parent": 7, "path": "13th Floor Lowervators/(1966) The Psychedelic Sounds of the 13th Floor Elevators/13.21 Before You Accuse Me.mp3",