diff --git a/core/modules/system/tests/fixtures/update/drupal-8.8.0.bare.testing.php.gz b/core/modules/system/tests/fixtures/update/drupal-8.8.0.bare.testing.php.gz deleted file mode 100644 index 418027e5f3..0000000000 --- a/core/modules/system/tests/fixtures/update/drupal-8.8.0.bare.testing.php.gz +++ /dev/null @@ -1,118 +0,0 @@ -\Wsۺ~ϯxL=^{=*-7K%Euf PVIHkoUt4; Ƿ;1QT %ş'?B>b`3b2(LwfI8 "]tRwD ]CcĘ)0S )pcAF2&3"?}J -k2~|/>̿MՕ¶#?#8|o C~0(]c֌HkNq9¡6=~3~YoݻDr==csC};&~.m;=ے-OlVU;wdyo$t^I7|yy|Ttl6uvZk:* NLNX qB+q>sՈXŋ:lJ~^ix L NzwLf~03pcz*źLٗ}u~l>3O+˦LN1Ix3jQQyi}CcW'yDf|=7DB@ 20 DIjHH5sf񉾞F4)y/]b/ugf -ϸ^ # @Xe'?+4 )&Cvp]J0(:)1ш.+W /As:|("eZO(*60Fdv}&gCFLI7]]} 3+Yq8hÊzu11QSHCen6=נ Y -+@`5^XT(A^Ě&~n׍ZMφJ%N8 wc9qnt9nd٭#}Z3"SǢ(v3a%YLlTIbMYQ*B,7Q;Po?dϼx NTX[6~e]IJ#ctl:dkb! 4@R0' U`{P+I7}ԭϪDq2 &ݺRk{qk29`ƭ1mz -G|TWxSfbY$3ŒtYҡ ?*tсIOTFT(́|zE&ihqx̬6.{E%=Ds.,*$ (E 2D aRLh^)J(7%{&\)/j:Yykx"*S}D(_B"@AdUXTdHH,yxd8A5xⴒ6[.a7|jolZ' *S }KQ <*A*$"9ȱj&@p`^ +fa4 noҹ[=j+Ф=byI !S@7AYJPYW+ -12+?[Z_?N:*K4{}c^V %Qy@Dv ?wh[toLcޣ0rL7hșX&xVx^!?.Y'H<0UR.Uw;q -an/ 4Dpl5l޷FAeKd $V,di A%N8(Bx7=+k>s#e87xeΆ -Z@2pxbۉb|f5TcI.TYf -K.wIC&x;uT*LS5o*7кC\/V#$â1&춟tեu&n:Ofg7g+9 3ϟ o -i!`Vi/^X`MK!/GV \hTMh'JQr+ ZꗘibTX%  *Գ1aLVD|pPMaQ*tݵQ6\ZDF1,Q~Q=T1MSYfR)&f%eB\v]. NZ#681IC2]=HMZ?-eY)c^kb)('"NbJ b82UEX^7ẹV~Y#綬fLJY]jad%+9sOvpM!^ "^*.Z34dW3 P8!!.@N2'z`'V6/S Av.e^DM وozA_FlE*wJEqQ_oگӥِ,&M#xrCuSuzB5N q]_^!e&ʹ$"*Fʯ8}f-k̨ZAV? -Gzrn]<^<^fʍn 7cFo\:h>j?De0L>MңހU$u1@k~WDy>=p=ZYM3J!?k5{ہ͹uQM_b gFIP 4&!In Fڱ=wݜ'OuZh,V( K<x{IK]koQ+`r^nko{Zm'Bͱoq *8%~cXE<]2z G6:UQ>Sl qqbTlZ^wtK?#^ڬfa߶Ǎ+lCON?By=i "ՅXBy",0]roG\ ] > Ģ1`E< [؈q`YG\HvU1yɴWW88Ԟ~g̜a;JnLS&]|zw<#udž6h$ ^"+8܅.K' g1{{ ?̸$> B} -v)V/d͎hICD]zD6EFbr. Uq?:ӛ[ ->>9ET>8w޿ެ?GZٷ~{;|<O#;WCRh@~8/dM?DK F`=6D\oBqk46&A {4d;mM[)ޣy3F0^Q] -=Z"+-}GݧM}7ߞ\|M^? ߟ;?̟~WaCBb`p!G++(/Uݣ웑qU4ԩ:d!}oc9(tn<I@fOzwL[̛_zg< 6yݧ?O?|?}uyasߗxm*@_Σ)[eۢ6zv-5WW*tW~͕?^{1|wf_< ߜwD͛|Oaq8Л?  t .(+}3sۅb#.sw.2u8qk8~7-Rn U|;v%&C0hk?Pu_|[VsߊO# ,uhX7!Q4̀YB?&.mil9S;WngP  qy8ƙ<ܚg{tp_uT;H34I<}#y{1bØ_hh"6|uҹ U`r8(+|lc1lj Ո -=>@|9Aāpeb'TwCFEc2.qwՏD#LnikЌ3e0>b.z՜jN2wJ[vy q +y36XbLcC3bVgbh1f:RjkSu`%Gd6 -o6ɺ1)R*Hv5[}BF a/;{Qǧv` / 5Wd6kЁ\O:qAsugd];{Vw2= dz}9~{?{syp`~o߮ϒXfov9!qU#MHfæo|c@ gf4sxwgEoYu#+q:K>{Sr'H[3<7WmLE0ⳗ `+Aa,?eY>;%ӈvfFNOCW) OWo_^_}y^_~?|۫ūOܽq' `7`7帝o -wJK02d4IZ3{ew_ގAGqJ^14$†du*yTǯ$M%L /(bH//bJюAx("r o -1Izt'Ov1CvdvËR3{48P3AG53Ut|i*G ̛ rP5X($R)-NI~9 ,J|*1Q|}wo??SOxŝ"si&)]6 -BV~4 )\3yb)ː`wzۿYtF ^%u$)XW G&򆶈-C\Qzqf-m9áGF}6 [1wM ^9t)biTF8^~/B3O@6)9> | !=7Ho"=`#H[, 8;ND2"D,sb-*껂4+ʊd\3ü;w鯪wJ$>)0&PeeliI}x~t~;X:XpFzRJ.Wej\V)HT T( ,-@5Yb"H h 4U܎Ь %7qO07'd8З/_pT -Ojn+ۖC'99UTԒo#*sy Q@V( UdrFl~eirCYvu,;5p[!^ -rK g {5O\lq)I/usBB.9.ts.tʅ.o -Ȳݭe heX$U?w_pl4j{JW"w*\SHՓ9zj_S `%`^_PaYid Z.s/,/Y}G:@wʐ" ^*wKǦ|RMr@ -p8 /\ -F85i@2dIʣDft?Liؽ b$;܃b_-~mSr %kf̺TuV+RB{v@FM"zD/&jDzWcQa.POAS OEd FuDęq1'}#ї"."vJC;|ýA$~X|/l!9yaxEh$47WX5f3@@WP y}*', U%p©^N"L]l"Xz#tЗFdʼnp&(;Z}E{vކڏFj#۰:B^Z=wdDgowIEQH޼-R(U^)uݒJ?a-GzdPi FwZa Rˬ5ѨvE5iRp)..wMMtv[RkMJ?D4Qu;FC!WQIT$Zrv %N)ꩊYL# ?< -4Ea?Q|ed[} 'Ӓqvjj6faZK@o0&i;{ bQ\Nڂ:1~Z#_ " uR@Ô+AIUp@M>1g]Np۬0Ex’aMƠRs)_%Cf!iA4q!B3j-$Blk沐ee. z>dz= kWz>u~eW~r3/0,ĶB0+\oʝe`q\0,MZ^0xa:"-\l - 8:7; EN?> X<i OBb)ؓh |߲|~M/4l%#zL _.ȊwxNqӖO8:wTc\ Ud@*[z(d(IhO/7{Z -ȫSҒTDcj*82ƫJ^%mQ#MZ;b3| K\UoW/ɡJˌAl1J!t0H#Oyr3uBB bBf!̆ dX !!LC\ R!!B 1[!frs!ܫ avcCH)CC]AG9pQ /B&;[{| ]?Fo-̰yq[R ]n6e*7s+g!#Ԅ/5qҊHom@F9V {8{wAޔg|fL6׌dZ Z&ހWh=Iy -kDT)4%^&ڟ͎Hn$2IaȌV&Ria.gx -*d;TUDM*jH+Jp7X6*dH'ȝ&D# j!@65h%C*uN?MfqbhC{Jm&L<5*hK~d\BymᤂǷR! }Zc*>HQZ/}joB5M_- -!NVRԇ:דcI>yDV#]ѻEh=tC|9?NPoN='"EHǕV&j*6n5jFf *{Gq ;E;UB) -4ye; TB|Y^nș#µlUۦzULY; N.t`rt2E0Wဓc\/9tv",h>oHd>jpm7 -i|# [2`ؖ#;B6 }V9ATT17n)!zrǝ#U(V8;n?+7L!q@@+Yp6:J;"ZYe je1,G$we/ N["gΤD^Tti>c.vp$*ptH7P]*Xby+!;k?4@*U*UR҇YD=TOGk55j26UlܿƱ-?ķtl$AS(IPeÚB8j-5c -4jG`1o9uY4L)-C+w\-UbcVÑ𼎅٣{P$f(pW>|-L0 -*#WEi!WtЃ¸zvΖ*)T&,o&M#>E-ח{b& Q5SxԠZ V<`g8\IY~!MAYOpj"ޏW@Ar3;3n&;yH 2 ,B3'\e*?8ˀ/='"yw,9+[CЕUIH+C˽:کϨ"Y$M>pPrnqiЗF7Tå[s%5{ď#~)Ѐ7qR U T3SURxTr8A 1)=M-B,WjGiJ9og8LIzJڐ_@7 OS8&\wn]¶cı*X6xc lrνAl|9-JP4w0T09H^B_V#< MM<x9J*Mf-CV:5Hd\!L&>Qp<\Oq[*\jbqGk!2MPbWO e1S uMʥnf|=5m`I ;\:;#ԵHPLZĕϦ7v6Ȩ>}UI{%@I ^QQe(IĻw|8vàSfܚq$O@""KAz7)&< ]FA yx.Yqq#*^.g>ABp';k eL̃2?|J^cswČZz޶S=VgG4TlAUFokNAѡ-75 5 ?}Is/n ;cγ3 +ͼOTlFEƬ|~׶ripWlh7ie,y;YխY4z5 E]*>?§i,,!vLD Π6U. K؂P ?{p_1D*LAUյJUb BR Q02 AIF;;,eIf2Ut\K%)IaҧS$l̈h|Oܾa:qb[ʕk rr2PAKeSoӰ)nC<{>6^U9M鑸w8 /`t y~?"`z6q,=+O^pLx'[U1P,GYT[%1zYeFB=cXrfrrvv -و&Xvs^%PKbSui :]tkOUFPZĹ)ppGW=}]^q^ vrL/HrJTr2\?osBoB0hF^ Zdm'KpŸ3d,q_n!~AviflF+WWɝKr ` mm #Z̮j]+;7Jj:xyIz -$fSiV!xmGwm;+#\#E1Kˇ?r[;ngn㎔lF)5"a>鬈6e(}3l0˟#D%fƊ=/΃InDJN2j6$&_`H@ޱj,̉w"OיFVfVaEnlڈ#=XI zYQ#ע:zLǣD3Xe J,lJ{-\ Kս LPeM!Vn,ceNP1< Z줰)#ZhRTUK+*Y$A[G'<"s,ibڿ5]N̛)t檎Iʪy)M[\fQ<~@SI*;4U³,%M!f$Aφ0{Rw$w7E [BLgD HEcۃ9D1Y|l?ڕVueSv}(?g ]y@ŗo7_>xsd#е)IQ+My -0eʻ%U쓘hY }㾸oѾ% y0Sn9", :-e]}*0P^zGԻ͵%eYR ~oYGP GK=LD'Λn:g !xrF2\ #-(| MZݞ$$),fzp|f}k:$O1.2$%@J# wRh>! -e"`I& -F3a"6U mXsddm3M%,cV[F -nb#M58h2Q/Q1B*E)]Ț4ʎ;dd3PT}=IqD"(MBG{Z8aj$yhbDLՄ[2@HB -|x:bR0iD[0sw\<\|-W\A)I F[JyFnt -!%Jny0 r!mʥ,ik&"Dz)RaY]xF|9(o_{i,-L[q4-Wo葲S L7ÛH $B *C>;/2)Ö $-Ct=LATIɬ)ռ!&Ba[{a5yLr()#4>kMQْ` {QvrdZi*wG&Iѐ7컆5s.{$=kn:4L:h腭ٶ>эض`no6L=3gO݁kZwhjĝu'an I,vA~ߚwgt5S;Dfz`%_^z'} 3bYz`OB`v%σL՝سArݱ=3ZBD$J2"Ր$ IN1mgH 6$Ӕ`/!.LP3A6@Iw`l;;C8kiI̙.:xlh"mwgO\$-q/sy g'h58e$㩉&Þ=f\ A<9Z`$YH"z.)wlٙQk(%[K%Q՟Ϟ{G. zh#p&'jg e6Lv!1D4qx;ѬI|fn_ )*piO^Nhͳ]>3}0D8xHph$NY}KﺀM#vM۟fÁ}'W"3W$$ۦ;FkZל!Kg`:vמ&Ƕ;O 3h3OH2 o#ewuMtfF @Yw hٲ5a=Cy \[GzMMw@!m5{H8qD884ǝE=4gE1{3ݙ9G_.MQOݙć(oD8-%{OG-pnˋ#Wp`b!,BI|GOWsYР7nLB -DXDu|"59wƐG=:J 'P] V$z;ܿ pKwJ;5LbΑ-9-zr4:#]#=sF$D;͂Gb4,GFnGeø:pșe^BM< ~sOQ(0w(c $LCgWK~Z .F~ԃ#DhA'sї]i-+ k->D㼙;w: sOc!>e&֛#) 5*{CƯ )7T59:>$g)}1;qH/ِ"@A!#)?ʿF#~ׁN 9GP縔\n/`h (Ϩ % -|~(ZCiq45"pTOvQ0lcc>W"KtA!kK(R0,>xT6"+_F#zqQ>MZa`YɨӄW Fw:02z `Me@!iahBk#H'zS:HAEl4YPL18|]lȹ[`97 ٛ/.e{M61ёtɅ#Sf4IkTq!1:WD5`\s9,.Jy07ޜ"ae+T;V4 ,CovRU-0x])֢xM| .]`S£Y?/Jʩ)j߽RI/"nk&nKr7 aS7ٔ|&=  yD7#_U+M^yVC5\rT3Bӈdnnn8ߧUO` -*V^*/Qd-nE5ѵ-6ȃl.F!cS M^N\~NI**T-*'iKWtT=L>@mڙma)Ҧ +c$GLCO⊪Df+¼(K <%M)teZk/zvO4x%ӔϿ;WK EP̢yw#oÇ`C5F{ &WN0r‰EE6Ȧ AMtJ!3{/9=F5JM -h"BFSg>~'zbX!pOL5(tIzO~dta3 ,X$ s,q}y RMc"Ge c21 = :FO;ԚFY+S2\1=<4 -}g,iX@HFo#3!-0z6we~D}i - !$3!݂aVMlgWbWJ<*~?ݲ*ٯwK%,N*ndSiokt'PXdB3o<u $;+;+ AS C^S ޠ7L e_ښ"2z"Kho`/wf%5{p~t܉>-b3[?hlyEaEE!&A^M= Ou2'ne?8rx2Wna"J\F'O\mHP\5Pvby:ƣГ'Q iz -S{q|k;֚ES7;FyZٶPU>xuU'ɶ0NbHOܫf8˫v #tcF@ۣ\&CSG"ƹ<ҙզIDa9Tktʰ2 [P=hqT3ZFauF긭( -5RCƱ8x Pyn^|'l;ydiO~B-n]<;xx]$|Q0qs۹LILD!%R"9;87>&~FBJgl0M FSٖ6}hb6Jؑ%*u{βcZŢb]Mڂ  [h! >="iI -o9.{۰K˷%7nv;gN~LxeŠPWN -l-t\t*6;oc -ͭ+Դ uTn#)-"M9zFiA -ABt -#k BOCh5VK -E?H^6 ge\$:I66> -8%z& 䆑ӪБ 2RÇ!o q^j@?‹Ret[JS&O,}rΜ 9%*dN7{gr7~ɏe0 Q`پtob}̤AY]zKnb4Rk GxM0qI+'d $'AW'[A\n1GtoO~*6 ad/$n3F@3~;-Xh #\; -A Y#@NᲊFAp,oBwJF#3D;8FMpC)p ؍ywཷ3vDQ;Co+ƞ(qj lw|6Йe0*Nq B.nHYP(gG(?iZXbHcGm:G=eI7q:W. B8Ht@e[סٝn9jvCT!dkEb:m3:n& Or$G_8!IGc-%~u|3eyaKۓ(^M$߫SExa,~'Y{˰?6D[.1JPmE&\۽y3L/wjX"E[vI=;. =.j wBWv[ -oGWyEY/X_ ! -T5p~"_Gm䈈8B_s"HqŃH ;V5yct׈K&01%I5ijANGG$lr\GV;1X6Ay(fb(H - -Yv{eZlW"8mIoe}o"׆@{&fŅ̀oc`\Э=z07o"ՀkrPR{!83xt*C{N2ot9kWIjP:cQ킹J+LZo*|wxg$ ʁS56WhaGڊ- \ ޥU ̼7eWE芧[CPv#MTjUٺB2,ILzȍ7I؛V5h +KJw„ -fl3`W7`/K<+@E+|I[_'N/֯ Y|c2ЬN)t~5I>\;ƥŽ6 6MzvYG(DCTͶ'3z -ϱ#NX|pt{mGmj)GAc tݪL6~]GJ v%WAy,؉V##$d kIk#LUzĈzG^",K`7U1bgrD#Կu2nA2ѷD~$o:AFbubV=! !LD$ًXHb.㞸S51ɕQOR_z#ڴm;D1av1XPnؠ -dxP1&}bqV2]s헄];`X,`8irSU~3 hфsWiٞ -JXeF8G۱OZeE CS_EcTDkʒdPȥ0_"Y)E̐rGFOq"EFLI $лg76a=ȝ8r"Cpw0ߕSv[gUģis 1a7@TRَ oa.4`x.2 5\H;F~ߒm+r88jF&v -E@+cș73/ EEV쁸b-F 6GNrSmEvW A1ldˈDî#G(p#an]J2T4W%#Vbd p£^UUc|̶Fbp1ޥ{0r|}9l'|2;b4!g\9S\!x?lCgW_={L&YEZF˞o]ТI>٦6) w_O:ޮb3 b&b4s?/jVGM平7v=[RЯ6UT1&9f:(*weɉ6^Dz^XV*H֮:()X%RjM3ȼ5Sl5Oʉdکh-N~m5mbQsvO)񗴿H'+rΠ-]7%G$kEH,bi$tMSL֩YbpLʘl6uT -BSgw9ם;c]v0|oz GǦVVŞىn٨O:4@ldk3.FJ(~NǛg^sS˅\( v9Xy=F| Gw}68C !G]@naHGˬE9ajl`&lJL6b "qtku1uN;EeC3] Ǧ'sЋ)q7Rq)}e\rh28F~k^A`n5}@NɎ~vE7݀A4(vP}*[;3!DbAvSq'3H#kҏlxL+HWx.m-jK+2]]0P1G~rZ̦AYxko -: Kz Gs2g]6ㅷc˾ d@p1bH -|5fQΞ%AfiB wpe )#Ԇ Hr̜ڟ Fp~a=By c݌~E܂!HУ#&[VS-[z@MKJOyH_'Bl)XRԊ*0iن5`9 -|-U ne ̑(AAO?Η}r-pUJ`=L6 Qc`/|8tjŐM-&9F$D X -7\yҿ^ff 'Xs2# Dx xlU!F3a!`{G>XA~2 21Fb ~d?҃'ί e:h\#}qwHNW>d#3CQѨH~5'hULJ^4+n*Z8ZujGkȯ!ؙBtK*)M $ fkj'BNh}`nmعE_GNȾz䞢^1P.>$Z9?ݦ?ъWqױGI_a`L<'J[#Aq1aӋ_FxD/$'C 5w1(8 5RpY#=vHbXmH$ejB'Ӡ=I>bWSG_^[ͺ|ֻ}4~Y#@_oa^Bk -}MS{ٽd=rGBz]N$LUF$;B4}Nm䑷 ]Q쌪Ģb3fdl7􂖢ҙ/`YAfuЪ)Za)*y`Ff}$n9 y_*$4,Gh@.دph;1Ud=Da/ =wP)c+_}xyq} c~bR"X yţHg .mqKʷ9%]6u*osdMe(gļ_EC*G+N>AXQi>%kIkٳݱ֟tgm24,}9FFxqcZn;S}E13kt-{bݱnXEYӉekM0g\,1Ab׀&"[V Kq$ >)!~QR ++VhZT"I˄$<hC-(..dS>O@ T̐n\H‘&/ex H^bfاEC7԰'4FY$QSl]>xKػLٽko=ϟY%⭛o 64TlF@ .0;f!yZp]K'vf \L:87Lpɕ7uq>uWT`J\F+d$l'YV;ɲIVd IְdA`ѨX[Td_DJQ ˳{bezQV7g o3AÔr"PH;*{PqDi$HEM9ȣ,p1q -걯HTG@ɽAa 0A"`qXj |Hrrdr%8{ZK]KvȠ+0^%?@ֱgӼ-EK= D:t!s$Ijсf}iΜ去/7ֽ@;߹05} Q5p)H8W1{B -ܩÁDsQ⣗w/-F M H%Ǧh$1CEHòt>ܟ: f 4jJ n;h;1wz\+jf HHJ![a?ʼn%J^+H }>X +]zMǓ ΂ z:s|v;4BB3gѠ`w`g6nٛ V{Ȃ'waF|%]!4y$^NÊLRRUA$ZBߟwV1$_u 4E;op>Om6ȶ);+cl\u+3vƨ>aH@~f>^-HE@ٝEace UA` o-ASʠ؇I؝SaQ8S8bWK  ~zE'AJ]j-l_ޡ7-i섰x`>aź+RIoʤy)yMjTҌj,z5qxdž̩nB<븝{*[J]-ʝqȃ;UUd0}9PaPLC]6'Yv޽ ߋ@&y!Tz{rU}]GJ4p`3ԇH;3-E}mJ"j@+<65~ [9| p?9$Z[;dG<[OVN5;g(]s—)<CAJ͘dބa 8X -61njGXw6A8n}u&N[8$仴tWp,O9yq78S$*!p_:3C@ڣ}t4l$1჎<@1@#,7r$YuZ`B+0Slΰ -# : pishܪq]q CQI5s1Θ3WA¯l_+CTOjK>P¼(!_ĹA@ϿC 1 1Ymԍ{Q2; -yau`R1Lsk@Fȏ{ݡ\[$̴vBTkg)eJD=]Uth1TL#*!VBEDELVH<g҈ؽ0+$G>u!X˃ċk$BODP)(Dk5l8gc;-,ۙElG@"~s2<#M$ OS "_폯z{A-'DJm.5Op;y{f@hߕF/nb)C<~{нA@ϙ& /  -(A'"cI!D"" I|}rzM\cn$ވ.D`5*OVecŻ[A|?_ޱlG7]gh#) -ݒb#C32t[vy)."@baKqRD19鋲ޤH\܆Gog8C׃lk)Z9b(',QExnwơjT@Jdq`EB6&Z.ڸ=7 hxLs:G[i*Js-oa%ƅri%tr4a#fD*FĿMu' 33yˉ$0Gd+q@jG10iJӓUF{H)N80؈-Z%x[dDzيL% iڬkfٯ@;gl!ơĊ݋>WrUPKFaь5THsf7jYMq˖h(A[Kˊޮ* [CMbOu09#9Y>rdM9[j4$.葷&* jL2#Qqf,T(6 hI u.=QzS}ߒÂ+4o3P m#ݽc.L)H˿L+xŸ^}|ʹ2w[o~}8CvojLCɄ=@sNoK6=Z fۃ6H 2O qg3ޙ,t' \ No newline at end of file diff --git a/core/modules/system/tests/fixtures/update/drupal-8.upgrade-test-schema-enabled.php b/core/modules/system/tests/fixtures/update/drupal-8.upgrade-test-schema-enabled.php deleted file mode 100644 index eb37c0ab93..0000000000 --- a/core/modules/system/tests/fixtures/update/drupal-8.upgrade-test-schema-enabled.php +++ /dev/null @@ -1,54 +0,0 @@ -schema()->createTable('upgrade_test_schema_table', [ - 'fields' => [ - 'a' => [ - 'type' => 'int', - 'not null' => TRUE, - 'size' => 'normal', - ], - 'b' => [ - 'type' => 'blob', - 'not null' => FALSE, - 'size' => 'normal', - ], - ], -]); - -// Set the schema version. -$connection->merge('key_value') - ->condition('collection', 'system.schema') - ->condition('name', 'upgrade_test_schema') - ->fields([ - 'collection' => 'system.schema', - 'name' => 'upgrade_test_schema', - 'value' => 'i:8000;', - ]) - ->execute(); - -// Update core.extension. -$extensions = $connection->select('config') - ->fields('config', ['data']) - ->condition('collection', '') - ->condition('name', 'core.extension') - ->execute() - ->fetchField(); -$extensions = unserialize($extensions); -$extensions['module']['upgrade_test_schema'] = 8000; -$connection->update('config') - ->fields([ - 'data' => serialize($extensions), - ]) - ->condition('collection', '') - ->condition('name', 'core.extension') - ->execute(); diff --git a/core/modules/system/tests/modules/update_test_schema/update_test_schema.install b/core/modules/system/tests/modules/update_test_schema/update_test_schema.install index c4a7cfc0ad..35b6fc4979 100644 --- a/core/modules/system/tests/modules/update_test_schema/update_test_schema.install +++ b/core/modules/system/tests/modules/update_test_schema/update_test_schema.install @@ -42,7 +42,7 @@ function update_test_schema_schema() { ], ]; switch ($schema_version) { - case 8001: + case 8801: // Add the index. $table['indexes']['test'] = ['a']; break; @@ -53,12 +53,12 @@ function update_test_schema_schema() { // Update hooks are defined depending on state as well. $schema_version = \Drupal::state()->get('update_test_schema_version', 8000); -if ($schema_version >= 8001) { +if ($schema_version >= 8801) { /** - * Schema version 8001. + * Schema version 8801. */ - function update_test_schema_update_8001() { + function update_test_schema_update_8801() { $table = [ 'fields' => [ 'a' => ['type' => 'int', 'not null' => TRUE], @@ -72,12 +72,12 @@ function update_test_schema_update_8001() { } -if ($schema_version >= 8002) { +if ($schema_version >= 8802) { /** - * Schema version 8002. + * Schema version 8802. */ - function update_test_schema_update_8002() { + function update_test_schema_update_8802() { // Return a message that contains a system path with an alias. // @see \Drupal\FunctionalTests\Update\UpdatePathTestBaseTest::testPathAliasProcessing() return new FormattableMarkup('Visit the structure page to do many useful things.', [ @@ -87,12 +87,12 @@ function update_test_schema_update_8002() { } -if ($schema_version >= 8003) { +if ($schema_version >= 8803) { /** - * Schema version 8003. + * Schema version 8803. */ - function update_test_schema_update_8003() { + function update_test_schema_update_8803() { // Uninstall a module with no dependencies installed by the Standard // profile. \Drupal::service('module_installer')->uninstall(['page_cache']); diff --git a/core/modules/system/tests/modules/update_test_semver_update_n/update_test_semver_update_n.install b/core/modules/system/tests/modules/update_test_semver_update_n/update_test_semver_update_n.install index aacb595710..8c1067bb91 100644 --- a/core/modules/system/tests/modules/update_test_semver_update_n/update_test_semver_update_n.install +++ b/core/modules/system/tests/modules/update_test_semver_update_n/update_test_semver_update_n.install @@ -6,8 +6,8 @@ */ /** - * Update 8001. + * Update 8801. */ -function update_test_semver_update_n_update_8001() { - \Drupal::state()->set('update_test_semver_update_n_update_8001', 'Yes, I was run. Thanks for testing!'); +function update_test_semver_update_n_update_8801() { + \Drupal::state()->set('update_test_semver_update_n_update_8801', 'Yes, I was run. Thanks for testing!'); } diff --git a/core/modules/system/tests/modules/upgrade_test_schema/upgrade_test_schema.info.yml b/core/modules/system/tests/modules/upgrade_test_schema/upgrade_test_schema.info.yml deleted file mode 100644 index be57ba5512..0000000000 --- a/core/modules/system/tests/modules/upgrade_test_schema/upgrade_test_schema.info.yml +++ /dev/null @@ -1,6 +0,0 @@ -name: 'Upgrade test schema' -type: module -description: 'Support module for update testing.' -package: Testing -version: VERSION -core: 8.x diff --git a/core/modules/system/tests/modules/upgrade_test_schema/upgrade_test_schema.install b/core/modules/system/tests/modules/upgrade_test_schema/upgrade_test_schema.install deleted file mode 100644 index b218bf0709..0000000000 --- a/core/modules/system/tests/modules/upgrade_test_schema/upgrade_test_schema.install +++ /dev/null @@ -1,104 +0,0 @@ - 'Path alias test', - 'value' => 'Check a path alias for the admin page', - 'severity' => REQUIREMENT_INFO, - 'description' => new FormattableMarkup('Visit the structure page to do many useful things.', [ - ':link' => Url::fromRoute('system.admin_structure')->toString(), - ]), - ]; - } - - return $requirements; -} - -/** - * Implements hook_schema(). - * - * The schema defined here will vary on state to allow for update hook testing. - */ -function upgrade_test_schema_schema() { - $schema_version = \Drupal::state()->get('upgrade_test_schema_version', 8000); - $table = [ - 'fields' => [ - 'a' => ['type' => 'int', 'not null' => TRUE], - 'b' => ['type' => 'blob', 'not null' => FALSE], - ], - ]; - switch ($schema_version) { - case 8801: - // Add the index. - $table['indexes']['test'] = ['a']; - break; - } - return ['upgrade_test_schema_table' => $table]; -} - -// Update hooks are defined depending on state as well. -$schema_version = \Drupal::state()->get('upgrade_test_schema_version', 8000); - -if ($schema_version >= 8801) { - - /** - * Schema version 8801. - */ - function upgrade_test_schema_update_8801() { - $table = [ - 'fields' => [ - 'a' => ['type' => 'int', 'not null' => TRUE], - 'b' => ['type' => 'blob', 'not null' => FALSE], - ], - ]; - - // Add a column. - Database::getConnection()->schema()->addIndex('upgrade_test_schema_table', 'test', ['a'], $table); - } - -} - -if ($schema_version >= 8802) { - - /** - * Schema version 8802. - */ - function upgrade_test_schema_update_8802() { - // Return a message that contains a system path with an alias. - // @see \Drupal\FunctionalTests\Update\UpdatePathTestBaseTest::testPathAliasProcessing() - return new FormattableMarkup('Visit the structure page to do many useful things.', [ - ':link' => Url::fromRoute('system.admin_structure')->toString(), - ]); - } - -} - -if ($schema_version >= 8803) { - - /** - * Schema version 8803. - */ - function upgrade_test_schema_update_8803() { - // Uninstall a module with no dependencies installed by the Standard - // profile. - \Drupal::service('module_installer')->uninstall(['page_cache']); - // Install a test module that is not installed in any of the database - // dumps. - \Drupal::service('module_installer')->install(['module_test']); - } - -} diff --git a/core/modules/system/tests/src/Functional/Update/UpdatePathTestBase88BareTest.php b/core/modules/system/tests/src/Functional/Update/UpdatePathTestBase88BareTest.php deleted file mode 100644 index dda77a1ac7..0000000000 --- a/core/modules/system/tests/src/Functional/Update/UpdatePathTestBase88BareTest.php +++ /dev/null @@ -1,99 +0,0 @@ -databaseDumpFiles = [ - __DIR__ . '/../../../../tests/fixtures/update/drupal-8.8.0.bare.testing.php.gz', - __DIR__ . '/../../../../tests/fixtures/update/drupal-8.upgrade-test-schema-enabled.php', - ]; - } - - /** - * Tests that the database was properly loaded. - */ - public function testDatabaseLoaded() { - // Set a value in the cache to prove caches are cleared. - \Drupal::service('cache.default')->set(__CLASS__, 'Test'); - - foreach (['user' => 8100, 'system' => 8805, 'upgrade_test_schema' => 8000] as $module => $schema) { - $this->assertEqual(drupal_get_installed_schema_version($module), $schema, new FormattableMarkup('Module @module schema is @schema', ['@module' => $module, '@schema' => $schema])); - } - - // Ensure that all {router} entries can be unserialized. If they cannot be - // unserialized a notice will be thrown by PHP. - - $result = \Drupal::database()->query("SELECT name, route from {router}")->fetchAllKeyed(0, 1); - // For the purpose of fetching the notices and displaying more helpful error - // messages, let's override the error handler temporarily. - set_error_handler(function ($severity, $message, $filename, $lineno) { - throw new \ErrorException($message, 0, $severity, $filename, $lineno); - }); - foreach ($result as $route_name => $route) { - try { - unserialize($route); - } - catch (\Exception $e) { - $this->fail(sprintf('Error "%s" while unserializing route %s', $e->getMessage(), Html::escape($route_name))); - } - } - restore_error_handler(); - - // Before accessing the site we need to run updates first or the site might - // be broken. - // Increment the schema version. - \Drupal::state()->set('upgrade_test_schema_version', 8801); - $this->runUpdates(); - $this->assertEqual(\Drupal::config('system.site')->get('name'), 'Drupal8'); - $this->drupalGet(''); - $this->assertText('Drupal8'); - - // Ensure that the database tasks have been run during set up. Neither MySQL - // nor SQLite make changes that are testable. - $database = $this->container->get('database'); - if ($database->driver() == 'pgsql') { - $this->assertEqual('on', $database->query("SHOW standard_conforming_strings")->fetchField()); - $this->assertEqual('escape', $database->query("SHOW bytea_output")->fetchField()); - } - // Ensure the test runners cache has been cleared. - $this->assertFalse(\Drupal::service('cache.default')->get(__CLASS__)); - } - - /** - * Test that updates are properly run. - */ - public function testUpdateHookN() { - $connection = Database::getConnection(); - - // Increment the schema version. - \Drupal::state()->set('upgrade_test_schema_version', 8801); - $this->runUpdates(); - - // Ensure schema has changed. - $this->assertEqual(drupal_get_installed_schema_version('upgrade_test_schema', TRUE), 8801); - // Ensure the index was added for column a. - $this->assertTrue($connection->schema()->indexExists('upgrade_test_schema_table', 'test'), 'Version 8801 of the upgrade_test_schema module is installed.'); - } - -} diff --git a/core/modules/system/tests/src/Functional/Update/UpdatePathTestBase88FilledTest.php b/core/modules/system/tests/src/Functional/Update/UpdatePathTestBase88FilledTest.php deleted file mode 100644 index e9e36f041e..0000000000 --- a/core/modules/system/tests/src/Functional/Update/UpdatePathTestBase88FilledTest.php +++ /dev/null @@ -1,436 +0,0 @@ -databaseDumpFiles[0] = __DIR__ . '/../../../../tests/fixtures/update/drupal-8.8.0.filled.standard.php.gz'; - } - - /** - * Tests that the content and configuration were properly updated. - */ - public function testUpdatedSite() { - // Increment the schema version. - \Drupal::state()->set('upgrade_test_schema_version', 8801); - $this->runUpdates(); - - $spanish = \Drupal::languageManager()->getLanguage('es'); - - $expected_node_data = [ - [1, 'article', 'en', 'Test Article - New title'], - [2, 'book', 'en', 'Book page'], - [3, 'forum', 'en', 'Forum topic'], - [4, 'page', 'en', 'Test page'], - [8, 'test_content_type', 'en', 'Test title'], - ]; - foreach ($expected_node_data as $node_data) { - $id = $node_data[0]; - $type = $node_data[1]; - $langcode = $node_data[2]; - $title = $node_data[3]; - - // Make sure our English nodes still exist. - $node = Node::load($id); - $this->assertEqual($node->language()->getId(), $langcode); - $this->assertEqual($node->getType(), $type); - $this->assertEqual($node->getTitle(), $title); - // Assert that nodes are all published. - $this->assertTrue($node->isPublished()); - $this->drupalGet('node/' . $id); - $this->assertText($title); - } - - // Make sure the translated node still exists. - $translation = Node::load(8)->getTranslation('es'); - $this->assertEqual('Test title Spanish', $translation->getTitle()); - - // Make sure our alias still works. - $this->drupalGet('test-article'); - $this->assertText('Test Article - New title'); - $this->assertText('Body'); - $this->assertText('Tags'); - - // Make sure a translated page exists. - $this->drupalGet('node/8', ['language' => $spanish]); - // Check for text of two comments. - $this->assertText('Hola'); - $this->assertText('Hello'); - // The user entity reference field is access restricted. - $this->assertNoText('Test 12'); - // Make sure all other field labels are there. - for ($i = 1; $i <= 23; $i++) { - if ($i != 12) { - $this->assertText('Test ' . $i); - } - } - - // Make sure the translated slogan appears. - $this->assertText('drupal Spanish'); - - // Make sure the custom block appears. - $this->drupalGet(''); - // Block title. - $this->assertText('Another block'); - // Block body. - $this->assertText('Hello'); - - // Log in as user 1. - $account = User::load(1); - $account->setPassword('drupal'); - $account->setEmail('drupal@example.com'); - $account->setUsername('drupal'); - $account->passRaw = 'drupal'; - $account->save(); - $this->drupalLogin($account); - - // Make sure we can see the access-restricted entity reference field - // now that we're logged in. - $this->drupalGet('node/8', ['language' => $spanish]); - $this->assertText('Test 12'); - $this->assertLink('drupal'); - - // Make sure the content for node 8 is still in the edit form. - $this->drupalGet('node/8/edit'); - $this->assertText('Test title'); - $this->assertText('Test body'); - $this->assertFieldChecked('edit-field-test-1-value'); - $this->assertRaw('2015-08-16'); - $this->assertRaw('test@example.com'); - $this->assertRaw('drupal.org'); - $this->assertText('0.1'); - $this->assertText('0.2'); - $this->assertRaw('+31612345678'); - $this->assertRaw('+31612345679'); - $this->assertText('Test Article - New title'); - $this->assertText('test.txt'); - $this->assertText('druplicon.small'); - $this->assertRaw('General discussion'); - $this->assertText('Test Article - New title'); - $this->assertText('Test 1'); - $this->assertRaw('0.01'); - $this->drupalPostForm('node/8/edit', [], 'Save (this translation)'); - $this->assertResponse(200); - $this->drupalGet('node/8/edit', ['language' => $spanish]); - $this->assertText('Test title Spanish'); - $this->assertText('Test body Spanish'); - - // Make sure the user page is correct. - $this->drupalGet('user/3'); - $this->assertText('usuario_test'); - $this->assertRaw('druplicon.small'); - $this->assertText('Test file field'); - $this->assertLink('test.txt'); - - // Make sure the user is translated. - $this->drupalGet('user/3/translations'); - $this->assertNoText('Not translated'); - - // Make sure the custom field on the user is still there. - $this->drupalGet('admin/config/people/accounts/fields'); - $this->assertText('Test file field'); - - // Make sure the test view still exists. - $this->drupalGet('admin/structure/views/view/test_view'); - $this->assertText('Test view'); - - // Make sure the book node exists. - $this->drupalGet('admin/structure/book'); - $this->clickLink('Test Article - New title'); - $this->assertText('Body'); - $this->assertText('Tags'); - $this->assertRaw('Text format'); - - // Make sure that users still exist. - $this->drupalGet('admin/people'); - $this->assertText('usuario_test'); - $this->assertText('drupal'); - $this->drupalGet('user/1/edit'); - $this->assertRaw('drupal@example.com'); - - // Make sure the content view works. - $this->drupalGet('admin/content'); - $this->assertText('Test title'); - - // Make sure our custom blocks show up. - $this->drupalGet('admin/structure/block'); - $this->assertText('Another block'); - $this->assertText('Test block'); - $this->drupalGet('admin/structure/block/block-content'); - $this->assertText('Another block'); - $this->assertText('Test block'); - - // Make sure our custom visibility conditions are correct. - $this->drupalGet('admin/structure/block/manage/testblock'); - $this->assertNoFieldChecked('edit-visibility-language-langcodes-es'); - $this->assertFieldChecked('edit-visibility-language-langcodes-en'); - $this->assertNoFieldChecked('edit-visibility-node-type-bundles-book'); - $this->assertFieldChecked('edit-visibility-node-type-bundles-test-content-type'); - - // Make sure our block is still translated. - $this->drupalGet('admin/structure/block/manage/testblock/translate/es/edit'); - $this->assertRaw('Test block spanish'); - - // Make sure our custom text format exists. - $this->drupalGet('admin/config/content/formats'); - $this->assertText('Test text format'); - $this->drupalGet('admin/config/content/formats/manage/test_text_format'); - $this->assertResponse('200'); - - // Make sure our feed still exists. - $this->drupalGet('admin/config/services/aggregator'); - $this->assertText('Test feed'); - $this->drupalGet('admin/config/services/aggregator/fields'); - $this->assertText('field_test'); - - // Make sure our view appears in the overview. - $this->drupalGet('admin/structure/views'); - $this->assertText('test_view'); - $this->assertText('Test view'); - - // Make sure our custom forum exists. - $this->drupalGet('admin/structure/forum'); - $this->assertText('Test forum'); - - // Make sure our custom menu exists. - $this->drupalGet('admin/structure/menu'); - $this->assertText('Test menu'); - - // Make sure our custom menu exists. - $this->drupalGet('admin/structure/menu/manage/test-menu'); - $this->clickLink('Admin'); - // Make sure the translation for the menu is still correct. - $this->drupalGet('admin/structure/menu/manage/test-menu/translate/es/edit'); - $this->assertRaw('Menu test'); - // Make sure our custom menu link exists. - $this->drupalGet('admin/structure/menu/item/1/edit'); - $this->assertFieldChecked('edit-enabled-value'); - - // Make sure our comment type exists. - $this->drupalGet('admin/structure/comment'); - $this->assertText('Test comment type'); - $this->drupalGet('admin/structure/comment/manage/test_comment_type/fields'); - $this->assertText('comment_body'); - - // Make sure our contact form exists. - $this->drupalGet('admin/structure/contact'); - $this->assertText('Test contact form'); - $this->drupalGet('admin/structure/types'); - $this->assertText('Test content type description'); - $this->drupalGet('admin/structure/types/manage/test_content_type/fields'); - - // Make sure fields are the right type. - $this->assertLink('Text (formatted, long, with summary)'); - $this->assertLink('Boolean'); - $this->assertLink('Comments'); - $this->assertLink('Date'); - $this->assertLink('Email'); - $this->assertLink('Link'); - $this->assertLink('List (float)'); - $this->assertLink('Telephone number'); - $this->assertLink('Entity reference'); - $this->assertLink('File'); - $this->assertLink('Image'); - $this->assertLink('Text (plain, long)'); - $this->assertLink('List (text)'); - $this->assertLink('Text (formatted, long)'); - $this->assertLink('Text (plain)'); - $this->assertLink('List (integer)'); - $this->assertLink('Number (integer)'); - $this->assertLink('Number (float)'); - - // Make sure our form mode exists. - $this->drupalGet('admin/structure/display-modes/form'); - $this->assertText('New form mode'); - - // Make sure our view mode exists. - $this->drupalGet('admin/structure/display-modes/view'); - $this->assertText('New view mode'); - $this->drupalGet('admin/structure/display-modes/view/manage/node.new_view_mode'); - $this->assertResponse(200); - - // Make sure our other language is still there. - $this->drupalGet('admin/config/regional/language'); - $this->assertText('Spanish'); - - // Make sure our custom date format exists. - $this->drupalGet('admin/config/regional/date-time'); - $this->assertText('Test date format'); - $this->drupalGet('admin/config/regional/date-time/formats/manage/test_date_format'); - $this->assertOptionSelected('edit-langcode', 'es'); - - // Make sure our custom image style exists. - $this->drupalGet('admin/config/media/image-styles/manage/test_image_style'); - $this->assertText('Test image style'); - $this->assertText('Desaturate'); - $this->assertText('Convert PNG'); - - // Make sure our custom responsive image style exists. - $this->drupalGet('admin/config/media/responsive-image-style/test'); - $this->assertResponse(200); - $this->assertText('Test'); - - // Make sure our custom shortcut exists. - $this->drupalGet('admin/config/user-interface/shortcut'); - $this->assertText('Test shortcut'); - $this->drupalGet('admin/config/user-interface/shortcut/manage/test/customize'); - $this->assertText('All content'); - - // Make sure our language detection settings are still correct. - $this->drupalGet('admin/config/regional/language/detection'); - $this->assertFieldChecked('edit-language-interface-enabled-language-user-admin'); - $this->assertFieldChecked('edit-language-interface-enabled-language-url'); - $this->assertFieldChecked('edit-language-interface-enabled-language-session'); - $this->assertFieldChecked('edit-language-interface-enabled-language-user'); - $this->assertFieldChecked('edit-language-interface-enabled-language-browser'); - - // Make sure strings are still translated. - $this->drupalGet('admin/structure/views/view/content/translate/es/edit'); - $this->assertText('Contenido'); - $this->drupalPostForm('admin/config/regional/translate', ['string' => 'Full comment'], 'Filter'); - $this->assertText('Comentario completo'); - - // Make sure our custom action is still there. - $this->drupalGet('admin/config/system/actions'); - $this->assertText('Test action'); - $this->drupalGet('admin/config/system/actions/configure/test_action'); - $this->assertText('test_action'); - $this->assertRaw('drupal.org'); - - // Make sure our ban still exists. - $this->drupalGet('admin/config/people/ban'); - $this->assertText('8.8.8.8'); - - // Make sure our vocabulary exists. - $this->drupalGet('admin/structure/taxonomy/manage/test_vocabulary/overview'); - - // Make sure our terms exist. - $this->assertText('Test root term'); - $this->assertText('Test child term'); - $this->drupalGet('taxonomy/term/3'); - $this->assertResponse('200'); - - // Make sure the terms are still translated. - $this->drupalGet('taxonomy/term/2/translations'); - $this->assertLink('Test root term - Spanish'); - - // Make sure our contact form exists. - $this->drupalGet('admin/structure/contact'); - $this->assertText('Test contact form'); - $this->drupalGet('admin/structure/contact/manage/test_contact_form'); - $this->assertText('test@example.com'); - $this->assertText('Hello'); - $this->drupalGet('admin/structure/contact/manage/test_contact_form/translate/es/edit'); - $this->assertText('Hola'); - $this->assertRaw('Test contact form Spanish'); - - // Make sure our modules are still enabled. - $expected_enabled_modules = [ - 'action', - 'aggregator', - 'ban', - 'basic_auth', - 'block', - 'block_content', - 'book', - 'breakpoint', - 'ckeditor', - 'color', - 'comment', - 'config', - 'config_translation', - 'contact', - 'content_translation', - 'contextual', - 'datetime', - 'dblog', - 'editor', - 'field', - 'field_ui', - 'file', - 'filter', - 'hal', - 'help', - 'history', - 'image', - 'language', - 'link', - 'locale', - 'menu_ui', - 'migrate', - 'migrate_drupal', - 'node', - 'options', - 'page_cache', - 'path', - 'quickedit', - 'rdf', - 'responsive_image', - 'rest', - 'search', - 'serialization', - 'shortcut', - 'simpletest', - 'statistics', - 'syslog', - 'system', - 'taxonomy', - 'telephone', - 'text', - 'toolbar', - 'tour', - 'tracker', - 'update', - 'user', - 'views_ui', - 'forum', - 'menu_link_content', - 'views', - 'standard', - ]; - foreach ($expected_enabled_modules as $module) { - $this->assertTrue($this->container->get('module_handler')->moduleExists($module), 'The "' . $module . '" module is still enabled.'); - } - - // Make sure our themes are still enabled. - $expected_enabled_themes = [ - 'bartik', - 'classy', - 'seven', - 'stark', - ]; - foreach ($expected_enabled_themes as $theme) { - $this->assertTrue($this->container->get('theme_handler')->themeExists($theme), 'The "' . $theme . '" is still enabled.'); - } - - // Ensure that the Book module's node type does not have duplicated enforced - // dependencies. - // @see system_post_update_fix_enforced_dependencies() - $book_node_type = NodeType::load('book'); - $this->assertEqual(['enforced' => ['module' => ['book']]], $book_node_type->get('dependencies')); - } - - /** - * {@inheritdoc} - */ - protected function replaceUser1() { - // Do not replace the user from our dump. - } - -} diff --git a/core/modules/system/tests/src/Functional/Update/UpdatePathTestBaseFilledTest.php b/core/modules/system/tests/src/Functional/Update/UpdatePathTestBaseFilledTest.php index 05c112055d..2e7efeaa49 100644 --- a/core/modules/system/tests/src/Functional/Update/UpdatePathTestBaseFilledTest.php +++ b/core/modules/system/tests/src/Functional/Update/UpdatePathTestBaseFilledTest.php @@ -26,13 +26,15 @@ class UpdatePathTestBaseFilledTest extends UpdatePathTestBaseTest { */ protected function setDatabaseDumpFiles() { parent::setDatabaseDumpFiles(); - $this->databaseDumpFiles[0] = __DIR__ . '/../../../../tests/fixtures/update/drupal-8.filled.standard.php.gz'; + $this->databaseDumpFiles[0] = __DIR__ . '/../../../../tests/fixtures/update/drupal-8.8.0.filled.standard.php.gz'; } /** * Tests that the content and configuration were properly updated. */ public function testUpdatedSite() { + // Increment the schema version. + \Drupal::state()->set('update_test_schema_version', 8801); $this->runUpdates(); $spanish = \Drupal::languageManager()->getLanguage('es'); @@ -97,7 +99,11 @@ public function testUpdatedSite() { // Log in as user 1. $account = User::load(1); + $account->setPassword('drupal'); + $account->setEmail('drupal@example.com'); + $account->setUsername('drupal'); $account->passRaw = 'drupal'; + $account->save(); $this->drupalLogin($account); // Make sure we can see the access-restricted entity reference field diff --git a/core/tests/Drupal/FunctionalTests/Update/UpdatePathTestBase88Test.php b/core/tests/Drupal/FunctionalTests/Update/UpdatePathTestBase88Test.php deleted file mode 100644 index 95093ef77f..0000000000 --- a/core/tests/Drupal/FunctionalTests/Update/UpdatePathTestBase88Test.php +++ /dev/null @@ -1,200 +0,0 @@ -databaseDumpFiles = [ - __DIR__ . '/../../../../modules/system/tests/fixtures/update/drupal-8.8.0.bare.standard.php.gz', - __DIR__ . '/../../../../modules/system/tests/fixtures/update/drupal-8.upgrade-test-schema-enabled.php', - ]; - } - - /** - * Tests that the database was properly loaded. - */ - public function testDatabaseLoaded() { - // Set a value in the cache to prove caches are cleared. - \Drupal::service('cache.default')->set(__CLASS__, 'Test'); - - foreach (['user' => 8100, 'node' => 8700, 'system' => 8805, 'upgrade_test_schema' => 8000] as $module => $schema) { - $this->assertEqual(drupal_get_installed_schema_version($module), $schema, new FormattableMarkup('Module @module schema is @schema', ['@module' => $module, '@schema' => $schema])); - } - - // Ensure that all {router} entries can be unserialized. If they cannot be - // unserialized a notice will be thrown by PHP. - - $result = \Drupal::database()->query("SELECT name, route from {router}")->fetchAllKeyed(0, 1); - // For the purpose of fetching the notices and displaying more helpful error - // messages, let's override the error handler temporarily. - set_error_handler(function ($severity, $message, $filename, $lineno) { - throw new \ErrorException($message, 0, $severity, $filename, $lineno); - }); - foreach ($result as $route_name => $route) { - try { - unserialize($route); - } - catch (\Exception $e) { - $this->fail(sprintf('Error "%s" while unserializing route %s', $e->getMessage(), Html::escape($route_name))); - } - } - restore_error_handler(); - - // Before accessing the site we need to run updates first or the site might - // be broken. - // Increment the schema version. - \Drupal::state()->set('upgrade_test_schema_version', 8801); - $this->runUpdates(); - $this->assertEqual(\Drupal::config('system.site')->get('name'), 'Site-Install'); - $this->drupalGet(''); - $this->assertText('Site-Install'); - - // Ensure that the database tasks have been run during set up. Neither MySQL - // nor SQLite make changes that are testable. - $database = $this->container->get('database'); - if ($database->driver() == 'pgsql') { - $this->assertEqual('on', $database->query("SHOW standard_conforming_strings")->fetchField()); - $this->assertEqual('escape', $database->query("SHOW bytea_output")->fetchField()); - } - // Ensure the test runners cache has been cleared. - $this->assertFalse(\Drupal::service('cache.default')->get(__CLASS__)); - } - - /** - * Test that updates are properly run. - */ - public function testUpdateHookN() { - $connection = Database::getConnection(); - - // Increment the schema version. - \Drupal::state()->set('upgrade_test_schema_version', 8801); - $this->runUpdates(); - - $select = $connection->select('watchdog'); - $select->orderBy('wid', 'DESC'); - $select->range(0, 5); - $select->fields('watchdog', ['message']); - - $container_cannot_be_saved_messages = array_filter(iterator_to_array($select->execute()), function ($row) { - return strpos($row->message, 'Container cannot be saved to cache.') !== FALSE; - }); - $this->assertEqual([], $container_cannot_be_saved_messages); - - // Ensure schema has changed. - $this->assertEqual(drupal_get_installed_schema_version('upgrade_test_schema', TRUE), 8801); - // Ensure the index was added for column a. - $this->assertTrue($connection->schema()->indexExists('upgrade_test_schema_table', 'test'), 'Version 8801 of the upgrade_test_schema module is installed.'); - } - - /** - * Tests that path aliases are not processed during database updates. - */ - public function testPathAliasProcessing() { - // Add a path alias for the '/admin' system path. - PathAlias::create([ - 'path' => '/admin/structure', - 'alias' => '/admin-structure-alias', - 'langcode' => 'und', - ])->save(); - - // Increment the schema version. - \Drupal::state()->set('upgrade_test_schema_version', 8802); - $this->runUpdates(); - - // Check that the alias defined earlier is not used during the update - // process. - $this->assertSession()->linkByHrefExists('/admin/structure'); - $this->assertSession()->linkByHrefNotExists('/admin-structure-alias'); - - $account = $this->createUser(['administer site configuration', 'access administration pages', 'access site reports']); - $this->drupalLogin($account); - - // Go to the status report page and check that the alias is used. - $this->drupalGet('admin/reports/status'); - $this->assertSession()->linkByHrefNotExists('/admin/structure'); - $this->assertSession()->linkByHrefExists('/admin-structure-alias'); - } - - /** - * Tests that test running environment is updated when module list changes. - * - * @see upgrade_test_schema_update_8803() - */ - public function testModuleListChange() { - // Set a value in the cache to prove caches are cleared. - \Drupal::service('cache.default')->set(__CLASS__, 'Test'); - - // Ensure that modules are installed and uninstalled as expected prior to - // running updates. - $extension_config = $this->config('core.extension')->get(); - $this->assertArrayHasKey('page_cache', $extension_config['module']); - $this->assertArrayNotHasKey('module_test', $extension_config['module']); - - $module_list = \Drupal::moduleHandler()->getModuleList(); - $this->assertArrayHasKey('page_cache', $module_list); - $this->assertArrayNotHasKey('module_test', $module_list); - - $namespaces = \Drupal::getContainer()->getParameter('container.namespaces'); - $this->assertArrayHasKey('Drupal\page_cache', $namespaces); - $this->assertArrayNotHasKey('Drupal\module_test', $namespaces); - - // Increment the schema version so that upgrade_test_schema_update_8003() - // runs. - \Drupal::state()->set('upgrade_test_schema_version', 8803); - $this->runUpdates(); - - // Ensure that test running environment has been updated with the changes to - // the module list. - $extension_config = $this->config('core.extension')->get(); - $this->assertArrayNotHasKey('page_cache', $extension_config['module']); - $this->assertArrayHasKey('module_test', $extension_config['module']); - - $module_list = \Drupal::moduleHandler()->getModuleList(); - $this->assertArrayNotHasKey('page_cache', $module_list); - $this->assertArrayHasKey('module_test', $module_list); - - $namespaces = \Drupal::getContainer()->getParameter('container.namespaces'); - $this->assertArrayNotHasKey('Drupal\page_cache', $namespaces); - $this->assertArrayHasKey('Drupal\module_test', $namespaces); - - // Ensure the test runners cache has been cleared. - $this->assertFalse(\Drupal::service('cache.default')->get(__CLASS__)); - } - - /** - * Tests that schema can be excluded from testing. - * - * @see \Drupal\FunctionalTests\Update\UpdatePathTestBase::runUpdates() - * @see \Drupal\Core\Test\TestSetupTrait::$configSchemaCheckerExclusions - */ - public function testSchemaChecking() { - // Create some configuration that should be skipped. - $this->config('config_schema_test.noschema')->set('foo', 'bar')->save(); - // Increment the schema version. - \Drupal::state()->set('upgrade_test_schema_version', 8801); - $this->runUpdates(); - $this->assertSame('bar', $this->config('config_schema_test.noschema')->get('foo')); - - } - -} diff --git a/core/tests/Drupal/FunctionalTests/Update/UpdatePathTestBaseTest.php b/core/tests/Drupal/FunctionalTests/Update/UpdatePathTestBaseTest.php index 504eb96ab9..a617cad232 100644 --- a/core/tests/Drupal/FunctionalTests/Update/UpdatePathTestBaseTest.php +++ b/core/tests/Drupal/FunctionalTests/Update/UpdatePathTestBaseTest.php @@ -5,6 +5,7 @@ use Drupal\Component\Utility\Html; use Drupal\Component\Render\FormattableMarkup; use Drupal\Core\Database\Database; +use Drupal\path_alias\Entity\PathAlias; /** * Tests the update path base class. @@ -14,6 +15,11 @@ */ class UpdatePathTestBaseTest extends UpdatePathTestBase { + /** + * {@inheritdoc} + */ + protected $defaultTheme = 'stark'; + /** * {@inheritdoc} */ @@ -24,7 +30,7 @@ class UpdatePathTestBaseTest extends UpdatePathTestBase { */ protected function setDatabaseDumpFiles() { $this->databaseDumpFiles = [ - __DIR__ . '/../../../../modules/system/tests/fixtures/update/drupal-8.bare.standard.php.gz', + __DIR__ . '/../../../../modules/system/tests/fixtures/update/drupal-8.8.0.bare.standard.php.gz', __DIR__ . '/../../../../modules/system/tests/fixtures/update/drupal-8.update-test-schema-enabled.php', __DIR__ . '/../../../../modules/system/tests/fixtures/update/drupal-8.update-test-semver-update-n-enabled.php', ]; @@ -37,8 +43,8 @@ public function testDatabaseLoaded() { // Set a value in the cache to prove caches are cleared. \Drupal::service('cache.default')->set(__CLASS__, 'Test'); - foreach (['user', 'node', 'system', 'update_test_schema'] as $module) { - $this->assertEqual(drupal_get_installed_schema_version($module), 8000, new FormattableMarkup('Module @module schema is 8000', ['@module' => $module])); + foreach (['user' => 8100, 'node' => 8700, 'system' => 8805, 'update_test_schema' => 8000] as $module => $schema) { + $this->assertEqual(drupal_get_installed_schema_version($module), $schema, new FormattableMarkup('Module @module schema is @schema', ['@module' => $module, '@schema' => $schema])); } // Ensure that all {router} entries can be unserialized. If they cannot be @@ -62,6 +68,8 @@ public function testDatabaseLoaded() { // Before accessing the site we need to run updates first or the site might // be broken. + // Increment the schema version. + \Drupal::state()->set('update_test_schema_version', 8801); $this->runUpdates(); $this->assertEqual(\Drupal::config('system.site')->get('name'), 'Site-Install'); $this->drupalGet(''); @@ -85,7 +93,7 @@ public function testUpdateHookN() { $connection = Database::getConnection(); // Increment the schema version. - \Drupal::state()->set('update_test_schema_version', 8001); + \Drupal::state()->set('update_test_schema_version', 8801); $this->runUpdates(); $select = $connection->select('watchdog'); @@ -99,12 +107,12 @@ public function testUpdateHookN() { $this->assertEqual([], $container_cannot_be_saved_messages); // Ensure schema has changed. - $this->assertEqual(drupal_get_installed_schema_version('update_test_schema', TRUE), 8001); - $this->assertEqual(drupal_get_installed_schema_version('update_test_semver_update_n', TRUE), 8001); + $this->assertEqual(drupal_get_installed_schema_version('update_test_schema', TRUE), 8801); + $this->assertEqual(drupal_get_installed_schema_version('update_test_semver_update_n', TRUE), 8801); // Ensure the index was added for column a. - $this->assertTrue($connection->schema()->indexExists('update_test_schema_table', 'test'), 'Version 8001 of the update_test_schema module is installed.'); - // Ensure update_test_semver_update_n_update_8001 was run. - $this->assertEquals(\Drupal::state()->get('update_test_semver_update_n_update_8001'), 'Yes, I was run. Thanks for testing!'); + $this->assertTrue($connection->schema()->indexExists('update_test_schema_table', 'test'), 'Version 8801 of the update_test_schema module is installed.'); + // Ensure update_test_semver_update_n_update_8801 was run. + $this->assertEquals(\Drupal::state()->get('update_test_semver_update_n_update_8801'), 'Yes, I was run. Thanks for testing!'); } /** @@ -112,18 +120,14 @@ public function testUpdateHookN() { */ public function testPathAliasProcessing() { // Add a path alias for the '/admin' system path. - $database = \Drupal::database(); - $database->insert('url_alias') - ->fields(['source', 'alias', 'langcode']) - ->values([ - 'source' => '/admin/structure', - 'alias' => '/admin-structure-alias', - 'langcode' => 'und', - ]) - ->execute(); + PathAlias::create([ + 'path' => '/admin/structure', + 'alias' => '/admin-structure-alias', + 'langcode' => 'und', + ])->save(); // Increment the schema version. - \Drupal::state()->set('update_test_schema_version', 8002); + \Drupal::state()->set('update_test_schema_version', 8802); $this->runUpdates(); // Check that the alias defined earlier is not used during the update @@ -143,7 +147,7 @@ public function testPathAliasProcessing() { /** * Tests that test running environment is updated when module list changes. * - * @see update_test_schema_update_8003() + * @see update_test_schema_update_8803() */ public function testModuleListChange() { // Set a value in the cache to prove caches are cleared. @@ -165,7 +169,7 @@ public function testModuleListChange() { // Increment the schema version so that update_test_schema_update_8003() // runs. - \Drupal::state()->set('update_test_schema_version', 8003); + \Drupal::state()->set('update_test_schema_version', 8803); $this->runUpdates(); // Ensure that test running environment has been updated with the changes to @@ -195,6 +199,8 @@ public function testModuleListChange() { public function testSchemaChecking() { // Create some configuration that should be skipped. $this->config('config_schema_test.noschema')->set('foo', 'bar')->save(); + // Increment the schema version. + \Drupal::state()->set('update_test_schema_version', 8801); $this->runUpdates(); $this->assertSame('bar', $this->config('config_schema_test.noschema')->get('foo'));