Exemplo n.º 1
0
 def test_xlist_multi_wildcard_match(self):
     xl = XList(['many', 'tom', 'Many'], {'first_attr': 1})
     nl = xl.multi_wildcard_match('m*|t*')
     self.assertTrue(len(nl) == 2)
     self.assertTrue('many' in nl)
     self.assertTrue('tom' in nl)
     self.assertFalse('Many' in nl)
Exemplo n.º 2
0
 def test_xlist_remove_dupes_int(self):
     xl = XList([1, 2, 2, 3, 3, 3], {'first_attr': 1})
     nodupe = xl.remove_duplicates()
     self.assertEqual(type(nodupe), type(XList(['test', 'again'])))
     self.assertEqual(nodupe.count(1), 1)
     self.assertEqual(nodupe.count(2), 1)
     self.assertEqual(nodupe.count(3), 1)
Exemplo n.º 3
0
 def test_xlist_remove_dupes_int(self):
     xl = XList([1, 2, 2, 3, 3, 3], {'first_attr': 1})
     nodupe = xl.remove_duplicates()
     self.assertEqual(type(nodupe), type(XList(['test', 'again'])))
     self.assertEqual(nodupe.count(1), 1)
     self.assertEqual(nodupe.count(2), 1)
     self.assertEqual(nodupe.count(3), 1)
Exemplo n.º 4
0
 def test_xlist_multi_wildcard_match(self):
     xl = XList(['many', 'tom', 'Many'], {'first_attr': 1})
     nl = xl.multi_wildcard_match('m*|t*')
     self.assertTrue(len(nl) == 2)
     self.assertTrue('many' in nl)
     self.assertTrue('tom' in nl)
     self.assertFalse('Many' in nl)
Exemplo n.º 5
0
        def test_xlist_map_items_noreturn_value(self):
            def no_return(xlist_val):
                x = 1

            xl = XList(['one', 'two', 'three'], {'first_attr': 1})
            nl = xl.map_to_items(no_return)
            self.assertTrue(nl[0] == None)
Exemplo n.º 6
0
 def test_xlist_addeq_overload_xlist(self):
     xl = XList(['one', 'two', 'three'], {'first_attr': 1})
     xl2 = XList(['four', 'five'], {'second_attr': 2})
     xl += xl2
     self.assertTrue('four' in xl)
     self.assertTrue('one' in xl)
     self.assertEqual(xl.first_attr, 1)
     self.assertEqual(xl.second_attr, 2)
Exemplo n.º 7
0
 def test_xlist_difference(self):
     xl = XList([1 , 2, 3], {'first_attr': 1})
     xl2 = XList([2, 4, 5])
     diff = xl.difference(xl2)  # returns items in XList that are not in parameter list/XList as set
     self.assertTrue(1 in diff)
     self.assertTrue(3 in diff)
     self.assertFalse(2 in diff)
     self.assertFalse(4 in diff)
     self.assertFalse(5 in diff)
Exemplo n.º 8
0
 def test_xlist_intersection(self):
     xl = XList([1 , 2, 3], {'first_attr': 1})
     xl2 = XList([2, 4, 5])
     inter = xl.intersection(xl2) # returns items in both XList and parameter list/XList
     self.assertTrue(2 in inter)
     self.assertFalse(1 in inter)
     self.assertFalse(3 in inter)
     self.assertFalse(4 in inter)
     self.assertFalse(5 in inter)
Exemplo n.º 9
0
 def test_xlist_intersection(self):
     xl = XList([1, 2, 3], {'first_attr': 1})
     xl2 = XList([2, 4, 5])
     inter = xl.intersection(
         xl2)  # returns items in both XList and parameter list/XList
     self.assertTrue(2 in inter)
     self.assertFalse(1 in inter)
     self.assertFalse(3 in inter)
     self.assertFalse(4 in inter)
     self.assertFalse(5 in inter)
Exemplo n.º 10
0
 def test_xlist_map_items(self):
     def cap_val(xlist_item):
         return xlist_item.upper()
     xl = XList(['one', 'two', 'three'], {'first_attr': 1})
     nl = xl.map_to_items(cap_val)
     self.assertTrue('ONE' in nl)
     self.assertTrue('TWO' in nl)
     self.assertTrue('THREE' in nl)
     self.assertFalse('one' in nl)
     self.assertFalse('two' in nl)
     self.assertFalse('three' in nl)
Exemplo n.º 11
0
 def test_xlist_difference(self):
     xl = XList([1, 2, 3], {'first_attr': 1})
     xl2 = XList([2, 4, 5])
     diff = xl.difference(
         xl2
     )  # returns items in XList that are not in parameter list/XList as set
     self.assertTrue(1 in diff)
     self.assertTrue(3 in diff)
     self.assertFalse(2 in diff)
     self.assertFalse(4 in diff)
     self.assertFalse(5 in diff)
Exemplo n.º 12
0
 def test_xlist_add_overload_mutiple_xlist(self):
     xl = XList(['one', 'two', 'three'], {'first_attr': 1})
     xl2 = XList(['four', 'five'], {'second_attr': 2})
     xl3 = XList(['six', 'seven'], {'third_attr': 3})
     nl = xl + xl2 + xl3
     self.assertTrue('one' in nl)
     self.assertTrue('five' in nl)
     self.assertTrue('seven' in nl)
     self.assertEqual(nl.first_attr, 1)
     self.assertEqual(nl.second_attr, 2)
     self.assertEqual(nl.third_attr, 3)
Exemplo n.º 13
0
        def test_xlist_map_items(self):
            def cap_val(xlist_item):
                return xlist_item.upper()

            xl = XList(['one', 'two', 'three'], {'first_attr': 1})
            nl = xl.map_to_items(cap_val)
            self.assertTrue('ONE' in nl)
            self.assertTrue('TWO' in nl)
            self.assertTrue('THREE' in nl)
            self.assertFalse('one' in nl)
            self.assertFalse('two' in nl)
            self.assertFalse('three' in nl)
Exemplo n.º 14
0
 def test_xlist_add_overload_list(self):
     xl = XList(['one', 'two', 'three'], {'first_attr': 1})
     a_list = ['four', 'five']
     nl = xl + a_list  # note that xlist needs to be the left sided operand to include attributes
     self.assertTrue('four' in nl)
     self.assertTrue('one' in nl)
     self.assertEqual(nl.first_attr, 1)
Exemplo n.º 15
0
 def test_xlist_addeq_overload_list(self):
     xl = XList(['one', 'two', 'three'], {'first_attr': 1})
     a_list = ['four', 'five']
     xl += a_list
     self.assertTrue('four' in xl)
     self.assertTrue('one' in xl)
     self.assertEqual(xl.first_attr, 1)
Exemplo n.º 16
0
        def test_xlist_conditional_map_items(self):
            def true_a(xdict_key):
                return xdict_key.startswith('a')

            def cap_val(xdict_val):
                return xdict_val.upper()

            xl = XList(['all', 'many', 'none'], {'first_attr': 1})
            nl = xl.conditional_map_to_items(true_a, cap_val)
            self.assertTrue('ALL' in nl)
            self.assertFalse('all' in nl)
            self.assertFalse('MANY' in nl)
            self.assertFalse('NONE' in nl)
            self.assertTrue(nl[0] == 'ALL')
            self.assertTrue(nl[1] == 'many')
            self.assertTrue(nl[2] == 'none')
Exemplo n.º 17
0
        def test_xlist_conditional_map_items(self):
            def true_a(xdict_key):
                return xdict_key.startswith('a')

            def cap_val(xdict_val):
                return xdict_val.upper()

            xl = XList(['all', 'many', 'none'], {'first_attr': 1})
            nl = xl.conditional_map_to_items(true_a, cap_val)
            self.assertTrue('ALL' in nl)
            self.assertFalse('all' in nl)
            self.assertFalse('MANY' in nl)
            self.assertFalse('NONE' in nl)
            self.assertTrue(nl[0] == 'ALL')
            self.assertTrue(nl[1] == 'many')
            self.assertTrue(nl[2] == 'none')
Exemplo n.º 18
0
 def test_xlist_add_overload_multiplelist(self):
     xl = XList(['one', 'two', 'three'], {'first_attr': 1})
     a_list = ['four', 'five']
     b_list = ['six', 'seven']
     nl = xl + a_list + b_list
     self.assertTrue('four' in nl)
     self.assertTrue('one' in nl)
     self.assertTrue('seven' in nl)
     self.assertEqual(nl.first_attr, 1)
Exemplo n.º 19
0
def xl(list_arg, attributes={}):
    try:
        return XList(list_arg, attributes)
    except TypeError:
        raise TypeError(
            "Attempted to cast to a XList with an incompatible type")
    except Exception as e:
        if DEBUG_FLAG:
            print(
                "Naked Framework Error: unable to cast object to a XList with the xl() function (Naked.toolshed.casts.py)."
            )
        raise e
Exemplo n.º 20
0
 def test_xdict_key_xlist(self):
     xd = XDict(
         {
             'a_one': 'value_one',
             'b_two': 'value_two',
             'c_three': 'value_three'
         }, {'attrkey': 'attrval'})
     xl = xd.key_xlist()
     self.assertEqual(type(xl),
                      type(XList(['item'])))  #actually makes XList
     self.assertTrue(len(xl) == 3)  # includes all items
     self.assertTrue('a_one' in xl)  # includes appropriate items in XList
     self.assertTrue('b_two' in xl)
     self.assertTrue('c_three' in xl)
     self.assertEqual(xl.attrkey, 'attrval')  # includes original attributes
Exemplo n.º 21
0
    def setUp(self):
        self.teststring = "this is a test"
        self.testdict = {'key1': 'val1', 'key2': 'val2'}
        self.testlist = ['item1', 'item2', 'item3']
        self.testset = {'item1', 'item2', 'item3'}
        self.frozenset = frozenset(self.testset)
        self.testtuple = ('item1', 'item2', 'item3')
        self.stringtype = type(self.teststring)
        self.dicttype = type(self.testdict)
        self.listtype = type(self.testlist)
        self.settype = type(self.testset)
        self.fsettype = type(self.frozenset)
        self.tupletype = type(self.testtuple)

        self.nobj = NakedObject(self.testdict)
        self.xstring = XString(self.teststring, self.testdict)
        self.xdict = XDict(self.testdict, self.testdict)
        self.xlist = XList(self.testlist, self.testdict)
        self.xsets = XSet(self.testset, self.testdict)
        self.xfsets = XFSet(self.testset, self.testdict)
        self.xtuple = XTuple(self.testtuple, self.testdict)
        self.nobjtype = type(self.nobj)
        self.xstringtype = type(self.xstring)
        self.xdicttype = type(self.xdict)
        self.xlisttype = type(self.xlist)
        self.xsettype = type(self.xsets)
        self.xfsettype = type(self.xfsets)
        self.xtupletype = type(self.xtuple)

        self.test_nobj = nobj(self.testdict)
        self.test_xstring = xstr(self.teststring, self.testdict)
        self.test_xdict = xd(self.testdict, self.testdict)
        self.test_xlist = xl(self.testlist, self.testdict)
        self.test_xset = xset(self.testset, self.testdict)
        self.test_xfset = xfset(self.frozenset, self.testdict)
        self.test_xtuple = xt(self.testtuple, self.testdict)
Exemplo n.º 22
0
 def test_xlist_count_dupes_string_twodupe(self):
     xl = XList(['test', 'test', 'another', 'another', 'last', 'last'],
                {'first_attr': 1})
     dupes = xl.count_duplicates()
     self.assertEqual(dupes, 3)
Exemplo n.º 23
0
 def test_xlist_surround_two_strings(self):
     xl = XList(['one', 'two', 'three'], {'first_attr': 1})
     nl = xl.surround('<p>', '</p>')
     self.assertTrue('<p>one</p>' in nl)
     self.assertTrue('<p>two</p>' in nl)
     self.assertTrue('<p>three</p>' in nl)
Exemplo n.º 24
0
 def test_xlist_min_float(self):
     xl = XList([1.25123, 2.5234, 3.73423], {'first_attr': 1})
     min_num = xl.min()
     self.assertEqual(min_num, 1.25123)
Exemplo n.º 25
0
 def test_xlist_sum_float(self):
     xl = XList([1.2, 2.5, 3.1], {'first_attr': 1})
     total = xl.sum()
     self.assertAlmostEqual(total, 6.8)
Exemplo n.º 26
0
 def test_xlist_random_sample_noexception(self):
     xl = XList([1 , 2, 3], {'first_attr': 1})
     nl = xl.random_sample(2)
     self.assertTrue(len(nl) == 2)
Exemplo n.º 27
0
 def test_xlist_max_int(self):
     xl = XList([1, 2, 3], {'first_attr': 1})
     max_num = xl.max()
     self.assertEqual(max_num, 3)
Exemplo n.º 28
0
 def test_xlist_multi_wildcard_match_nomatches(self):
     xl = XList(['many', 'tom', 'Many'], {'first_attr': 1})
     nl = xl.multi_wildcard_match('z*|*l')
     self.assertTrue(len(nl) == 0)
Exemplo n.º 29
0
 def test_xlist_random_noexception(
     self
 ):  # just confirm that it does not raise exception, can't test result
     xl = XList([1, 2, 3], {'first_attr': 1})
     nl = xl.random()
     self.assertTrue(type(nl) == type(1))
Exemplo n.º 30
0
 def test_xlist_wildcard_match_nomatches(self):
     xl = XList(['MANY', 'many', 'Many'], {'first_attr': 1})
     nl = xl.wildcard_match('t*')
     self.assertTrue(len(nl) == 0)
Exemplo n.º 31
0
 def test_xlist_count_case_insensitive_withother(self):
     xl = XList(['MANY', 1, 'many'], {'first_attr': 1})
     nl = xl.count_ci('Many')
     self.assertTrue(nl == 2)
Exemplo n.º 32
0
 def test_xlist_wildcard_match(self):
     xl = XList(['MANY', 'many', 'Many'], {'first_attr': 1})
     nl = xl.wildcard_match('m*')
     self.assertTrue(len(nl) == 1)
     self.assertEqual(nl[0], 'many')
Exemplo n.º 33
0
 def test_xlist_wildcard_match_nonstring(self):
     xl = XList(['MANY', 1, 'many'], {'first_attr': 1})
     with self.assertRaises(TypeError):
         nl = xl.wildcard_match('m*') # when the list contains non-string types, TypeError is raised
Exemplo n.º 34
0
 def test_xlist_shuffle(self):
     xl = XList([1 , 2, 3], {'first_attr': 1})
     nl = xl.random_sample(2)
Exemplo n.º 35
0
 def test_xlist_postfix_string(self):
     xl = XList(['one', 'two', 'three'], {'first_attr': 1})
     nl = xl.postfix('test')
     self.assertTrue('onetest' in nl)
     self.assertTrue('twotest' in nl)
     self.assertTrue('threetest' in nl)
Exemplo n.º 36
0
 def test_xlist_cast_xfset(self):
     xl = XList(['many', 'tom', 'Many'], {'first_attr': 1})
     xs = xl.xfset()
     self.assertEqual(type(xs), type(XFSet({1,2})))
Exemplo n.º 37
0
 def test_xlist_postfix_char(self):
     xl = XList(['one', 'two', 'three'], {'first_attr': 1})
     nl = xl.postfix('s')
     self.assertTrue('ones' in nl)
     self.assertTrue('twos' in nl)
     self.assertTrue('threes' in nl)
Exemplo n.º 38
0
 def test_xlist_prefix_char(self):
     xl = XList(['one', 'two', 'three'], {'first_attr': 1})
     nl = xl.prefix('s')
     self.assertTrue('sone' in nl)
     self.assertTrue('stwo' in nl)
     self.assertTrue('sthree' in nl)
Exemplo n.º 39
0
 def test_xlist_shuffle(self):
     xl = XList([1, 2, 3], {'first_attr': 1})
     nl = xl.random_sample(2)
Exemplo n.º 40
0
 def test_xlist_map_items_noreturn_value(self):
     def no_return(xlist_val):
         x = 1
     xl = XList(['one', 'two', 'three'], {'first_attr': 1})
     nl = xl.map_to_items(no_return)
     self.assertTrue(nl[0] == None)
Exemplo n.º 41
0
 def test_xlist_surround_two_strings(self):
     xl = XList(['one', 'two', 'three'], {'first_attr': 1})
     nl = xl.surround('<p>', '</p>')
     self.assertTrue('<p>one</p>' in nl)
     self.assertTrue('<p>two</p>' in nl)
     self.assertTrue('<p>three</p>' in nl)
Exemplo n.º 42
0
 def test_xlist_count_dupes_string_twodupe(self):
     xl = XList(['test', 'test', 'another', 'another', 'last', 'last'], {'first_attr': 1})
     dupes = xl.count_duplicates()
     self.assertEqual(dupes, 3)
Exemplo n.º 43
0
 def test_xlist_min_int(self):
     xl = XList([1, 2, 3], {'first_attr': 1})
     min_num = xl.min()
     self.assertEqual(min_num, 1)
Exemplo n.º 44
0
 def test_xlist_count_dupes_int_twodupe(self):
     xl = XList([1, 2, 2, 3, 3, 3], {'first_attr': 1})
     dupes = xl.count_duplicates()
     self.assertEqual(dupes, 3)
Exemplo n.º 45
0
 def test_xlist_sum_int(self):
     xl = XList([1, 2, 3], {'first_attr': 1})
     total = xl.sum()
     self.assertEqual(total, 6)
Exemplo n.º 46
0
 def test_xlist_sum_float(self):
     xl = XList([1.2 , 2.5, 3.1], {'first_attr': 1})
     total = xl.sum()
     self.assertAlmostEqual(total, 6.8)
Exemplo n.º 47
0
 def test_xlist_count_dupes_int_twodupe(self):
     xl = XList([1, 2, 2, 3, 3, 3], {'first_attr': 1})
     dupes = xl.count_duplicates()
     self.assertEqual(dupes, 3)
Exemplo n.º 48
0
 def test_xlist_sum_int(self):
     xl = XList([1 , 2, 3], {'first_attr': 1})
     total = xl.sum()
     self.assertEqual(total, 6)
Exemplo n.º 49
0
 def test_xlist_max_int(self):
     xl = XList([1 , 2, 3], {'first_attr': 1})
     max_num = xl.max()
     self.assertEqual(max_num, 3)
Exemplo n.º 50
0
 def test_xlist_min_float(self):
     xl = XList([1.25123 , 2.5234, 3.73423], {'first_attr': 1})
     min_num = xl.min()
     self.assertEqual(min_num, 1.25123)
Exemplo n.º 51
0
 def test_xlist_surround_one_string(self):
     xl = XList(['one', 'two', 'three'], {'first_attr': 1})
     nl = xl.surround('"')
     self.assertTrue('"one"' in nl)
     self.assertTrue('"two"' in nl)
     self.assertTrue('"three"' in nl)
Exemplo n.º 52
0
 def test_xlist_min_int(self):
     xl = XList([1 , 2, 3], {'first_attr': 1})
     min_num = xl.min()
     self.assertEqual(min_num, 1)
Exemplo n.º 53
0
 def test_xlist_postfix_unicode_char(self):
     xl = XList(['one', 'two', 'three'], {'first_attr': 1})
     nl = xl.postfix('ত')
     self.assertTrue('oneত' in nl)
     self.assertTrue('twoত' in nl)
     self.assertTrue('threeত' in nl)
Exemplo n.º 54
0
 def test_xlist_postfix_unicode_char(self):
     xl = XList(['one', 'two', 'three'], {'first_attr': 1})
     nl = xl.postfix('ত')
     self.assertTrue('oneত' in nl)
     self.assertTrue('twoত' in nl)
     self.assertTrue('threeত' in nl)
Exemplo n.º 55
0
 def test_xlist_count_case_insensitive_withother(self):
     xl = XList(['MANY', 1, 'many'], {'first_attr': 1})
     nl = xl.count_ci('Many')
     self.assertTrue(nl == 2)
Exemplo n.º 56
0
 def test_xlist_postfix_string(self):
     xl = XList(['one', 'two', 'three'], {'first_attr': 1})
     nl = xl.postfix('test')
     self.assertTrue('onetest' in nl)
     self.assertTrue('twotest' in nl)
     self.assertTrue('threetest' in nl)
Exemplo n.º 57
0
 def test_xlist_random_sample_noexception(self):
     xl = XList([1, 2, 3], {'first_attr': 1})
     nl = xl.random_sample(2)
     self.assertTrue(len(nl) == 2)
Exemplo n.º 58
0
 def test_xlist_surround_one_string(self):
     xl = XList(['one', 'two', 'three'], {'first_attr': 1})
     nl = xl.surround('"')
     self.assertTrue('"one"' in nl)
     self.assertTrue('"two"' in nl)
     self.assertTrue('"three"' in nl)
Exemplo n.º 59
0
 def test_xlist_cast_xtuple(self):
     xl = XList(['many', 'tom', 'Many'], {'first_attr': 1})
     xs = xl.xtuple()
     self.assertEqual( type(xs), type(XTuple((1,2))) )
Exemplo n.º 60
0
 def test_xlist_random_noexception(self): # just confirm that it does not raise exception, can't test result
     xl = XList([1 , 2, 3], {'first_attr': 1})
     nl = xl.random()
     self.assertTrue(type(nl) == type(1))