| Absolute File Name: | /home/qt/qt5_coco/qt5/qtbase/src/corelib/tools/qtimezoneprivate_icu.cpp |
| Switch to Source code | Preprocessed file |
| Line | Source | Count | ||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 1 | - | |||||||||||||
| 2 | - | |||||||||||||
| 3 | - | |||||||||||||
| 4 | - | |||||||||||||
| 5 | - | |||||||||||||
| 6 | - | |||||||||||||
| 7 | - | |||||||||||||
| 8 | static UCalendarDisplayNameType ucalDisplayNameType(QTimeZone::TimeType timeType, QTimeZone::NameType nameType) | - | ||||||||||||
| 9 | { | - | ||||||||||||
| 10 | - | |||||||||||||
| 11 | switch (nameType) { | - | ||||||||||||
| 12 | case executed 4 times by 1 test: QTimeZone::ShortName :case QTimeZone::ShortName :Executed by:
executed 4 times by 1 test: case QTimeZone::ShortName :Executed by:
| 4 | ||||||||||||
| 13 | case never executed: QTimeZone::OffsetName :case QTimeZone::OffsetName :never executed: case QTimeZone::OffsetName : | 0 | ||||||||||||
| 14 | if (timeType == QTimeZone::DaylightTime
| 2 | ||||||||||||
| 15 | return executed 2 times by 1 test: UCAL_SHORT_DST;return UCAL_SHORT_DST;Executed by:
executed 2 times by 1 test: return UCAL_SHORT_DST;Executed by:
| 2 | ||||||||||||
| 16 | - | |||||||||||||
| 17 | return executed 2 times by 1 test: UCAL_SHORT_STANDARD;return UCAL_SHORT_STANDARD;Executed by:
executed 2 times by 1 test: return UCAL_SHORT_STANDARD;Executed by:
| 2 | ||||||||||||
| 18 | case executed 1233 times by 1 test: QTimeZone::DefaultName :case QTimeZone::DefaultName :Executed by:
executed 1233 times by 1 test: case QTimeZone::DefaultName :Executed by:
| 1233 | ||||||||||||
| 19 | case never executed: QTimeZone::LongName :case QTimeZone::LongName :never executed: case QTimeZone::LongName : | 0 | ||||||||||||
| 20 | if (timeType == QTimeZone::DaylightTime
| 432-801 | ||||||||||||
| 21 | return executed 432 times by 1 test: UCAL_DST;return UCAL_DST;Executed by:
executed 432 times by 1 test: return UCAL_DST;Executed by:
| 432 | ||||||||||||
| 22 | - | |||||||||||||
| 23 | return executed 801 times by 1 test: UCAL_STANDARD;return UCAL_STANDARD;Executed by:
executed 801 times by 1 test: return UCAL_STANDARD;Executed by:
| 801 | ||||||||||||
| 24 | } | - | ||||||||||||
| 25 | return never executed: UCAL_STANDARD;return UCAL_STANDARD;never executed: return UCAL_STANDARD; | 0 | ||||||||||||
| 26 | } | - | ||||||||||||
| 27 | - | |||||||||||||
| 28 | - | |||||||||||||
| 29 | static QByteArray ucalDefaultTimeZoneId() | - | ||||||||||||
| 30 | { | - | ||||||||||||
| 31 | int32_t size = 30; | - | ||||||||||||
| 32 | QString result(size, Qt::Uninitialized); | - | ||||||||||||
| 33 | UErrorCode status = U_ZERO_ERROR; | - | ||||||||||||
| 34 | - | |||||||||||||
| 35 | - | |||||||||||||
| 36 | size = ucal_getDefaultTimeZone_52(reinterpret_cast<UChar *>(result.data()), size, &status); | - | ||||||||||||
| 37 | - | |||||||||||||
| 38 | - | |||||||||||||
| 39 | if (status == U_BUFFER_OVERFLOW_ERROR
| 0-1 | ||||||||||||
| 40 | result.resize(size); | - | ||||||||||||
| 41 | status = U_ZERO_ERROR; | - | ||||||||||||
| 42 | size = ucal_getDefaultTimeZone_52(reinterpret_cast<UChar *>(result.data()), size, &status); | - | ||||||||||||
| 43 | } never executed: end of block | 0 | ||||||||||||
| 44 | - | |||||||||||||
| 45 | - | |||||||||||||
| 46 | if (U_SUCCESS(status)
| 0-1 | ||||||||||||
| 47 | result.resize(size); | - | ||||||||||||
| 48 | return executed 1 time by 1 test: result.toUtf8();return result.toUtf8();Executed by:
executed 1 time by 1 test: return result.toUtf8();Executed by:
| 1 | ||||||||||||
| 49 | } | - | ||||||||||||
| 50 | - | |||||||||||||
| 51 | return never executed: QByteArray();return QByteArray();never executed: return QByteArray(); | 0 | ||||||||||||
| 52 | } | - | ||||||||||||
| 53 | - | |||||||||||||
| 54 | - | |||||||||||||
| 55 | static QString ucalTimeZoneDisplayName(UCalendar *ucal, QTimeZone::TimeType timeType, | - | ||||||||||||
| 56 | QTimeZone::NameType nameType, | - | ||||||||||||
| 57 | const QString &localeCode) | - | ||||||||||||
| 58 | { | - | ||||||||||||
| 59 | int32_t size = 50; | - | ||||||||||||
| 60 | QString result(size, Qt::Uninitialized); | - | ||||||||||||
| 61 | UErrorCode status = U_ZERO_ERROR; | - | ||||||||||||
| 62 | - | |||||||||||||
| 63 | - | |||||||||||||
| 64 | size = ucal_getTimeZoneDisplayName_52(ucal, | - | ||||||||||||
| 65 | ucalDisplayNameType(timeType, nameType), | - | ||||||||||||
| 66 | localeCode.toUtf8(), | - | ||||||||||||
| 67 | reinterpret_cast<UChar *>(result.data()), | - | ||||||||||||
| 68 | size, | - | ||||||||||||
| 69 | &status); | - | ||||||||||||
| 70 | - | |||||||||||||
| 71 | - | |||||||||||||
| 72 | if (status == U_BUFFER_OVERFLOW_ERROR
| 0-1237 | ||||||||||||
| 73 | result.resize(size); | - | ||||||||||||
| 74 | status = U_ZERO_ERROR; | - | ||||||||||||
| 75 | size = ucal_getTimeZoneDisplayName_52(ucal, | - | ||||||||||||
| 76 | ucalDisplayNameType(timeType, nameType), | - | ||||||||||||
| 77 | localeCode.toUtf8(), | - | ||||||||||||
| 78 | reinterpret_cast<UChar *>(result.data()), | - | ||||||||||||
| 79 | size, | - | ||||||||||||
| 80 | &status); | - | ||||||||||||
| 81 | } never executed: end of block | 0 | ||||||||||||
| 82 | - | |||||||||||||
| 83 | - | |||||||||||||
| 84 | if (U_SUCCESS(status)
| 0-1237 | ||||||||||||
| 85 | result.resize(size); | - | ||||||||||||
| 86 | return executed 1237 times by 1 test: result;return result;Executed by:
executed 1237 times by 1 test: return result;Executed by:
| 1237 | ||||||||||||
| 87 | } | - | ||||||||||||
| 88 | - | |||||||||||||
| 89 | return never executed: QString();return QString();never executed: return QString(); | 0 | ||||||||||||
| 90 | } | - | ||||||||||||
| 91 | - | |||||||||||||
| 92 | - | |||||||||||||
| 93 | static bool ucalOffsetsAtTime(UCalendar *m_ucal, qint64 atMSecsSinceEpoch, | - | ||||||||||||
| 94 | int *utcOffset, int *dstOffset) | - | ||||||||||||
| 95 | { | - | ||||||||||||
| 96 | *utcOffset = 0; | - | ||||||||||||
| 97 | *dstOffset = 0; | - | ||||||||||||
| 98 | - | |||||||||||||
| 99 | - | |||||||||||||
| 100 | UErrorCode status = U_ZERO_ERROR; | - | ||||||||||||
| 101 | UCalendar *ucal = ucal_clone_52(m_ucal, &status); | - | ||||||||||||
| 102 | if (!U_SUCCESS(status)
| 0-8 | ||||||||||||
| 103 | return never executed: false;return false;never executed: return false; | 0 | ||||||||||||
| 104 | - | |||||||||||||
| 105 | - | |||||||||||||
| 106 | status = U_ZERO_ERROR; | - | ||||||||||||
| 107 | ucal_setMillis_52(ucal, atMSecsSinceEpoch, &status); | - | ||||||||||||
| 108 | - | |||||||||||||
| 109 | int32_t utc = 0; | - | ||||||||||||
| 110 | if (U_SUCCESS(status)
| 0-8 | ||||||||||||
| 111 | status = U_ZERO_ERROR; | - | ||||||||||||
| 112 | - | |||||||||||||
| 113 | utc = ucal_get_52(ucal, UCAL_ZONE_OFFSET, &status) / 1000; | - | ||||||||||||
| 114 | } executed 8 times by 1 test: end of blockExecuted by:
| 8 | ||||||||||||
| 115 | - | |||||||||||||
| 116 | int32_t dst = 0; | - | ||||||||||||
| 117 | if (U_SUCCESS(status)
| 0-8 | ||||||||||||
| 118 | status = U_ZERO_ERROR; | - | ||||||||||||
| 119 | - | |||||||||||||
| 120 | dst = ucal_get_52(ucal, UCAL_DST_OFFSET, &status) / 1000; | - | ||||||||||||
| 121 | } executed 8 times by 1 test: end of blockExecuted by:
| 8 | ||||||||||||
| 122 | - | |||||||||||||
| 123 | ucal_close_52(ucal); | - | ||||||||||||
| 124 | if (U_SUCCESS(status)
| 0-8 | ||||||||||||
| 125 | *utcOffset = utc; | - | ||||||||||||
| 126 | *dstOffset = dst; | - | ||||||||||||
| 127 | return executed 8 times by 1 test: true;return true;Executed by:
executed 8 times by 1 test: return true;Executed by:
| 8 | ||||||||||||
| 128 | } | - | ||||||||||||
| 129 | return never executed: false;return false;never executed: return false; | 0 | ||||||||||||
| 130 | } | - | ||||||||||||
| 131 | static QList<QByteArray> uenumToIdList(UEnumeration *uenum) | - | ||||||||||||
| 132 | { | - | ||||||||||||
| 133 | QList<QByteArray> list; | - | ||||||||||||
| 134 | int32_t size = 0; | - | ||||||||||||
| 135 | UErrorCode status = U_ZERO_ERROR; | - | ||||||||||||
| 136 | - | |||||||||||||
| 137 | QByteArray result = uenum_next_52(uenum, &size, &status); | - | ||||||||||||
| 138 | while (U_SUCCESS(status)
| 0-263952 | ||||||||||||
| 139 | list << result; | - | ||||||||||||
| 140 | status = U_ZERO_ERROR; | - | ||||||||||||
| 141 | result = uenum_next_52(uenum, &size, &status); | - | ||||||||||||
| 142 | } executed 263529 times by 1 test: end of blockExecuted by:
| 263529 | ||||||||||||
| 143 | std::sort(list.begin(), list.end()); | - | ||||||||||||
| 144 | list.erase(std::unique(list.begin(), list.end()), list.end()); | - | ||||||||||||
| 145 | return executed 423 times by 1 test: list;return list;Executed by:
executed 423 times by 1 test: return list;Executed by:
| 423 | ||||||||||||
| 146 | } | - | ||||||||||||
| 147 | - | |||||||||||||
| 148 | - | |||||||||||||
| 149 | static int ucalDaylightOffset(const QByteArray &id) | - | ||||||||||||
| 150 | { | - | ||||||||||||
| 151 | UErrorCode status = U_ZERO_ERROR; | - | ||||||||||||
| 152 | const int32_t dstMSecs = ucal_getDSTSavings_52(reinterpret_cast<const UChar *>(id.data()), &status); | - | ||||||||||||
| 153 | if (U_SUCCESS(status)
| 0-1 | ||||||||||||
| 154 | return executed 1 time by 1 test: (dstMSecs / 1000);return (dstMSecs / 1000);Executed by:
executed 1 time by 1 test: return (dstMSecs / 1000);Executed by:
| 1 | ||||||||||||
| 155 | else | - | ||||||||||||
| 156 | return never executed: 0;return 0;never executed: return 0; | 0 | ||||||||||||
| 157 | } | - | ||||||||||||
| 158 | - | |||||||||||||
| 159 | - | |||||||||||||
| 160 | QIcuTimeZonePrivate::QIcuTimeZonePrivate() | - | ||||||||||||
| 161 | : m_ucal(0) | - | ||||||||||||
| 162 | { | - | ||||||||||||
| 163 | - | |||||||||||||
| 164 | init(ucalDefaultTimeZoneId()); | - | ||||||||||||
| 165 | } executed 1 time by 1 test: end of blockExecuted by:
| 1 | ||||||||||||
| 166 | - | |||||||||||||
| 167 | - | |||||||||||||
| 168 | QIcuTimeZonePrivate::QIcuTimeZonePrivate(const QByteArray &ianaId) | - | ||||||||||||
| 169 | : m_ucal(0) | - | ||||||||||||
| 170 | { | - | ||||||||||||
| 171 | - | |||||||||||||
| 172 | if (availableTimeZoneIds().contains(ianaId)
| 11-412 | ||||||||||||
| 173 | init(ianaId); executed 412 times by 1 test: init(ianaId);Executed by:
| 412 | ||||||||||||
| 174 | } executed 423 times by 1 test: end of blockExecuted by:
| 423 | ||||||||||||
| 175 | - | |||||||||||||
| 176 | QIcuTimeZonePrivate::QIcuTimeZonePrivate(const QIcuTimeZonePrivate &other) | - | ||||||||||||
| 177 | : QTimeZonePrivate(other), m_ucal(0) | - | ||||||||||||
| 178 | { | - | ||||||||||||
| 179 | - | |||||||||||||
| 180 | UErrorCode status = U_ZERO_ERROR; | - | ||||||||||||
| 181 | m_ucal = ucal_clone_52(other.m_ucal, &status); | - | ||||||||||||
| 182 | if (!U_SUCCESS(status)
| 0 | ||||||||||||
| 183 | m_id.clear(); | - | ||||||||||||
| 184 | m_ucal = 0; | - | ||||||||||||
| 185 | } never executed: end of block | 0 | ||||||||||||
| 186 | } never executed: end of block | 0 | ||||||||||||
| 187 | - | |||||||||||||
| 188 | QIcuTimeZonePrivate::~QIcuTimeZonePrivate() | - | ||||||||||||
| 189 | { | - | ||||||||||||
| 190 | ucal_close_52(m_ucal); | - | ||||||||||||
| 191 | } executed 424 times by 1 test: end of blockExecuted by:
| 424 | ||||||||||||
| 192 | - | |||||||||||||
| 193 | QTimeZonePrivate *QIcuTimeZonePrivate::clone() | - | ||||||||||||
| 194 | { | - | ||||||||||||
| 195 | return never executed: new QIcuTimeZonePrivate(*this);return new QIcuTimeZonePrivate(*this);never executed: return new QIcuTimeZonePrivate(*this); | 0 | ||||||||||||
| 196 | } | - | ||||||||||||
| 197 | - | |||||||||||||
| 198 | void QIcuTimeZonePrivate::init(const QByteArray &ianaId) | - | ||||||||||||
| 199 | { | - | ||||||||||||
| 200 | m_id = ianaId; | - | ||||||||||||
| 201 | - | |||||||||||||
| 202 | const QString id = QString::fromUtf8(m_id); | - | ||||||||||||
| 203 | UErrorCode status = U_ZERO_ERROR; | - | ||||||||||||
| 204 | - | |||||||||||||
| 205 | m_ucal = ucal_open_52(reinterpret_cast<const UChar *>(id.data()), id.size(), | - | ||||||||||||
| 206 | QLocale().name().toUtf8(), UCAL_GREGORIAN, &status); | - | ||||||||||||
| 207 | - | |||||||||||||
| 208 | if (!U_SUCCESS(status)
| 0-413 | ||||||||||||
| 209 | m_id.clear(); | - | ||||||||||||
| 210 | m_ucal = 0; | - | ||||||||||||
| 211 | } never executed: end of block | 0 | ||||||||||||
| 212 | } executed 413 times by 1 test: end of blockExecuted by:
| 413 | ||||||||||||
| 213 | - | |||||||||||||
| 214 | QString QIcuTimeZonePrivate::displayName(QTimeZone::TimeType timeType, | - | ||||||||||||
| 215 | QTimeZone::NameType nameType, | - | ||||||||||||
| 216 | const QLocale &locale) const | - | ||||||||||||
| 217 | { | - | ||||||||||||
| 218 | - | |||||||||||||
| 219 | if (nameType == QTimeZone::OffsetName
| 0-1237 | ||||||||||||
| 220 | const Data nowData = data(QDateTime::currentDateTimeUtc().toMSecsSinceEpoch()); | - | ||||||||||||
| 221 | - | |||||||||||||
| 222 | - | |||||||||||||
| 223 | if (timeType == QTimeZone::DaylightTime
| 0 | ||||||||||||
| 224 | return never executed: isoOffsetFormat(nowData.standardTimeOffset + ucalDaylightOffset(m_id));return isoOffsetFormat(nowData.standardTimeOffset + ucalDaylightOffset(m_id));never executed: return isoOffsetFormat(nowData.standardTimeOffset + ucalDaylightOffset(m_id)); | 0 | ||||||||||||
| 225 | else | - | ||||||||||||
| 226 | return never executed: isoOffsetFormat(nowData.standardTimeOffset);return isoOffsetFormat(nowData.standardTimeOffset);never executed: return isoOffsetFormat(nowData.standardTimeOffset); | 0 | ||||||||||||
| 227 | } | - | ||||||||||||
| 228 | return executed 1237 times by 1 test: ucalTimeZoneDisplayName(m_ucal, timeType, nameType, locale.name());return ucalTimeZoneDisplayName(m_ucal, timeType, nameType, locale.name());Executed by:
executed 1237 times by 1 test: return ucalTimeZoneDisplayName(m_ucal, timeType, nameType, locale.name());Executed by:
| 1237 | ||||||||||||
| 229 | } | - | ||||||||||||
| 230 | - | |||||||||||||
| 231 | QString QIcuTimeZonePrivate::abbreviation(qint64 atMSecsSinceEpoch) const | - | ||||||||||||
| 232 | { | - | ||||||||||||
| 233 | - | |||||||||||||
| 234 | if (isDaylightTime(atMSecsSinceEpoch)
| 2 | ||||||||||||
| 235 | return executed 2 times by 1 test: displayName(QTimeZone::DaylightTime, QTimeZone::ShortName, QString());return displayName(QTimeZone::DaylightTime, QTimeZone::ShortName, QString());Executed by:
executed 2 times by 1 test: return displayName(QTimeZone::DaylightTime, QTimeZone::ShortName, QString());Executed by:
| 2 | ||||||||||||
| 236 | else | - | ||||||||||||
| 237 | return executed 2 times by 1 test: displayName(QTimeZone::StandardTime, QTimeZone::ShortName, QString());return displayName(QTimeZone::StandardTime, QTimeZone::ShortName, QString());Executed by:
executed 2 times by 1 test: return displayName(QTimeZone::StandardTime, QTimeZone::ShortName, QString());Executed by:
| 2 | ||||||||||||
| 238 | } | - | ||||||||||||
| 239 | - | |||||||||||||
| 240 | int QIcuTimeZonePrivate::offsetFromUtc(qint64 atMSecsSinceEpoch) const | - | ||||||||||||
| 241 | { | - | ||||||||||||
| 242 | int stdOffset = 0; | - | ||||||||||||
| 243 | int dstOffset = 0; | - | ||||||||||||
| 244 | ucalOffsetsAtTime(m_ucal, atMSecsSinceEpoch, &stdOffset, & dstOffset); | - | ||||||||||||
| 245 | return executed 2 times by 1 test: stdOffset + dstOffset;return stdOffset + dstOffset;Executed by:
executed 2 times by 1 test: return stdOffset + dstOffset;Executed by:
| 2 | ||||||||||||
| 246 | } | - | ||||||||||||
| 247 | - | |||||||||||||
| 248 | int QIcuTimeZonePrivate::standardTimeOffset(qint64 atMSecsSinceEpoch) const | - | ||||||||||||
| 249 | { | - | ||||||||||||
| 250 | int stdOffset = 0; | - | ||||||||||||
| 251 | int dstOffset = 0; | - | ||||||||||||
| 252 | ucalOffsetsAtTime(m_ucal, atMSecsSinceEpoch, &stdOffset, & dstOffset); | - | ||||||||||||
| 253 | return executed 2 times by 1 test: stdOffset;return stdOffset;Executed by:
executed 2 times by 1 test: return stdOffset;Executed by:
| 2 | ||||||||||||
| 254 | } | - | ||||||||||||
| 255 | - | |||||||||||||
| 256 | int QIcuTimeZonePrivate::daylightTimeOffset(qint64 atMSecsSinceEpoch) const | - | ||||||||||||
| 257 | { | - | ||||||||||||
| 258 | int stdOffset = 0; | - | ||||||||||||
| 259 | int dstOffset = 0; | - | ||||||||||||
| 260 | ucalOffsetsAtTime(m_ucal, atMSecsSinceEpoch, &stdOffset, & dstOffset); | - | ||||||||||||
| 261 | return executed 2 times by 1 test: dstOffset;return dstOffset;Executed by:
executed 2 times by 1 test: return dstOffset;Executed by:
| 2 | ||||||||||||
| 262 | } | - | ||||||||||||
| 263 | - | |||||||||||||
| 264 | bool QIcuTimeZonePrivate::hasDaylightTime() const | - | ||||||||||||
| 265 | { | - | ||||||||||||
| 266 | - | |||||||||||||
| 267 | return executed 1 time by 1 test: (ucalDaylightOffset(m_id) != 0);return (ucalDaylightOffset(m_id) != 0);Executed by:
executed 1 time by 1 test: return (ucalDaylightOffset(m_id) != 0);Executed by:
| 1 | ||||||||||||
| 268 | } | - | ||||||||||||
| 269 | - | |||||||||||||
| 270 | bool QIcuTimeZonePrivate::isDaylightTime(qint64 atMSecsSinceEpoch) const | - | ||||||||||||
| 271 | { | - | ||||||||||||
| 272 | - | |||||||||||||
| 273 | UErrorCode status = U_ZERO_ERROR; | - | ||||||||||||
| 274 | UCalendar *ucal = ucal_clone_52(m_ucal, &status); | - | ||||||||||||
| 275 | if (!U_SUCCESS(status)
| 0-417 | ||||||||||||
| 276 | return never executed: false;return false;never executed: return false; | 0 | ||||||||||||
| 277 | - | |||||||||||||
| 278 | - | |||||||||||||
| 279 | status = U_ZERO_ERROR; | - | ||||||||||||
| 280 | ucal_setMillis_52(ucal, atMSecsSinceEpoch, &status); | - | ||||||||||||
| 281 | - | |||||||||||||
| 282 | bool result = false; | - | ||||||||||||
| 283 | if (U_SUCCESS(status)
| 0-417 | ||||||||||||
| 284 | status = U_ZERO_ERROR; | - | ||||||||||||
| 285 | result = ucal_inDaylightTime_52(ucal, &status); | - | ||||||||||||
| 286 | } executed 417 times by 1 test: end of blockExecuted by:
| 417 | ||||||||||||
| 287 | - | |||||||||||||
| 288 | ucal_close_52(ucal); | - | ||||||||||||
| 289 | return executed 417 times by 1 test: result;return result;Executed by:
executed 417 times by 1 test: return result;Executed by:
| 417 | ||||||||||||
| 290 | } | - | ||||||||||||
| 291 | - | |||||||||||||
| 292 | QTimeZonePrivate::Data QIcuTimeZonePrivate::data(qint64 forMSecsSinceEpoch) const | - | ||||||||||||
| 293 | { | - | ||||||||||||
| 294 | - | |||||||||||||
| 295 | - | |||||||||||||
| 296 | QTimeZonePrivate::Data data = invalidData(); | - | ||||||||||||
| 297 | - | |||||||||||||
| 298 | - | |||||||||||||
| 299 | - | |||||||||||||
| 300 | - | |||||||||||||
| 301 | ucalOffsetsAtTime(m_ucal, forMSecsSinceEpoch, &data.standardTimeOffset, | - | ||||||||||||
| 302 | &data.daylightTimeOffset); | - | ||||||||||||
| 303 | data.offsetFromUtc = data.standardTimeOffset + data.daylightTimeOffset; | - | ||||||||||||
| 304 | data.abbreviation = abbreviation(forMSecsSinceEpoch); | - | ||||||||||||
| 305 | - | |||||||||||||
| 306 | data.atMSecsSinceEpoch = forMSecsSinceEpoch; | - | ||||||||||||
| 307 | return executed 2 times by 1 test: data;return data;Executed by:
executed 2 times by 1 test: return data;Executed by:
| 2 | ||||||||||||
| 308 | } | - | ||||||||||||
| 309 | - | |||||||||||||
| 310 | bool QIcuTimeZonePrivate::hasTransitions() const | - | ||||||||||||
| 311 | { | - | ||||||||||||
| 312 | - | |||||||||||||
| 313 | - | |||||||||||||
| 314 | - | |||||||||||||
| 315 | - | |||||||||||||
| 316 | - | |||||||||||||
| 317 | return executed 1 time by 1 test: false;return false;Executed by:
executed 1 time by 1 test: return false;Executed by:
| 1 | ||||||||||||
| 318 | - | |||||||||||||
| 319 | } | - | ||||||||||||
| 320 | - | |||||||||||||
| 321 | QTimeZonePrivate::Data QIcuTimeZonePrivate::nextTransition(qint64 afterMSecsSinceEpoch) const | - | ||||||||||||
| 322 | { | - | ||||||||||||
| 323 | - | |||||||||||||
| 324 | - | |||||||||||||
| 325 | - | |||||||||||||
| 326 | - | |||||||||||||
| 327 | - | |||||||||||||
| 328 | (void)afterMSecsSinceEpoch; | - | ||||||||||||
| 329 | return never executed: invalidData();return invalidData();never executed: return invalidData(); | 0 | ||||||||||||
| 330 | - | |||||||||||||
| 331 | } | - | ||||||||||||
| 332 | - | |||||||||||||
| 333 | QTimeZonePrivate::Data QIcuTimeZonePrivate::previousTransition(qint64 beforeMSecsSinceEpoch) const | - | ||||||||||||
| 334 | { | - | ||||||||||||
| 335 | - | |||||||||||||
| 336 | - | |||||||||||||
| 337 | - | |||||||||||||
| 338 | - | |||||||||||||
| 339 | - | |||||||||||||
| 340 | (void)beforeMSecsSinceEpoch; | - | ||||||||||||
| 341 | return never executed: invalidData();return invalidData();never executed: return invalidData(); | 0 | ||||||||||||
| 342 | - | |||||||||||||
| 343 | } | - | ||||||||||||
| 344 | - | |||||||||||||
| 345 | QByteArray QIcuTimeZonePrivate::systemTimeZoneId() const | - | ||||||||||||
| 346 | { | - | ||||||||||||
| 347 | - | |||||||||||||
| 348 | - | |||||||||||||
| 349 | return never executed: ucalDefaultTimeZoneId();return ucalDefaultTimeZoneId();never executed: return ucalDefaultTimeZoneId(); | 0 | ||||||||||||
| 350 | } | - | ||||||||||||
| 351 | - | |||||||||||||
| 352 | QList<QByteArray> QIcuTimeZonePrivate::availableTimeZoneIds() const | - | ||||||||||||
| 353 | { | - | ||||||||||||
| 354 | UErrorCode status = U_ZERO_ERROR; | - | ||||||||||||
| 355 | UEnumeration *uenum = ucal_openTimeZones_52(&status); | - | ||||||||||||
| 356 | QList<QByteArray> result; | - | ||||||||||||
| 357 | if (U_SUCCESS(status)
| 0-423 | ||||||||||||
| 358 | result = uenumToIdList(uenum); executed 423 times by 1 test: result = uenumToIdList(uenum);Executed by:
| 423 | ||||||||||||
| 359 | uenum_close_52(uenum); | - | ||||||||||||
| 360 | return executed 423 times by 1 test: result;return result;Executed by:
executed 423 times by 1 test: return result;Executed by:
| 423 | ||||||||||||
| 361 | } | - | ||||||||||||
| 362 | - | |||||||||||||
| 363 | QList<QByteArray> QIcuTimeZonePrivate::availableTimeZoneIds(QLocale::Country country) const | - | ||||||||||||
| 364 | { | - | ||||||||||||
| 365 | QByteArray regionCode = QLocalePrivate::countryToCode(country).toUtf8(); | - | ||||||||||||
| 366 | UErrorCode status = U_ZERO_ERROR; | - | ||||||||||||
| 367 | UEnumeration *uenum = ucal_openCountryTimeZones_52(regionCode, &status); | - | ||||||||||||
| 368 | QList<QByteArray> result; | - | ||||||||||||
| 369 | if (U_SUCCESS(status)
| 0 | ||||||||||||
| 370 | result = uenumToIdList(uenum); never executed: result = uenumToIdList(uenum); | 0 | ||||||||||||
| 371 | uenum_close_52(uenum); | - | ||||||||||||
| 372 | return never executed: result;return result;never executed: return result; | 0 | ||||||||||||
| 373 | } | - | ||||||||||||
| 374 | - | |||||||||||||
| 375 | QList<QByteArray> QIcuTimeZonePrivate::availableTimeZoneIds(int offsetFromUtc) const | - | ||||||||||||
| 376 | { | - | ||||||||||||
| 377 | - | |||||||||||||
| 378 | - | |||||||||||||
| 379 | UErrorCode status = U_ZERO_ERROR; | - | ||||||||||||
| 380 | UEnumeration *uenum = ucal_openTimeZoneIDEnumeration_52(UCAL_ZONE_TYPE_ANY, 0, | - | ||||||||||||
| 381 | &offsetFromUtc, &status); | - | ||||||||||||
| 382 | QList<QByteArray> result; | - | ||||||||||||
| 383 | if (U_SUCCESS(status)
| 0 | ||||||||||||
| 384 | result = uenumToIdList(uenum); never executed: result = uenumToIdList(uenum); | 0 | ||||||||||||
| 385 | uenum_close_52(uenum); | - | ||||||||||||
| 386 | return never executed: result;return result;never executed: return result; | 0 | ||||||||||||
| 387 | - | |||||||||||||
| 388 | - | |||||||||||||
| 389 | - | |||||||||||||
| 390 | } | - | ||||||||||||
| 391 | - | |||||||||||||
| 392 | - | |||||||||||||
| Switch to Source code | Preprocessed file |