[Tͪ#n$;<:a4sX[ 6F1f=VV=E7*ٿ#djZƧ>1?,<m,i^dFL23*.N&A}qZM\5QP|Qc,Nɫ<ŖEl<ҝ2mAt(.zhEidCI!-`.>
l2Yֽl3G<f*և1d/iۮh-]`b!*6O|j
2ַ;}\[J*ʪ8D{7;>jWi3}0%Qۦ:gɩxk^q8B5d(݇k2vK`WMO$!0!|U@Hf$(|<,&(8"nm0תnnA2%C0h;|EuVl R`=-h>$/ka J̌SdM@ܺӬtl@MLmn[jȺ*cݘ)ÄtY!vIt֣+~F0(>^J\Yl6?HWMY,ڒVZ\=w	iU 'icz4	ƛJ*K01I$`th54Ac%nʬ;DqTlL[:V$ifx"/Ȕ]-Җ͗X*K01I$'𵙙R/<,}ڀrz1@{|6*wzpMd3!ɤt,E[k=OQnf=,(dP/y7]:\C\$;$lTƣZgEIx3+tAr8Dǋv'2Տ~$*r.)Wa@O]%Pl}Uƹn;gAUoePVw$x6OOLrp;`ᕏj4O2?\%=|̤ݣUJ&yFnR#.U7Aΐydk4jMP6dj ]UdY[~;	ރ%)sSOdJONG$d`o8"xxs񫝉HB*BVY(4a@՜qZLy?
)q`RTo͵U;l{& LP]B:KjJ6E?>WSOP6DKefYRgkÉj.'|M(yk2-YhPvL&VʝU / Vb*¯Y=oqL9;ncE)~@>8lHQpnx吕W3_K)o	RH*z|AD[(<jΛ=x !+[qvG=)e<)3#e|wHO.nAsp}C[ZXdIvKl&)&xMqV:-J=sd,ۋ%F`N:QaVp|ttkK*eqOSm\_
lպ>hO5U^L g5PO3j8/kx=zi8Hodbh|}$PGhwt^pb}MsҞ1&űRL++ ׁl7Еq]KMmڹI'qGno<;hAN#N~f:Gj	vvX=2O\<i4+1:,ގῇ`0Y
ozX iT`̗lkgmPJYR~{DECElu+v~(|)$m鵓ol_~xח|y[zѝw.6nN.4RjAcG+Rx@)D"܅kzi,ۋ%F`N:QlzTE2p=ˇLna	2#zi=ǭkYBH=ٖfy;.Y
AvҼ^]wU̜{g*+Ç l(*iwb;
zai,9zg7Ǝ59"tY1DMW8L/ne,'a1NB'Fso3Glnj$$f\WtEBG`%&űZʾDrPEv L50Z޶edC̿ςU?_ԡL0P)MBp^6O[%݇䱾EBG`%&~6(O`_E]4I+	@vX;%191ک+TfDx=>eoFM^/dNM$lhOyvUeşm֌.R/SscۨMunX YEBG`%&dD kclo|vyA75}8ٳ+SMfRi$&:# ⒉7%ْǪQnT7<
tH l4@Ȗm2jwIԯDl}u/xrp,=R|:# ⒉7Zi!r[]T֦BHv:am7ƛH񰲐pw'(u'MUn8L47aW1nuQfdh,:# ⒉7V%>V_FR}ES)r5,2TR~LHd:")VemV iŽ@-X+CFB[N̳;ND"\EXHeﶲޖ0ŵ,2TR~L6NLΦ۱H+(ieElAo0Dtnz3a=rv٘G4ȕޏ>L5Qd(7#$*r.)Wa@O]%yw7 Jͱdc˅IaB	j9[)l
'Bodd^|aM@_^GVK=\kypw'(u'M:o\GFs${>N&\:# ⒉7-Ĳ)ɤHC
y1U`si$*r.)Wa@O]%֖#iTN{2J-{-NM$lhODq\ww3U$*r.)Wa@O]%~7o5d a45Q&͞bp]NM$lhOPm1Br_>1k%=Nyvf(m b.,a>|\cw l
5=I"4q`=BNTPe
F8/ϫ@%iAv-Ā:py#smfoߓ&D7a=rv٘"iz`Yˉ8,j@Ȗm2jzi_-YEgb*"iSVVa3
H
8y}+A?.HuR΂(WF'Bp$:g'

@vrj3a=rv٘d&(UbV~XeP{s|ϛ&O+|4ߛpPퟝ ?x-NTPerQibqmG'z_Jh|l|@Ȗm2j{ٝTO/!J[tilingual)'),
            array('ucs2', 'Unicode (multilingual)'),
            array('utf8', 'Unicode (multilingual)'),
            array('ascii', 'West European (multilingual)'),
            array('cp850', 'West European (multilingual)'),
            array('dec8', 'West European (multilingual)'),
            array('hp8', 'West European (multilingual)'),
            array('latin1', 'West European (multilingual)'),
            array('cp1250', 'Central European (multilingual)'),
            array('cp852', 'Central European (multilingual)'),
            array('latin2', 'Central European (multilingual)'),
            array('macce', 'Central European (multilingual)'),
            array('cp866', 'Russian'),
            array('koi8r', 'Russian'),
            array('gb2312', 'Simplified Chinese'),
            array('gbk', 'Simplified Chinese'),
            array('sjis', 'Japanese'),
            array('ujis', 'Japanese'),
            array('cp932', 'Japanese'),
            array('eucjpms', 'Japanese'),
            array('cp1257', 'Baltic (multilingual)'),
            array('latin7', 'Baltic (multilingual)'),
            array('armscii8', 'Armenian'),
            array('armscii', 'Armenian'),
            array('big5', 'Traditional Chinese'),
            array('cp1251', 'Cyrillic (multilingual)'),
            array('cp1256', 'Arabic'),
            array('euckr', 'Korean'),
            array('hebrew', 'Hebrew'),
            array('geostd8', 'Georgian'),
            array('greek', 'Greek'),
            array('keybcs2', 'Czech-Slovak'),
            array('koi8u', 'Ukrainian'),
            array('latin5', 'Turkish'),
            array('swe7', 'Swedish'),
            array('tis620', 'Thai'),
            array('foobar', 'unknown'),
            array('foo_test_bar', 'unknown'),
            array('foo_bin_bar', 'unknown, Binary')
        );
    }

    /**
     * Test for PMA_generateCharsetDropdownBox
     *
     * @return void
     * @test
     */
    public function testGenerateCharsetDropdownBox()
    {
        $GLOBALS['mysql_charsets'] = array('latin1', 'latin2', 'latin3');
        $GLOBALS['mysql_charsets_available'] = array(
            'latin1' => true,
            'latin2' => false,
            'latin3' => true
        );
        $GLOBALS['mysql_charsets_descriptions'] = array(
            'latin1' => 'abc',
            'latin2' => 'def'
        );
        $GLOBALS['mysql_collations'] = array(
            'latin1' => array(
                'latin1_german1_ci',
                'latin1_swedish1_ci'
            ),
            'latin2' => array('latin1_general_ci'),
            'latin3' => array()
        );
        $GLOBALS['mysql_collations_available'] = array(
             'latin1_german1_ci' => true,
             'latin1_swedish1_ci' => false,
             'latin2_general_ci' => true
        );
        $result = PMA_generateCharsetDropdownBox();

        $this->assertContains('name="collation"', $result);
        $this->assertNotContains('id="', $result);
        $this->assertNotContains('class="autosubmit"', $result);
        $this->assertContains('<option value="">Collation', $result);
        $this->assertContains('<option value=""></option>', $result);
        $this->assertContains('<optgroup label="latin1', $result);
        $this->assertNotContains('<optgroup label="latin2', $result);
        $this->assertContains('title="latin3', $result);
        $this->assertContains('title="abc', $result);
        $this->assertNotContains('value="latin1_swedish1_ci"', $result);
        $this->assertContains('value="latin1_german1_ci"', $result);
        $this->assertNotContains('value="latin2_general1_ci"', $result);
        $this->assertContains('title="German', $result);

        $result = PMA_generateCharsetDropdownBox(
            2, null, "test_id", "latin1", false, true
        );
        $this->assertContains('name="character_set"', $result);
        $this->assertNotContains('Charset</option>', $result);
        $this->assertContains('class="autosubmit"', $result);
        $this->assertContains('id="test_id"', $result);
        $this->assertContains('selected="selected">latin1', $result);
    }

    /**
     * Test for PMA_getServerCollation
     *
     * @return void
     * @test
     */
    public function testGetServerCollation()
    {
        $GLOBALS['server'] = 1;
        $GLOBALS['cfg']['DBG']['sql'] = false;
        $this->assertEquals('utf8_general_ci', PMA_getServerCollation());
    }
}
