Changeset 54577 in webkit
- Timestamp:
- Feb 9, 2010 6:19:29 PM (14 years ago)
- Location:
- trunk/JavaScriptCore
- Files:
-
- 4 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/JavaScriptCore/ChangeLog
r54574 r54577 1 2010-02-09 Jedrzej Nowacki <jedrzej.nowacki@nokia.com> 2 3 Reviewed by Simon Hausmann. 4 5 Fix QScriptValue::isNumber(). 6 7 The isNumber() should return 'true' if the value is in the CNumber 8 state. 9 10 [Qt] QScriptValue::isNumber() returns an incorrect value 11 https://bugs.webkit.org/show_bug.cgi?id=34575 12 13 * qt/api/qscriptvalue_p.h: 14 (QScriptValuePrivate::isNumber): 15 * qt/tests/qscriptvalue/tst_qscriptvalue.h: 16 * qt/tests/qscriptvalue/tst_qscriptvalue_generated.cpp: 17 (tst_QScriptValue::isNumber_initData): 18 (tst_QScriptValue::isNumber_makeData): 19 (tst_QScriptValue::isNumber_test): 20 1 21 2010-02-09 Geoffrey Garen <ggaren@apple.com> 2 22 -
trunk/JavaScriptCore/qt/api/qscriptvalue_p.h
r53854 r54577 338 338 switch (m_state) { 339 339 case CNumber: 340 return m_number;340 return true; 341 341 case JSValue: 342 342 if (isObject()) -
trunk/JavaScriptCore/qt/tests/qscriptvalue/tst_qscriptvalue.h
r54340 r54577 56 56 void isBoolean(); 57 57 58 void isNumber_data(); 59 void isNumber(); 60 58 61 void isFunction_data(); 59 62 void isFunction(); … … 95 98 void isBoolean_test(const char* expr, const QScriptValue& value); 96 99 100 void isNumber_initData(); 101 void isNumber_makeData(const char* expr); 102 void isNumber_test(const char* expr, const QScriptValue&); 103 97 104 void isFunction_initData(); 98 105 void isFunction_makeData(const char* expr); -
trunk/JavaScriptCore/qt/tests/qscriptvalue/tst_qscriptvalue_generated.cpp
r54340 r54577 316 316 DEFINE_TEST_FUNCTION(isBoolean) 317 317 318 void tst_QScriptValue::isNumber_initData() 319 { 320 QTest::addColumn<bool>("expected"); 321 initScriptValues(); 322 } 323 324 void tst_QScriptValue::isNumber_makeData(const char* expr) 325 { 326 static QSet<QString> isNumber; 327 if (isNumber.isEmpty()) { 328 isNumber << "QScriptValue(int(122))" 329 << "QScriptValue(uint(124))" 330 << "QScriptValue(0)" 331 << "QScriptValue(0.0)" 332 << "QScriptValue(123.0)" 333 << "QScriptValue(6.37e-8)" 334 << "QScriptValue(-6.37e-8)" 335 << "QScriptValue(0x43211234)" 336 << "QScriptValue(0x10000)" 337 << "QScriptValue(0x10001)" 338 << "QScriptValue(qSNaN())" 339 << "QScriptValue(qQNaN())" 340 << "QScriptValue(qInf())" 341 << "QScriptValue(-qInf())" 342 << "QScriptValue(0, int(122))" 343 << "QScriptValue(0, uint(124))" 344 << "QScriptValue(0, 0)" 345 << "QScriptValue(0, 0.0)" 346 << "QScriptValue(0, 123.0)" 347 << "QScriptValue(0, 6.37e-8)" 348 << "QScriptValue(0, -6.37e-8)" 349 << "QScriptValue(0, 0x43211234)" 350 << "QScriptValue(0, 0x10000)" 351 << "QScriptValue(0, 0x10001)" 352 << "QScriptValue(0, qSNaN())" 353 << "QScriptValue(0, qQNaN())" 354 << "QScriptValue(0, qInf())" 355 << "QScriptValue(0, -qInf())" 356 << "QScriptValue(engine, int(122))" 357 << "QScriptValue(engine, uint(124))" 358 << "QScriptValue(engine, 0)" 359 << "QScriptValue(engine, 0.0)" 360 << "QScriptValue(engine, 123.0)" 361 << "QScriptValue(engine, 6.37e-8)" 362 << "QScriptValue(engine, -6.37e-8)" 363 << "QScriptValue(engine, 0x43211234)" 364 << "QScriptValue(engine, 0x10000)" 365 << "QScriptValue(engine, 0x10001)" 366 << "QScriptValue(engine, qSNaN())" 367 << "QScriptValue(engine, qQNaN())" 368 << "QScriptValue(engine, qInf())" 369 << "QScriptValue(engine, -qInf())"; 370 } 371 newRow(expr) << isNumber.contains(expr); 372 } 373 374 void tst_QScriptValue::isNumber_test(const char*, const QScriptValue& value) 375 { 376 QFETCH(bool, expected); 377 QCOMPARE(value.isNumber(), expected); 378 } 379 380 DEFINE_TEST_FUNCTION(isNumber) 381 318 382 319 383 void tst_QScriptValue::isFunction_initData() … … 493 557 DEFINE_TEST_FUNCTION(isObject) 494 558 495
Note: See TracChangeset
for help on using the changeset viewer.