def test_getBufferObj_and_setBufferObj(self): projbuf = { 'python': 6, 'tcl': 3, 'ruby': 4, 'lua': 3, 'perl': 4, } Config.setProjectBuffer(projbuf) bufobj = Config.getProjectBuffer() self.assertDictEqual(bufobj, projbuf) Config.setProjectBuffer({}) rec = BaseRecord(1, (u'Food & Drinks', u'Snacks'), u'Cash', u'CHY') recbuf = [ [ '2012-01-03', rec.amount, rec.type[0], rec.type[1], rec.payment, rec.currency, rec.tag, rec.comment ] ] Config.setRecordBuffer(recbuf) bufobj = Config.getRecordBuffer() self.assertListEqual(bufobj, recbuf) Config.setRecordBuffer([])
def test_save_and_setUp_Projects(self): self.expense.setUp({'test':True}) proj1 = Projects.ConsumingProject(9999, date(2012, 1, 1), 3333) proj2 = Projects.ConsumingProject( 999, date(2012, 1, 1), 3333, 'type', u'Food & Drinks' ) self.expense.addProject('proj1', proj1) self.expense.addProject('proj2', proj2) addSampleRecords(self.expense) self.expense.saveProjects() expense2 = Expense() expense2.setUp({'test':True}) self.assertEqual(len(expense2.projects), 2) self.assertDictEqual( expense2.projects['proj1'].export_to_dict(), self.expense.projects['proj1'].export_to_dict() ) self.assertDictEqual( expense2.projects['proj2'].export_to_dict(), self.expense.projects['proj2'].export_to_dict() ) Config.setProjectBuffer(dict())
def test_addRecord(self): addSampleRecords(self.expense) recbuf = Config.getRecordBuffer() self.assertEqual( len(recbuf), 21 ) self.expense.setUp({'test':True}) recbuf = Config.getRecordBuffer() self.assertEqual( len(recbuf), 0 )
def test_setDefault(self): rec = BaseRecord(1, (u'Food & Drinks', u'Snacks'), u'Cash', u'CHY') Config.setDefault(rec) self.assertEqual(Config.obj['Type']['default'], rec.type) self.assertEqual(Config.obj['Payment']['default'], rec.payment) self.assertEqual(Config.obj['Currency']['default'], rec.currency) self.assertEqual(Config.obj['Tag']['default'], rec.tag) # the first item of 'types' should be the default type. self.assertEqual(Config.obj['Type']['type_order'][0], rec.type[0]) self.assertEqual(Config.obj['Payment']['types'][0], rec.payment) self.assertEqual(Config.obj['Currency']['types'][0], rec.currency) self.assertEqual(Config.obj['Tag']['types'][0], rec.tag)
def test_getOptions(self): seq = Config.getOptions('Type') mtypes = [item[0] for item in seq] self.assertListEqual( Config.obj['Type']['type_order'], mtypes )
def test_getDefaults(self): d = Config.getDefaults() self.assertEqual(Config.obj['Type']['default'], d[0]) self.assertEqual(Config.obj['Payment']['default'], d[1]) self.assertEqual(Config.obj['Currency']['default'], d[2]) self.assertEqual(Config.obj['Tag']['default'], d[3])
def test_delOptions(self): Config.delOption('Currency', u'USD') self.assertTrue('USD' not in Config.obj['Currency']['types']) Config.addOption('Currency', u'USD')
def test_addOptions(self): Config.addOption('Tag', u'+1') self.assertTrue('+1' in Config.obj['Tag']['types'])
def test_setInfo(self): Config.setInfo('language', u'cn') self.assertNotEqual( self.obj['BaseInfo']['language'], Config.obj['BaseInfo']['language'] )
def test_getInfo(self): item = Config.getInfo('version') self.assertEqual( Config.obj['BaseInfo']['version'], item )