MCPcopy Create free account
hub / github.com/cppcheck-opensource/cppcheck / toBigUNumber

Method toBigUNumber

test/testmathlib.cpp:427–599  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

425 }
426
427 void toBigUNumber() const {
428 // zero input
429 ASSERT_EQUALS(0, MathLib::toBigUNumber("0"));
430 ASSERT_EQUALS(0, MathLib::toBigUNumber("-0"));
431 ASSERT_EQUALS(0, MathLib::toBigUNumber("+0"));
432 ASSERT_EQUALS(0, MathLib::toBigUNumber("0L"));
433 ASSERT_EQUALS(0, MathLib::toBigUNumber("0l"));
434 ASSERT_EQUALS(0, MathLib::toBigUNumber("0LL"));
435 ASSERT_EQUALS(0, MathLib::toBigUNumber("0ll"));
436 ASSERT_EQUALS(0, MathLib::toBigUNumber("0U"));
437 ASSERT_EQUALS(0, MathLib::toBigUNumber("0u"));
438 ASSERT_EQUALS(0, MathLib::toBigUNumber("0UL"));
439 ASSERT_EQUALS(0, MathLib::toBigUNumber("0ul"));
440 ASSERT_EQUALS(0, MathLib::toBigUNumber("0ULL"));
441 ASSERT_EQUALS(0, MathLib::toBigUNumber("0ull"));
442 ASSERT_EQUALS(0, MathLib::toBigUNumber("0i64")); // Visual Studio-specific
443 ASSERT_EQUALS(0, MathLib::toBigUNumber("0ui64")); // Visual Studio-specific
444
445 // TODO: needs to fail
446 //ASSERT_EQUALS(0, MathLib::toBigUNumber("0lll"));
447 //ASSERT_EQUALS(0, MathLib::toBigUNumber("0uu"));
448
449 ASSERT_EQUALS(1U, MathLib::toBigUNumber("1U"));
450 ASSERT_EQUALS(10000U, MathLib::toBigUNumber("1e4"));
451 ASSERT_EQUALS(10000U, MathLib::toBigUNumber("1e4"));
452 ASSERT_EQUALS(0xFF00000000000000UL, MathLib::toBigUNumber("0xFF00000000000000UL"));
453 ASSERT_EQUALS(0x0A00000000000000UL, MathLib::toBigUNumber("0x0A00000000000000UL"));
454
455 // from hex
456 ASSERT_EQUALS(0, MathLib::toBigUNumber("0x0"));
457 ASSERT_EQUALS(0, MathLib::toBigUNumber("-0x0"));
458 ASSERT_EQUALS(0, MathLib::toBigUNumber("+0x0"));
459 ASSERT_EQUALS(10, MathLib::toBigUNumber("0xa"));
460 ASSERT_EQUALS(10995, MathLib::toBigUNumber("0x2AF3"));
461 ASSERT_EQUALS(-10, MathLib::toBigUNumber("-0xa"));
462 ASSERT_EQUALS(-10995, MathLib::toBigUNumber("-0x2AF3"));
463 ASSERT_EQUALS(10, MathLib::toBigUNumber("+0xa"));
464 ASSERT_EQUALS(10995, MathLib::toBigUNumber("+0x2AF3"));
465
466 // from octal
467 ASSERT_EQUALS(8, MathLib::toBigUNumber("010"));
468 ASSERT_EQUALS(8, MathLib::toBigUNumber("+010"));
469 ASSERT_EQUALS(-8, MathLib::toBigUNumber("-010"));
470 ASSERT_EQUALS(125, MathLib::toBigUNumber("0175"));
471 ASSERT_EQUALS(125, MathLib::toBigUNumber("+0175"));
472 ASSERT_EQUALS(-125, MathLib::toBigUNumber("-0175"));
473
474 // from binary
475 ASSERT_EQUALS(0, MathLib::toBigUNumber("0b0"));
476 ASSERT_EQUALS(1, MathLib::toBigUNumber("0b1"));
477 ASSERT_EQUALS(1, MathLib::toBigUNumber("0b1U"));
478 ASSERT_EQUALS(1, MathLib::toBigUNumber("0b1L"));
479 ASSERT_EQUALS(1, MathLib::toBigUNumber("0b1LU"));
480 ASSERT_EQUALS(1, MathLib::toBigUNumber("0b1LL"));
481 ASSERT_EQUALS(1, MathLib::toBigUNumber("0b1LLU"));
482 ASSERT_EQUALS(1, MathLib::toBigUNumber("+0b1"));
483 ASSERT_EQUALS(-1, MathLib::toBigUNumber("-0b1"));
484 ASSERT_EQUALS(9U, MathLib::toBigUNumber("011"));

Callers

nothing calls this directly

Calls 2

appendFileIfNewMethod · 0.80
strMethod · 0.45

Tested by

no test coverage detected