Example #1
0
 def testLoadSaveViewProperties(self):
     # Make sure the database contains categories
     self.db.save_category(self.c1)
     self.db.save_category(self.c2)
     # Set up a view properties object that simulates having selected a
     # specific period and hidden one category
     vp = ViewProperties()
     vp.set_category_visible(self.c1, False)
     start = datetime(2010, 3, 23)
     end = datetime(2010, 3, 24)
     tp = TimePeriod(self.db.get_time_type(), start, end)
     vp.displayed_period = tp
     # Save these properties and assert that the database fields are written
     # correctly
     self.db.save_view_properties(vp)
     self.assertEquals(self.db.displayed_period, tp)
     self.assertEquals(self.db.hidden_categories, [self.c1])
     # Load view properties from db simulating that this db was just loaded
     # into memory and the view is being configured
     new_vp = ViewProperties()
     self.db.load_view_properties(new_vp)
     self.assertFalse(new_vp.category_visible(self.c1))
     self.assertTrue(new_vp.category_visible(self.c2))
     self.assertEquals(new_vp.displayed_period, self.db.displayed_period)
     # Assert virtual _save method called: 2 save categories, 1 save view
     # properties
     self.assertEquals(self.db._save.call_count, 3)
 def testLoadSaveViewProperties(self):
     # Make sure the database contains categories
     self.db.save_category(self.c1)
     self.db.save_category(self.c2)
     # Set up a view properties object that simulates having selected a
     # specific period and hidden one category
     vp = ViewProperties()
     vp.set_category_visible(self.c1, False)
     start = datetime(2010, 3, 23)
     end = datetime(2010, 3, 24)
     tp = TimePeriod(self.db.get_time_type(), start, end)
     vp.displayed_period = tp
     # Save these properties and assert that the database fields are written
     # correctly
     self.db.save_view_properties(vp)
     self.assertEquals(self.db.displayed_period, tp)
     self.assertEquals(self.db.hidden_categories, [self.c1])
     # Load view properties from db simulating that this db was just loaded
     # into memory and the view is being configured
     new_vp = ViewProperties()
     self.db.load_view_properties(new_vp)
     self.assertFalse(new_vp.category_visible(self.c1))
     self.assertTrue(new_vp.category_visible(self.c2))
     self.assertEquals(new_vp.displayed_period, self.db.displayed_period)
     # Assert virtual _save method called: 2 save categories, 1 save view
     # properties
     self.assertEquals(self.db._save.call_count, 3)
Example #3
0
 def testRead090File(self):
     self.writeContentToTmpFile(CONTENT_090)
     app = wx.PySimpleApp()  # Needed for graphics functions to parse icon
     db = db_open(self.tmp_path)
     # Assert converted to xml db
     self.assertTrue(isinstance(db, XmlTimeline))
     # Assert events correctly loaded
     events = db.get_all_events()
     self.assertEquals(len(events), 2)
     for event in events:
         self.assertTrue(event.has_id())
         if event.text == "Tennis":
             self.assertEquals(event.time_period.start_time,
                               datetime(2010, 5, 2, 9, 0, 0))
             self.assertEquals(event.time_period.end_time,
                               datetime(2010, 5, 2, 9, 0, 0))
             self.assertEquals(event.category.name, "Private")
             self.assertEquals(event.get_data("description"),
                               "Med Kristoffer.")
             self.assertEquals(event.get_data("icon"), None)
         elif event.text == "Konferens":
             self.assertEquals(event.time_period.start_time,
                               datetime(2010, 5, 5, 0, 0, 0))
             self.assertEquals(event.time_period.end_time,
                               datetime(2010, 5, 8, 0, 0, 0))
             self.assertEquals(event.category.name, "Work")
             self.assertEquals(event.get_data("description"), None)
             self.assertFalse(event.get_data("icon") is None)
         else:
             self.fail("Unknown event.")
     # Assert that correct view properties are loaded (category visibility
     # checked later)
     vp = ViewProperties()
     db.load_view_properties(vp)
     self.assertEquals(vp.displayed_period.start_time,
                       datetime(2010, 4, 27, 21, 54, 54))
     self.assertEquals(vp.displayed_period.end_time,
                       datetime(2010, 5, 13, 6, 33, 18))
     # Assert categories correctly loaded
     categories = db.get_categories()
     self.assertEquals(len(categories), 3)
     for cat in categories:
         self.assertTrue(cat.has_id())
         if cat.name == "Work":
             self.assertEquals(cat.color, (255, 0, 0))
             self.assertTrue(vp.category_visible(cat))
             self.assertEquals(cat.parent, None)
         elif cat.name == "Private":
             self.assertEquals(cat.color, (0, 0, 255))
             self.assertTrue(vp.category_visible(cat))
             self.assertEquals(cat.parent, None)
         elif cat.name == "Hidden":
             self.assertEquals(cat.color, (0, 0, 0))
             self.assertFalse(vp.category_visible(cat))
             self.assertEquals(cat.parent, None)
         else:
             self.fail("Unknown category.")
Example #4
0
 def testRead090File(self):
     self.writeContentToTmpFile(CONTENT_090)
     app = wx.PySimpleApp() # Needed for graphics functions to parse icon
     db = db_open(self.tmp_path)
     # Assert converted to xml db
     self.assertTrue(isinstance(db, XmlTimeline))
     # Assert events correctly loaded
     events = db.get_all_events()
     self.assertEquals(len(events), 2)
     for event in events:
         self.assertTrue(event.has_id())
         if event.text == "Tennis":
             self.assertEquals(event.time_period.start_time,
                               datetime(2010, 5, 2, 9, 0, 0))
             self.assertEquals(event.time_period.end_time,
                               datetime(2010, 5, 2, 9, 0, 0))
             self.assertEquals(event.category.name, "Private")
             self.assertEquals(event.get_data("description"), "Med Kristoffer.")
             self.assertEquals(event.get_data("icon"), None)
         elif event.text == "Konferens":
             self.assertEquals(event.time_period.start_time,
                               datetime(2010, 5, 5, 0, 0, 0))
             self.assertEquals(event.time_period.end_time,
                               datetime(2010, 5, 8, 0, 0, 0))
             self.assertEquals(event.category.name, "Work")
             self.assertEquals(event.get_data("description"), None)
             self.assertFalse(event.get_data("icon") is None)
         else:
             self.fail("Unknown event.")
     # Assert that correct view properties are loaded (category visibility
     # checked later)
     vp = ViewProperties()
     db.load_view_properties(vp)
     self.assertEquals(vp.displayed_period.start_time,
                       datetime(2010, 4, 27, 21, 54, 54))
     self.assertEquals(vp.displayed_period.end_time,
                       datetime(2010, 5, 13, 6, 33, 18))
     # Assert categories correctly loaded
     categories = db.get_categories()
     self.assertEquals(len(categories), 3)
     for cat in categories:
         self.assertTrue(cat.has_id())
         if cat.name == "Work":
             self.assertEquals(cat.color, (255, 0, 0))
             self.assertTrue(vp.category_visible(cat))
             self.assertEquals(cat.parent, None)
         elif cat.name == "Private":
             self.assertEquals(cat.color, (0, 0, 255))
             self.assertTrue(vp.category_visible(cat))
             self.assertEquals(cat.parent, None)
         elif cat.name == "Hidden":
             self.assertEquals(cat.color, (0, 0, 0))
             self.assertFalse(vp.category_visible(cat))
             self.assertEquals(cat.parent, None)
         else:
             self.fail("Unknown category.")
Example #5
0
 def testGetSetHiddenCategories(self):
     # Assert that we cannot include categories not in the db
     self.assertRaises(ValueError, self.db._set_hidden_categories, [self.c1])
     self.db._set_hidden_categories([])
     self.db.save_category(self.c1)
     self.db.save_category(self.c2)
     self.db._set_hidden_categories([self.c1])
     # Assert that the returned list is the same
     self.assertEquals(self.db._get_hidden_categories(), [self.c1])
     # Assert that category visibility information is correctly written to
     # ViewProperties
     vp = ViewProperties()
     self.db.load_view_properties(vp)
     self.assertFalse(vp.category_visible(self.c1))
     self.assertTrue(vp.category_visible(self.c2))
 def testGetSetHiddenCategories(self):
     # Assert that we cannot include categories not in the db
     self.assertRaises(ValueError, self.db._set_hidden_categories,
                       [self.c1])
     self.db._set_hidden_categories([])
     self.db.save_category(self.c1)
     self.db.save_category(self.c2)
     self.db._set_hidden_categories([self.c1])
     # Assert that the returned list is the same
     self.assertEquals(self.db._get_hidden_categories(), [self.c1])
     # Assert that category visibility information is correctly written to
     # ViewProperties
     vp = ViewProperties()
     self.db.load_view_properties(vp)
     self.assertFalse(vp.category_visible(self.c1))
     self.assertTrue(vp.category_visible(self.c2))
Example #7
0
 def testRead010File(self):
     self.writeContentToTmpFile(CONTENT_010)
     db = db_open(self.tmp_path)
     # Assert converted to xml db
     self.assertTrue(isinstance(db, XmlTimeline))
     # Assert event correctly loaded
     events = db.get_all_events()
     self.assertEquals(len(events), 1)
     event = events[0]
     self.assertTrue(event.has_id())
     self.assertEquals(event.text, "Event 1")
     self.assertEquals(event.time_period.start_time,
                       datetime(2009, 11, 4, 22, 52, 0))
     self.assertEquals(event.time_period.end_time,
                       datetime(2009, 11, 11, 22, 52, 0))
     self.assertEquals(event.category.name, "Category 1")
     self.assertEquals(event.get_data("description"), None)
     self.assertEquals(event.get_data("icon"), None)
     # Assert that correct view properties are loaded (category visibility
     # checked later)
     vp = ViewProperties()
     db.load_view_properties(vp)
     self.assertEquals(vp.displayed_period.start_time,
                       datetime(2009, 10, 17, 22, 38, 32))
     self.assertEquals(vp.displayed_period.end_time,
                       datetime(2009, 12, 2, 16, 22, 4))
     # Assert categories correctly loaded
     categories = db.get_categories()
     self.assertEquals(len(categories), 3)
     for cat in categories:
         self.assertTrue(cat.has_id())
         if cat.name == "Category 1":
             self.assertEquals(cat.color, (188, 129, 224))
             self.assertTrue(vp.category_visible(cat))
             self.assertEquals(cat.parent, None)
         elif cat.name == "Category 2":
             self.assertEquals(cat.color, (255, 165, 0))
             self.assertTrue(vp.category_visible(cat))
             self.assertEquals(cat.parent, None)
         elif cat.name == "Category 3":
             self.assertEquals(cat.color, (173, 216, 230))
             self.assertFalse(vp.category_visible(cat))
             self.assertEquals(cat.parent, None)
         else:
             self.fail("Unknown category.")
Example #8
0
 def testRead010File(self):
     self.writeContentToTmpFile(CONTENT_010)
     db = db_open(self.tmp_path)
     # Assert converted to xml db
     self.assertTrue(isinstance(db, XmlTimeline))
     # Assert event correctly loaded
     events = db.get_all_events()
     self.assertEquals(len(events), 1)
     event = events[0]
     self.assertTrue(event.has_id())
     self.assertEquals(event.text, "Event 1")
     self.assertEquals(event.time_period.start_time,
                       datetime(2009, 11, 4, 22, 52, 0))
     self.assertEquals(event.time_period.end_time,
                       datetime(2009, 11, 11, 22, 52, 0))
     self.assertEquals(event.category.name, "Category 1")
     self.assertEquals(event.get_data("description"), None)
     self.assertEquals(event.get_data("icon"), None)
     # Assert that correct view properties are loaded (category visibility
     # checked later)
     vp = ViewProperties()
     db.load_view_properties(vp)
     self.assertEquals(vp.displayed_period.start_time,
                       datetime(2009, 10, 17, 22, 38, 32))
     self.assertEquals(vp.displayed_period.end_time,
                       datetime(2009, 12, 2, 16, 22, 4))
     # Assert categories correctly loaded
     categories = db.get_categories()
     self.assertEquals(len(categories), 3)
     for cat in categories:
         self.assertTrue(cat.has_id())
         if cat.name == "Category 1":
             self.assertEquals(cat.color, (188, 129, 224))
             self.assertTrue(vp.category_visible(cat))
             self.assertEquals(cat.parent, None)
         elif cat.name == "Category 2":
             self.assertEquals(cat.color, (255, 165, 0))
             self.assertTrue(vp.category_visible(cat))
             self.assertEquals(cat.parent, None)
         elif cat.name == "Category 3":
             self.assertEquals(cat.color, (173, 216, 230))
             self.assertFalse(vp.category_visible(cat))
             self.assertEquals(cat.parent, None)
         else:
             self.fail("Unknown category.")
 def _assert_re_read_db_same(self, db):
     # Assert event correctly loaded
     events = db.get_all_events()
     self.assertEquals(len(events), 1)
     event = events[0]
     self.assertEquals(event.text, "Event 1")
     self.assertEquals(event.time_period.start_time, datetime(2010, 3, 3))
     self.assertEquals(event.time_period.end_time, datetime(2010, 3, 6))
     self.assertEquals(event.category.name, "Category 1")
     self.assertEquals(event.get_data("description"),
                       u"The <b>first</b> event åäö.")
     self.assertEquals(event.get_data("alert"),
                       (datetime(2012, 12, 31), "Time to go"))
     self.assertEquals(event.get_data("icon"), None)
     # Assert that correct view properties are loaded (category visibility
     # checked later)
     vp = ViewProperties()
     db.load_view_properties(vp)
     self.assertEquals(vp.displayed_period.start_time, datetime(2010, 3, 1))
     self.assertEquals(vp.displayed_period.end_time, datetime(2010, 4, 1))
     # Assert categories correctly loaded
     categories = db.get_categories()
     self.assertEquals(len(categories), 3)
     for cat in categories:
         self.assertTrue(cat.has_id())
         if cat.name == "Category 1":
             self.assertEquals(cat.color, (255, 0, 0))
             self.assertEquals(cat.font_color, (0, 0, 255))
             self.assertTrue(vp.category_visible(cat))
             self.assertEquals(cat.parent, None)
         elif cat.name == "Category 2":
             self.assertEquals(cat.color, (0, 255, 0))
             self.assertTrue(vp.category_visible(cat))
             self.assertEquals(cat.parent.name, "Category 1")
         elif cat.name == "Category 3":
             self.assertEquals(cat.color, (0, 0, 255))
             self.assertFalse(vp.category_visible(cat))
             self.assertEquals(cat.parent.name, "Category 2")
         else:
             self.fail("Unknown category.")
Example #10
0
 def _assert_re_read_db_same(self, db):
     # Assert event correctly loaded
     events = db.get_all_events()
     self.assertEquals(len(events), 1)
     event = events[0]
     self.assertEquals(event.text, "Event 1")
     self.assertEquals(event.time_period.start_time, datetime(2010, 3, 3))
     self.assertEquals(event.time_period.end_time, datetime(2010, 3, 6))
     self.assertEquals(event.category.name, "Category 1")
     self.assertEquals(event.get_data("description"), u"The <b>first</b> event åäö.")
     self.assertEquals(event.get_data("alert"), (datetime(2012, 12, 31), "Time to go"))
     self.assertEquals(event.get_data("icon"), None)
     # Assert that correct view properties are loaded (category visibility
     # checked later)
     vp = ViewProperties()
     db.load_view_properties(vp)
     self.assertEquals(vp.displayed_period.start_time, datetime(2010, 3, 1))
     self.assertEquals(vp.displayed_period.end_time, datetime(2010, 4, 1))
     # Assert categories correctly loaded
     categories = db.get_categories()
     self.assertEquals(len(categories), 3)
     for cat in categories:
         self.assertTrue(cat.has_id())
         if cat.name == "Category 1":
             self.assertEquals(cat.color, (255, 0, 0))
             self.assertEquals(cat.font_color, (0, 0, 255))
             self.assertTrue(vp.category_visible(cat))
             self.assertEquals(cat.parent, None)
         elif cat.name == "Category 2":
             self.assertEquals(cat.color, (0, 255, 0))
             self.assertTrue(vp.category_visible(cat))
             self.assertEquals(cat.parent.name, "Category 1")
         elif cat.name == "Category 3":
             self.assertEquals(cat.color, (0, 0, 255))
             self.assertFalse(vp.category_visible(cat))
             self.assertEquals(cat.parent.name, "Category 2")
         else:
             self.fail("Unknown category.")