def test__natsort_key_with_GROUPLETTERS_and_LOWERCASEFIRST_inverts_text_first_then_doubles_letters_with_lowercase_letter_first(x): assume(len(x) <= 10) assume(not any(type(y) == float and isnan(y) for y in x)) s = ''.join(ichain([repr(y)] if type(y) in (float, long, int) else [low(y), y] for y in x)) s = ''.join(repr(y) if type(y) in (float, long, int) else y for y in x) t = _number_extracter(s.swapcase(), _int_nosign_re, *int_nosafe_nolocale_nogroup) assert _natsort_key(s, None, ns.G | ns.LF) == tuple(''.join(low(z) + z for z in y) if type(y) not in (float, long, int) else y for y in t)
def test__natsort_key_with_GROUPLETTERS_doubles_text_with_lowercase_letter_first( x): assume(not any(type(y) == float and isnan(y) for y in x)) s = ''.join( ichain([repr(y)] if type(y) in (float, long, int) else [low(y), y] for y in x)) s = ''.join(repr(y) if type(y) in (float, long, int) else y for y in x) t = _number_extracter(s, _int_nosign_re, *int_nosafe_nolocale_nogroup) assert _natsort_key(s, None, ns.GROUPLETTERS) == tuple(''.join( low(z) + z for z in y) if type(y) not in (float, long, int) else y for y in t)
def test_number_extracter_doubles_letters_with_lowercase_version_with_groupletters_for_float(x): assume(len(x) <= 10) assume(not any(type(y) == float and isnan(y) for y in x)) s = ''.join(repr(y) if type(y) in (float, long, int) else y for y in x) t = float_splitter(s, True, True, False, '') t = [''.join([low(z) + z for z in y]) if type(y) != float else y for y in t] assert _number_extracter(s, _float_sign_exp_re, *float_nosafe_nolocale_group) == t
def test_locale_convert_with_groupletters_transforms_nonfloat_string_to_strxfrm_string_with_grouped_letters( x): assume(type(fast_float(x)) is not float) load_locale('en_US') strxfrm = get_strxfrm() assert locale_convert(x, (fast_float, isfloat), True) == strxfrm(''.join( chain.from_iterable([low(y), y] for y in x))) locale.setlocale(locale.LC_NUMERIC, str(''))
def test_number_extracter_doubles_letters_with_lowercase_version_with_groupletters_for_int( x): s = ''.join(repr(y) if type(y) in (float, long, int) else y for y in x) t = int_splitter(s, False, False, '') t = [ ''.join([low(z) + z for z in y]) if type(y) not in (int, long) else y for y in t ] assert _number_extracter(s, _int_nosign_re, *int_nosafe_nolocale_group) == t
def test_number_extracter_doubles_letters_with_lowercase_version_with_groupletters_for_float( x): assume(not any(type(y) == float and isnan(y) for y in x)) s = ''.join(repr(y) if type(y) in (float, long, int) else y for y in x) t = float_splitter(s, True, True, False, '') t = [ ''.join([low(z) + z for z in y]) if type(y) != float else y for y in t ] assert _number_extracter(s, _float_sign_exp_re, *float_nosafe_nolocale_group) == t
def test_groupeletters_returns_letters_with_lowercase_transform_of_letter(x): assert _groupletters(x) == ''.join(chain.from_iterable([low(y), y] for y in x))
def test_grouper_returns_letters_with_lowercase_transform_of_letter(x): assume(type(fast_float(x)) is not float) assert grouper(x, (fast_float, isfloat)) == ''.join( chain.from_iterable([low(y), y] for y in x))
def test_number_extracter_doubles_letters_with_lowercase_version_with_groupletters_for_int(x): assume(len(x) <= 10) s = ''.join(repr(y) if type(y) in (float, long, int) else y for y in x) t = int_splitter(s, False, False, '') t = [''.join([low(z) + z for z in y]) if type(y) not in (int, long) else y for y in t] assert _number_extracter(s, _int_nosign_re, *int_nosafe_nolocale_group) == t
def test_groupeletters_returns_letters_with_lowercase_transform_of_letter(x): assume(bool(x)) assert _groupletters(x) == ''.join(chain.from_iterable([low(y), y] for y in x))
def test_locale_convert_with_groupletters_transforms_nonfloat_string_to_strxfrm_string_with_grouped_letters(x): assume(type(fast_float(x)) is not float) load_locale('en_US') strxfrm = get_strxfrm() assert locale_convert(x, (fast_float, isfloat), True) == strxfrm(''.join(chain.from_iterable([low(y), y] for y in x))) locale.setlocale(locale.LC_NUMERIC, str(''))
def test_grouper_returns_letters_with_lowercase_transform_of_letter(x): assume(type(fast_float(x)) is not float) assert grouper(x, (fast_float, isfloat)) == ''.join(chain.from_iterable([low(y), y] for y in x))
def test__natsort_key_with_GROUPLETTERS_doubles_text_with_lowercase_letter_first(x): assume(not any(type(y) == float and isnan(y) for y in x)) s = ''.join(ichain([repr(y)] if type(y) in (float, long, int) else [low(y), y] for y in x)) s = ''.join(repr(y) if type(y) in (float, long, int) else y for y in x) t = _number_extracter(s, _int_nosign_re, *int_nosafe_nolocale_nogroup) assert _natsort_key(s, None, ns.GROUPLETTERS) == tuple(''.join(low(z) + z for z in y) if type(y) not in (float, long, int) else y for y in t)