Ejemplo n.º 1
0
 def test_keys(self):
     self.assertTrue(api.dotted({}).keys() == [])
     self.assertTrue(
         api.dotted({
             'foo': 0,
             'bar': 1
         }).keys() == ['foo', 'bar'])
     self.assertTrue(api.dotted({'foo': {'bar': 1}}).keys() == ['foo'])
Ejemplo n.º 2
0
 def test_keys(self):
     self.assertEqual(api.dotted({}).keys(), [])
     self.assertCountEqual(
         api.dotted({
             'foo': 0,
             'bar': 1
         }).keys(), ['foo', 'bar'])
     self.assertCountEqual(api.dotted({'foo': {'bar': 1}}).keys(), ['foo'])
Ejemplo n.º 3
0
 def test_items(self):
     self.assertEqual(api.dotted({}).keys(), [])
     self.assertCountEqual(
         api.dotted({
             'foo': 0,
             'bar': 1
         }).items(), [('foo', 0), ('bar', 1)])
     self.assertIsInstance(
         api.dotted({
             'foo': {
                 'bar': 1
             }
         }).items()[0][1], dotteddict.DottedDict)
Ejemplo n.º 4
0
 def test_items(self):
     self.assertTrue(api.dotted({}).keys() == [])
     self.assertTrue(
         api.dotted({
             'foo': 0,
             'bar': 1
         }).items() == [('foo', 0), ('bar', 1)])
     self.assertTrue(
         isinstance(
             api.dotted({
                 'foo': {
                     'bar': 1
                 }
             }).items()[0][1], dotteddict.DottedDict))
Ejemplo n.º 5
0
 def assertRaisesValidationError(self,f):
     r = self.request(dotted({}))
     try:
         f.validate(r)
     except validation.FormError:
         return
     raise ValueError
Ejemplo n.º 6
0
def _expand_id(id, doc):
    eid = []
    if '*' in id:
        prefix, suffix = id.split('*')
        items = api.dotted(doc)[prefix[:-1]]
        key = prefix + '%(n)s' + suffix
        return '%%%%(%s)s'%key,len(items)
    else:
        return '%%%%(%s)s'%id,1
 def build_request(self, data):
     """ Helps us create WebOb-like request to feed Formish's forms.
         Inspired by formish/tests/testish/testish/lib/forms.py
     """
     request = webob.Request.blank(cherrypy.url(), environ={'REQUEST_METHOD': 'POST'})
     fields = []
     for k, v in flatten(dotted(data)):
         fields.append((k, v))
     request.body = urlencode(fields)
     return request
Ejemplo n.º 8
0
 def test_eq(self):
     one = {'foo': 0, 'bar': 1}
     two = {'foo': {'bar': 1}}
     self.assertTrue(api.dotted(one) == one)
     self.assertTrue(api.dotted(one) == api.dotted(one))
     self.assertFalse(api.dotted(one) == two)
     self.assertFalse(api.dotted(one) == api.dotted(two))
Ejemplo n.º 9
0
 def test_eq(self):
     one = {'foo': 0, 'bar': 1}
     two = {'foo': {'bar': 1}}
     self.assertTrue(api.dotted(one) == one)
     self.assertTrue(api.dotted(one) == api.dotted(one))
     self.assertFalse(api.dotted(one) == two)
     self.assertFalse(api.dotted(one) == api.dotted(two))
Ejemplo n.º 10
0
 def test_eq(self):
     one = ['foo', 'bar']
     two = ['foo', 'rab']
     self.assertTrue(api.dotted(one) == one)
     self.assertTrue(api.dotted(one) == api.dotted(one))
     self.assertFalse(api.dotted(one) == two)
     self.assertFalse(api.dotted(one) == api.dotted(two))
Ejemplo n.º 11
0
 def test_eq(self):
     one = ['foo', 'bar']
     two = ['foo', 'rab']
     self.assertTrue(api.dotted(one) == one)
     self.assertTrue(api.dotted(one) == api.dotted(one))
     self.assertFalse(api.dotted(one) == two)
     self.assertFalse(api.dotted(one) == api.dotted(two))
Ejemplo n.º 12
0
def build_request(formname, data):
    d = dotted(data)
    e = {'REQUEST_METHOD': 'POST'}
    request = webob.Request.blank('/',environ=e)
    fields = []
    fields.append( ('_charset)','UTF-8') )
    fields.append( ('__formish_form__','form') )
    for k, v in d.dotteditems():
        fields.append( (k,v) )
    fields.append( ('submit','Submit') )
    request.body = urlencode( fields )

    return request
Ejemplo n.º 13
0
 def _factory(db, doc):
     ixdoc = xappy.UnprocessedDocument()
     ixdoc.id = doc['_id']
     for D in i:
         for data in D['data']:
             data, num_items = expand(data, doc)
             for n in xrange(num_items):
                 if 'factory' in D:
                     out = import_func(D['factory'])(doc)
                     if isinstance(out, ListType):
                         for index_text in out:
                             print 'INDEX_TEXT',index_text
                             ixdoc.fields.append(xappy.Field(D['name'], index_text))
                     else:
                         index_text = out
                         print 'INDEX_TEXT',index_text
                         ixdoc.fields.append(xappy.Field(D['name'], index_text))
                 else:
                     index_text = (data%{'n':n})%api.dotted(doc)
                     print 'INDEX_TEXT',index_text
                     ixdoc.fields.append(xappy.Field(D['name'], index_text))
     return ixdoc
Ejemplo n.º 14
0
 def _factory(db, doc):
     ixdoc = xappy.UnprocessedDocument()
     ixdoc.id = doc['_id']
     for D in i:
         for data in D['data']:
             data, num_items = expand(data, doc)
             for n in xrange(num_items):
                 if 'factory' in D:
                     out = import_func(D['factory'])(doc)
                     if isinstance(out, ListType):
                         for index_text in out:
                             print 'INDEX_TEXT', index_text
                             ixdoc.fields.append(
                                 xappy.Field(D['name'], index_text))
                     else:
                         index_text = out
                         print 'INDEX_TEXT', index_text
                         ixdoc.fields.append(
                             xappy.Field(D['name'], index_text))
                 else:
                     index_text = (data % {'n': n}) % api.dotted(doc)
                     print 'INDEX_TEXT', index_text
                     ixdoc.fields.append(xappy.Field(D['name'], index_text))
     return ixdoc
Ejemplo n.º 15
0
 def test_set_dotted(self):
     d = {}
     dd = api.dotted(d)
     api.set(dd, 'foo', 1)
     self.assertEqual(dd, {'foo': 1})
Ejemplo n.º 16
0
 def test_wrap_dotted(self):
     l = []
     dl = api.dotted(l)
     self.assertTrue(isinstance(dl, dottedlist.DottedList))
     self.assertTrue(dl is api.dotted(dl))
Ejemplo n.º 17
0
 def test_contains(self):
     dl = api.dotted(['foo', 'bar'])
     self.assertTrue('bar' in dl)
     self.assertFalse(1 in dl)
Ejemplo n.º 18
0
 def test_set_dotted(self):
     d = {}
     dd = api.dotted(d)
     api.set(dd, 'foo', 1)
Ejemplo n.º 19
0
 def test_items(self):
     self.assertEqual(api.dotted([]).items(), [])
     self.assertEqual(api.dotted(['foo', 'bar']).items(), [('0', 'foo'), ('1', 'bar')])
     self.assertIsInstance(api.dotted([['foo']]).items()[0][1], dottedlist.DottedList)
Ejemplo n.º 20
0
 def test_setitem_unwrap(self):
     l = ['foo', 'bar']
     api.dotted(l)['0'] = api.dotted([])
     self.assertEqual(l[0], [])
     self.assertNotIsInstance(l[0], dottedlist.DottedList)
Ejemplo n.º 21
0
 def test_keys(self):
     self.assertEqual(api.dotted({}).keys(), [])
     self.assertCountEqual(api.dotted({'foo': 0, 'bar': 1}).keys(), ['foo', 'bar'])
     self.assertCountEqual(api.dotted({'foo': {'bar': 1}}).keys(), ['foo'])
Ejemplo n.º 22
0
 def test_setitem(self):
     l = ['foo', 'bar']
     api.dotted(l)['0'] = 'wee'
     self.assertEqual(l[0], 'wee')
Ejemplo n.º 23
0
 def test_setitem(self):
     d = {}
     api.dotted(d)['foo'] = 'bar'
     self.assertEqual(d['foo'], 'bar')
Ejemplo n.º 24
0
 def test_setitem_unwrap(self):
     d = {}
     api.dotted(d)['foo'] = api.dotted({})
     self.assertEqual(d['foo'], {})
     self.assertNotIsInstance(d['foo'], dotteddict.DottedDict)
Ejemplo n.º 25
0
 def test_getitem_missing(self):
     self.assertRaises(KeyError, api.dotted({}).__getitem__, 'foo')
Ejemplo n.º 26
0
 def test_repr(self):
     dl = api.dotted(['foo', 'bar'])
     self.assertEqual(repr(dl), '''<DottedList "['foo', 'bar']">''')
Ejemplo n.º 27
0
 def test_contains(self):
     dl = api.dotted(['foo', 'bar'])
     self.assertTrue('bar' in dl)
     self.assertFalse(1 in dl)
Ejemplo n.º 28
0
 def test_setitem(self):
     l = ['foo', 'bar']
     api.dotted(l)['0'] = 'wee'
     self.assertTrue(l[0] == 'wee')
Ejemplo n.º 29
0
 def test_items(self):
     self.assertEqual(api.dotted({}).keys(), [])
     self.assertCountEqual(api.dotted({'foo': 0, 'bar': 1}).items(), [('foo', 0), ('bar', 1)])
     self.assertIsInstance(api.dotted({'foo': {'bar': 1}}).items()[0][1], dotteddict.DottedDict)
Ejemplo n.º 30
0
 def test_iter(self):
     values = ['foo', 'bar']
     for value in api.dotted(['foo', 'bar']):
         self.assertEqual(value, values.pop(0))
Ejemplo n.º 31
0
 def test_len(self):
     self.assertEqual(len(api.dotted({})), 0)
     self.assertEqual(len(api.dotted({'foo': 0, 'bar': 1})), 2)
     self.assertEqual(len(api.dotted({'foo': {'bar': 1}})), 1)
Ejemplo n.º 32
0
 def test_keys(self):
     self.assertEqual(api.dotted([]).keys(), [])
     self.assertEqual(api.dotted(['foo', 'bar']).keys(), ['0', '1'])
     self.assertEqual(api.dotted([['foo']]).keys(), ['0'])
Ejemplo n.º 33
0
 def test_items(self):
     self.assertEqual(api.dotted([]).items(), [])
     self.assertEqual(
         api.dotted(['foo', 'bar']).items(), [('0', 'foo'), ('1', 'bar')])
     self.assertIsInstance(
         api.dotted([['foo']]).items()[0][1], dottedlist.DottedList)
Ejemplo n.º 34
0
 def test_len(self):
     self.assertEqual(len(api.dotted([])), 0)
     self.assertEqual(len(api.dotted(['foo', 'bar'])), 2)
Ejemplo n.º 35
0
 def test_iter(self):
     keys = ['foo', 'bar']
     for key in api.dotted({'foo': 0, 'bar': 1}):
         self.assertIn(key, keys)
         keys.remove(key)
Ejemplo n.º 36
0
 def test_iter(self):
     values = ['foo', 'bar']
     for value in api.dotted(['foo', 'bar']):
         self.assertEqual(value, values.pop(0))
Ejemplo n.º 37
0
 def test_keys(self):
     self.assertEqual(api.dotted([]).keys(), [])
     self.assertEqual(api.dotted(['foo', 'bar']).keys(), ['0', '1'])
     self.assertEqual(api.dotted([['foo']]).keys(), ['0'])
Ejemplo n.º 38
0
 def test_repr(self):
     dl = api.dotted(['foo', 'bar'])
     self.assertEqual(repr(dl), '''<DottedList "['foo', 'bar']">''')
Ejemplo n.º 39
0
 def test_keys(self):
     self.assertTrue(api.dotted([]).keys() == [])
     self.assertTrue(api.dotted(['foo', 'bar']).keys() == ['0', '1'])
     self.assertTrue(api.dotted([['foo']]).keys() == ['0'])
Ejemplo n.º 40
0
 def test_get_dotted(self):
     d = {'foo': 'bar'}
     dd = api.dotted(d)
     self.assertTrue(api.get(dd, 'foo') == 'bar')
Ejemplo n.º 41
0
 def test_wrap_dotted(self):
     d = {}
     dd = api.dotted(d)
     self.assertTrue(isinstance(dd, dotteddict.DottedDict))
     self.assertTrue(dd is api.dotted(dd))
Ejemplo n.º 42
0
 def test_get_dotted(self):
     d = {'foo': 'bar'}
     dd = api.dotted(d)
     self.assertEqual(api.get(dd, 'foo'), 'bar')
Ejemplo n.º 43
0
 def test_getitem_missing(self):
     self.assertRaises(KeyError, api.dotted({}).__getitem__, 'foo')
Ejemplo n.º 44
0
 def test_getitem(self):
     dl = api.dotted(['foo', 'bar'])
     self.assertTrue(dl['0'] == 'foo')
     self.assertRaises(KeyError, dl.__getitem__, '2')
Ejemplo n.º 45
0
 def test_setitem_unwrap(self):
     d = {}
     api.dotted(d)['foo'] = api.dotted({})
     self.assertTrue(d['foo'] == {})
     self.assertTrue(not isinstance(d['foo'], dotteddict.DottedDict))
Ejemplo n.º 46
0
 def test_setitem_unwrap(self):
     l = ['foo', 'bar']
     api.dotted(l)['0'] = api.dotted([])
     self.assertTrue(l[0] == [])
     self.assertTrue(not isinstance(l[0], dottedlist.DottedList))
Ejemplo n.º 47
0
 def test_len(self):
     self.assertEqual(len(api.dotted([])), 0)
     self.assertEqual(len(api.dotted(['foo', 'bar'])), 2)
Ejemplo n.º 48
0
 def test_items(self):
     self.assertTrue(api.dotted([]).items() == [])
     self.assertTrue(api.dotted(['foo', 'bar']).items() == [('0', 'foo'), ('1', 'bar')])
     self.assertTrue(isinstance(api.dotted([['foo']]).items()[0][1], dottedlist.DottedList))
Ejemplo n.º 49
0
 def test_getitem(self):
     dl = api.dotted(['foo', 'bar'])
     self.assertEqual(dl['0'], 'foo')
     self.assertEqual(dl.get('0'), 'foo')
     self.assertRaises(KeyError, dl.__getitem__, '2')
Ejemplo n.º 50
0
 def test_getitem(self):
     d = {'foo': 'bar'}
     dd = api.dotted(d)
     self.assertTrue(dd['foo'] == 'bar')
Ejemplo n.º 51
0
 def test_len(self):
     self.assertEqual(len(api.dotted({})), 0)
     self.assertEqual(len(api.dotted({'foo': 0, 'bar': 1})), 2)
     self.assertEqual(len(api.dotted({'foo': {'bar': 1}})), 1)
Ejemplo n.º 52
0
 def test_setitem(self):
     d = {}
     api.dotted(d)['foo'] = 'bar'
     self.assertTrue(d['foo'] == 'bar')
Ejemplo n.º 53
0
 def test_wrap_dotted(self):
     l = []
     dl = api.dotted(l)
     self.assertIsInstance(dl, dottedlist.DottedList)
     self.assertIs(dl, api.dotted(dl))
Ejemplo n.º 54
0
 def test_setitem(self):
     l = ['foo', 'bar']
     api.dotted(l)['0'] = 'wee'
     self.assertEqual(l[0], 'wee')
Ejemplo n.º 55
0
 def test_getitem(self):
     dl = api.dotted(['foo', 'bar'])
     self.assertEqual(dl['0'], 'foo')
     self.assertEqual(dl.get('0'), 'foo')
     self.assertRaises(KeyError, dl.__getitem__, '2')
Ejemplo n.º 56
0
 def test_wrap_dotted(self):
     l = []
     dl = api.dotted(l)
     self.assertIsInstance(dl, dottedlist.DottedList)
     self.assertIs(dl, api.dotted(dl))
Ejemplo n.º 57
0
 def test_setitem_unwrap(self):
     l = ['foo', 'bar']
     api.dotted(l)['0'] = api.dotted([])
     self.assertEqual(l[0], [])
     self.assertNotIsInstance(l[0], dottedlist.DottedList)