def testAdd(self): keys = Keys() before_count = len(keys.all()) self.assertTrue(keys.add(keys.new(), persist=False)) after_count = len(keys.all()) self.assertGreater(after_count, before_count) self.assertEqual(before_count + 1, after_count)
def testInit(self): keys = Keys() self.assertIsInstance(keys, ModelCollection) self.assertGreater(keys._items, 0) self.assertIsInstance(keys.all(), list) for i in keys.all(): self.assertIsInstance(i, Key)
def test_InsertQuery(self): keys = Keys() entity = keys.new() expected = OrderedDict([('name', None), ('key', None)]) data = keys._generate_query_data(entity) self.assertEqual(expected, data) expected = 'INSERT INTO keys(name,key) VALUES (?,?)' self.assertEqual(keys._generate_insert_query(data), expected)
def setkeys(types, page = None): key = '' keys = '' if request.method == 'POST': page = request.form['page'] oldkeys = Keys.query.filter(Keys.page == page).first() if not oldkeys: key = request.form['key'] keys = request.form['keys'] keys2 = request.form['keys2'] if keys2 and keys2 != '': keys += '_' + keys2 if types == 'pinyin': keys = keys.replace('i1','ī').replace('i2','í').replace('i3','ǐ').replace('i4','ì') keys = keys.replace('u1','ū').replace('u2','ú').replace('u3','ǔ').replace('u4','ù') keys = keys.replace('v1','ǖ').replace('v2','ǘ').replace('v3','ǚ').replace('v4','ǜ').replace('v','ü') keys = keys.replace('a1','ā').replace('a2','á').replace('a3','ǎ').replace('a4','à') keys = keys.replace('e1','ē').replace('e2','é').replace('e3','ě').replace('e4','è') keys = keys.replace('o1','ō').replace('o2','ó').replace('o3','ǒ').replace('o4','ò') elif types == 'bihua': keys = keys.replace('_', '至') if '畫' not in keys: keys += '畫' keylist = key.split(',') for item in keylist: oldkeys = Keys.query.filter(Keys.key == item).first() if len(keylist) == 1 or not oldkeys: with db.auto_commit(): newkeys = Keys() newkeys.page = page newkeys.keyword = item newkeys.pagetitle = keys db.session.add(newkeys) page = int(page) + 1 keys = keys.replace('至', '_').replace('畫', '') if '_' in keys: ks = keys.split('_') keys = ks[len(ks) - 1] resp_data = dict( page='setkeys', thispage=page if page else '5353', thiskey='', thiskeys=keys if keys else '', types=types, name='目录索引创建' ) return render_template('input.html', **resp_data)
def testDelete(self): keys = Keys() entity = keys.new() expected = 'DELETE FROM keys WHERE name = ?' self.assertEqual(keys._generate_delete_query(entity.name), expected)
def testTableDefinition(self): keys = Keys() expected = 'CREATE TABLE keys (name TEXT PRIMARY KEY,key TEXT)' self.assertEqual(str(keys.table_definition()), expected)
def test_GenerateSelectQuery(self): keys = Keys() expected = 'SELECT * FROM keys' self.assertEqual(keys._generate_select_query(), expected)
def testNew(self): keys = Keys() self.assertIsInstance(keys.new(), Key) e = keys.new(name="lol") self.assertEqual(e.name, 'lol')
def testFirst(self): keys = Keys() self.assertEqual(keys.first(), None) entity = keys.new() keys.add(entity, persist=False) self.assertEqual(keys.first(), entity)