コード例 #1
0
void LocaleAliasTest::TestUResourceBundle() {

    UErrorCode status = U_ZERO_ERROR;
    for (int i=0; i<_LOCALE_NUMBER; i++) {
        Locale oldLoc(_LOCALE_ALIAS[i][0]);
        Locale newLoc(_LOCALE_ALIAS[i][1]);
        if(!isLocaleAvailable(_LOCALE_ALIAS[i][1])){
            logln(UnicodeString(newLoc.getName())+" is not available. Skipping!");
            continue;
        }
        logln("\nold locale:%s   new locale:%s",oldLoc.getName(),newLoc.getName());

        ResourceBundle* rb1 = NULL;
        ResourceBundle* rb2 = NULL;

        const char* testdatapath=loadTestData(status);

        UnicodeString us1("NULL");
        UnicodeString us2("NULL");
        rb1 = new ResourceBundle(testdatapath, oldLoc, status);
        if (U_FAILURE(U_ZERO_ERROR)) {

        } else {
            us1 = rb1->getStringEx("locale", status);
        }
        rb2 = new ResourceBundle(testdatapath, newLoc, status);
        if (U_FAILURE(U_ZERO_ERROR)){

        } else {
            us2 = rb2->getStringEx("locale", status);
        }
        UnicodeString uNewLoc(newLoc.getName());
        if (us1.compare(uNewLoc)!=0 || us1.compare(us2)!=0 || status!=U_ZERO_ERROR) {

        }
        log("UResourceBundle(getStringEx) old:");
        log(us1);
        log("   new:");
        logln(us2);

        if (rb1!=NULL) {
            delete rb1;
        }
        if (rb2!=NULL) {
            delete rb2;
        }
    }

}
コード例 #2
0
int main()
{
    {
    std::chrono::nanoseconds ns1(15);
    std::chrono::nanoseconds ns2(5);
    assert(ns1 / ns2 == 3);
    }
    {
    std::chrono::microseconds us1(15);
    std::chrono::nanoseconds ns2(5);
    assert(us1 / ns2 == 3000);
    }
    {
    std::chrono::duration<int, std::ratio<2, 3> > s1(30);
    std::chrono::duration<int, std::ratio<3, 5> > s2(5);
    assert(s1 / s2 == 6);
    }
    {
    std::chrono::duration<int, std::ratio<2, 3> > s1(30);
    std::chrono::duration<double, std::ratio<3, 5> > s2(5);
    assert(s1 / s2 == 20./3);
    }
#ifndef _LIBCPP_HAS_NO_CONSTEXPR
    {
    constexpr std::chrono::nanoseconds ns1(15);
    constexpr std::chrono::nanoseconds ns2(5);
    static_assert(ns1 / ns2 == 3, "");
    }
    {
    constexpr std::chrono::microseconds us1(15);
    constexpr std::chrono::nanoseconds ns2(5);
    static_assert(us1 / ns2 == 3000, "");
    }
    {
    constexpr std::chrono::duration<int, std::ratio<2, 3> > s1(30);
    constexpr std::chrono::duration<int, std::ratio<3, 5> > s2(5);
    static_assert(s1 / s2 == 6, "");
    }
    {
    constexpr std::chrono::duration<int, std::ratio<2, 3> > s1(30);
    constexpr std::chrono::duration<double, std::ratio<3, 5> > s2(5);
    static_assert(s1 / s2 == 20./3, "");
    }
#endif
}