def test_fast_forceint_returns_raises_ValueError_if_raise_on_invalid_is_True_and_default_is_given(
        x):
    with raises(ValueError):
        assert fastnumbers.fast_forceint(x,
                                         default=90.0,
                                         raise_on_invalid=True)
        assert fastnumbers.fast_forceint(x, 90.0, True)
def test_fast_forceint_given_float_returns_int(x):
    assume(not math.isnan(x))
    assume(not math.isinf(x))
    assert fastnumbers.fast_forceint(x) == int(x)
    assert fastnumbers.fast_forceint(x, raise_on_invalid=True) == int(x)
    assert fastnumbers.fast_forceint(x, None, True) == int(x)
    assert isinstance(fastnumbers.fast_forceint(x), (int, long))
def test_fast_forceint_given_inf_string_raises_OverflowError_with_raise_on_invalid_as_True(
):
    with raises(OverflowError):
        fastnumbers.fast_forceint('inf', raise_on_invalid=True)
        fastnumbers.fast_forceint('-infinity', raise_on_invalid=True)
        fastnumbers.fast_forceint('inf', None, True)
        fastnumbers.fast_forceint('-infinity', None, True)
Exemple #4
0
def state_to_number(s):
    r = s.rect.left
    c = s.circle.circleY
    n = fast_forceint(str(r) + str(c) + str(s.circle.circleX))

    if n in QIDic:
        return QIDic[n]
    else:
        if len(QIDic):
            # Just use 'min' instead of 'max' for minimum.
            maximum = max(QIDic, key=QIDic.get)
            QIDic[n] = QIDic[maximum] + 1
        else:
            QIDic[n] = 1
    return QIDic[n]
    def _checktype(self, value):

        if value is not None and fastnumbers is not None:
            value = fastnumbers.fast_forceint(value)
            if isinstance(value, int):
                return value
            raise TypeError(u'IntColumn expects integers, not %s' %
                            safe_decode(value))
        if isinstance(value, int):
            return value
        try:
            return int(float(value))
        except:
            raise TypeError(u'IntColumn expects integers, not %s' %
                            safe_decode(value))
def test_fast_forceint_given_padded_float_strings_returns_int(x, y, z):
    assume(not math.isnan(x))
    assume(not math.isinf(x))
    y = ''.join(repeat(' ', y)) + repr(x) + ''.join(repeat(' ', z))
    assert fastnumbers.fast_forceint(y) == int(x)
    assert isinstance(fastnumbers.fast_forceint(y), (int, long))
def test_fast_forceint_returns_input_as_is_if_valid_and_key_is_given(x):
    assume(not math.isnan(x))
    assume(not math.isinf(x))
    fastnumbers.fast_forceint(x, key=len) == int(x)
    fastnumbers.fast_forceint(str(x), key=len) == int(x)
def test_fast_forceint_given_invalid_type_raises_TypeError(x):
    with raises(TypeError):
        fastnumbers.fast_forceint(x)
def test_fast_forceint_given_invalid_string_returns_string_as_is(x):
    assume(not a_number(x))
    assert fastnumbers.fast_forceint(x) is x
def test_fast_forceint_given_unicode_numeral_returns_int(x):
    assert fastnumbers.fast_forceint(x) == int(unicodedata.numeric(x))
    assert isinstance(fastnumbers.fast_forceint(x), (int, long))
    # Try padded as well
    assert fastnumbers.fast_forceint(u'   ' + x + u'   ') == int(unicodedata.numeric(x))
def test_fast_forceint_given_padded_int_string_returns_int(x, y, z):
    y = ''.join(repeat(' ', y)) + repr(x) + ''.join(repeat(' ', z))
    assert fastnumbers.fast_forceint(y) == x
    assert isinstance(fastnumbers.fast_forceint(y), (int, long))
def test_fast_forceint():
    # 1. float number
    assert fastnumbers.fast_forceint(-367.3268) == -367
    assert fastnumbers.fast_forceint(-367.3268, raise_on_invalid=True) == -367
    # 2. signed float string
    assert fastnumbers.fast_forceint("+367.3268") == 367
    assert fastnumbers.fast_forceint("+367.3268", raise_on_invalid=True) == 367
    # 3. float string with exponents
    assert fastnumbers.fast_forceint("-367.3268e207") == long(-367.3268e207)
    # 4. float string with padded whitespace
    assert fastnumbers.fast_forceint("   -367.04   ") == -367
    # 5. int number
    assert fastnumbers.fast_forceint(499) == 499
    # 6. signed int string
    assert fastnumbers.fast_forceint('-499') == -499
    # 7. int string with padded whitespace
    assert fastnumbers.fast_forceint('   +3001   ') == 3001
    # 8. long number
    assert fastnumbers.fast_forceint(
        35892482945872302493) == 35892482945872302493
    # 9. long string
    assert fastnumbers.fast_forceint(
        "35892482945872302493") == 35892482945872302493
    # 10. return type
    assert isinstance(fastnumbers.fast_forceint(4029.00), int)
    assert isinstance(fastnumbers.fast_forceint("4029.00"), int)
    # 11. TypeError for invalid input
    with raises(TypeError):
        fastnumbers.fast_forceint(['hey'])
    # 12. Invalid input string
    assert fastnumbers.fast_forceint('not_a_number') == 'not_a_number'
    with raises(ValueError):
        assert fastnumbers.fast_forceint('not_a_number', raise_on_invalid=True)
    # 13. Invalid input string with numbers
    assert fastnumbers.fast_forceint('26.8 lb') == '26.8 lb'
    with raises(ValueError):
        assert fastnumbers.fast_forceint('26.8 lb', None, True)
    # 14. Infinity
    assert fastnumbers.fast_forceint('inf') == 'inf'
    assert fastnumbers.fast_forceint('-iNFinity') == '-iNFinity'
    # 15. NaN
    assert fastnumbers.fast_forceint('nan') == 'nan'
    # 16. Sign/'e'/'.' only
    assert fastnumbers.fast_forceint('+') == '+'
    assert fastnumbers.fast_forceint('-') == '-'
    assert fastnumbers.fast_forceint('e') == 'e'
    assert fastnumbers.fast_forceint('.') == '.'
    # 17. Default on invalid... 'raise_on_invalid' supersedes
    assert fastnumbers.fast_forceint('invalid', default=90) == 90
    assert fastnumbers.fast_forceint('invalid', default=None) is None
    with raises(ValueError):
        assert fastnumbers.fast_forceint('invalid', 90, True)
    # 18. Unicode numbers
    assert fastnumbers.fast_forceint(u'⑦') == 7
    assert fastnumbers.fast_forceint(u'⁸') == 8
    assert fastnumbers.fast_forceint(u'⅔') == 0
    assert fastnumbers.fast_forceint(u'Ⅴ') == 5
    # 19. Key function
    assert fastnumbers.fast_forceint(76.8, key=len) == 76
    assert fastnumbers.fast_forceint('76.8', key=len) == 76
    assert fastnumbers.fast_forceint('invalid', key=len) == 7
def test_fast_forceint():
    # 1. float number
    assert fastnumbers.fast_forceint(-367.3268) == -367
    assert fastnumbers.fast_forceint(-367.3268, raise_on_invalid=True) == -367
    # 2. signed float string
    assert fastnumbers.fast_forceint("+367.3268") == 367
    assert fastnumbers.fast_forceint("+367.3268", raise_on_invalid=True) == 367
    # 3. float string with exponents
    assert fastnumbers.fast_forceint("-367.3268e207") == long(-367.3268e207)
    # 4. float string with padded whitespace
    assert fastnumbers.fast_forceint("   -367.04   ") == -367
    # 5. int number
    assert fastnumbers.fast_forceint(499) == 499
    # 6. signed int string
    assert fastnumbers.fast_forceint("-499") == -499
    # 7. int string with padded whitespace
    assert fastnumbers.fast_forceint("   +3001   ") == 3001
    # 8. long number
    assert fastnumbers.fast_forceint(35892482945872302493) == 35892482945872302493
    # 9. long string
    assert fastnumbers.fast_forceint("35892482945872302493") == 35892482945872302493
    # 10. return type
    assert isinstance(fastnumbers.fast_forceint(4029.00), int)
    assert isinstance(fastnumbers.fast_forceint("4029.00"), int)
    # 11. TypeError for invalid input
    with raises(TypeError):
        fastnumbers.fast_forceint(["hey"])
    # 12. Invalid input string
    assert fastnumbers.fast_forceint("not_a_number") == "not_a_number"
    with raises(ValueError):
        assert fastnumbers.fast_forceint("not_a_number", raise_on_invalid=True)
    # 13. Invalid input string with numbers
    assert fastnumbers.fast_forceint("26.8 lb") == "26.8 lb"
    with raises(ValueError):
        assert fastnumbers.fast_forceint("26.8 lb", None, True)
    # 14. Infinity
    assert fastnumbers.fast_forceint("inf") == "inf"
    assert fastnumbers.fast_forceint("-iNFinity") == "-iNFinity"
    # 15. NaN
    assert fastnumbers.fast_forceint("nan") == "nan"
    # 16. Sign/'e'/'.' only
    assert fastnumbers.fast_forceint("+") == "+"
    assert fastnumbers.fast_forceint("-") == "-"
    assert fastnumbers.fast_forceint("e") == "e"
    assert fastnumbers.fast_forceint(".") == "."
    # 17. Default on invalid... 'raise_on_invalid' supersedes
    assert fastnumbers.fast_forceint("invalid", default=90) == 90
    assert fastnumbers.fast_forceint("invalid", default=None) is None
    with raises(ValueError):
        assert fastnumbers.fast_forceint("invalid", 90, True)
    # 18. Unicode numbers
    assert fastnumbers.fast_forceint(u"⑦") == 7
    assert fastnumbers.fast_forceint(u"⁸") == 8
    assert fastnumbers.fast_forceint(u"⅔") == 0
    assert fastnumbers.fast_forceint(u"Ⅴ") == 5
    # 19. Key function
    assert fastnumbers.fast_forceint(76.8, key=len) == 76
    assert fastnumbers.fast_forceint("76.8", key=len) == 76
    assert fastnumbers.fast_forceint("invalid", key=len) == 7
Exemple #14
0
import json
import requests
from fastnumbers import fast_forceint

##fastnumbers force_int will handle the int conversion of data:wq

#Curl API
r = requests.get('https://koinex.in/api/ticker')

print(r)

#pythonJsonObject with 'u'
json_string = r.json()

#Make O/P Data
d = {
    'vol_24Hrs': {
        'ETH': fast_forceint(json_string['stats']['ETH']['vol_24hrs']),
        'BTC': fast_forceint(json_string['stats']['BTC']['vol_24hrs']),
        'LTC': fast_forceint(json_string['stats']['LTC']['vol_24hrs']),
        'XRP': fast_forceint(json_string['stats']['XRP']['vol_24hrs']),
        'BCH': fast_forceint(json_string['stats']['BCH']['vol_24hrs'])
    }
}

#PythonObjectToJsonData
parsed_json = json.dumps(d)

print parsed_json
def test_fast_forceint_returns_input_as_is_if_valid_and_key_is_given(x):
    assert fastnumbers.fast_forceint(x, key=len) == int(x)
    assert fastnumbers.fast_forceint(repr(x), key=len) == int(x)
def test_fast_forceint_given_int_returns_int(x):
    assert fastnumbers.fast_forceint(x) == x
    assert isinstance(fastnumbers.fast_forceint(x), (int, long))
def test_fast_forceint_given_int_string_returns_int(x):
    y = repr(x)
    assert fastnumbers.fast_forceint(y) == x
    assert isinstance(fastnumbers.fast_forceint(y), (int, long))
def test_fast_forceint_with_no_arguments_fails():
    with raises(TypeError):
        fastnumbers.fast_forceint(5, invalid='dummy')
def test_fast_forceint_given_unicode_digit_returns_int(x):
    assert fastnumbers.fast_forceint(x) == unicodedata.digit(x)
    assert isinstance(fastnumbers.fast_forceint(x), (int, long))
    # Try padded as well
    assert fastnumbers.fast_forceint(u'   ' + x + u'   ') == unicodedata.digit(x)
def test_fast_forceint_given_dumb_class_responds_to_internal_ValueError():
    x = DumbIntClass()
    assert fastnumbers.fast_forceint(x) is x
    with raises(ValueError):
        fastnumbers.fast_forceint(x, raise_on_invalid=True)
    assert fastnumbers.fast_forceint(x, default=5) == 5
def test_fast_forceint_given_unicode_non_numeral_returns_as_is(x):
    assert fastnumbers.fast_forceint(x) == x
def test_fast_forceint_given_nan_raises_ValueError_or_returns_as_is_or_returns_default():
    with raises(ValueError):
        fastnumbers.fast_forceint(float('nan'), raise_on_invalid=True)
    assert math.isnan(fastnumbers.fast_forceint(float('nan')))
    assert fastnumbers.fast_forceint(float('nan'), 'Sample') == 'Sample'
def test_fast_forceint_given_invalid_string_raises_ValueError_if_raise_on_invalid_is_True(x):
    assume(not a_number(x))
    with raises(ValueError):
        fastnumbers.fast_forceint(x, raise_on_invalid=True)
        fastnumbers.fast_forceint(x, None, True)
def test_fast_forceint_given_inf_raises_OverflowError():
    with raises(OverflowError):
        fastnumbers.fast_forceint(float('inf'), raise_on_invalid=True)
    assert math.isinf(fastnumbers.fast_forceint(float('inf')))
    assert fastnumbers.fast_forceint(float('inf'), 'Sample') == 'Sample'
def test_fast_forceint_returns_default_value_if_given_invalid_string(x):
    assume(not a_number(x))
    assert fastnumbers.fast_forceint(x, default=90.0) == 90.0
    assert fastnumbers.fast_forceint(x, 90.0) == 90.0
def test_fast_forceint_given_nan_string_raises_ValueError_with_raise_on_invalid_as_True():
    with raises(ValueError): 
        fastnumbers.fast_forceint('nan', raise_on_invalid=True)
        fastnumbers.fast_forceint('nan', None, True)
def test_fast_forceint_returns_transformed_input_if_invalid_and_key_is_given(x):
    assume(not a_number(x))
    fastnumbers.fast_forceint(x, key=len) == len(x)
def test_fast_forceint_given_float_string_returns_int(x):
    y = repr(x)
    assert fastnumbers.fast_forceint(y) == int(x)
    assert fastnumbers.fast_forceint(y, None, True) == int(x)
    assert fastnumbers.fast_forceint(y, raise_on_invalid=True) == int(x)
    assert isinstance(fastnumbers.fast_forceint(y), (int, long))