def begin(self): history = [] unlocked = {} if self.data_filename: try: data_file = open(self.data_filename, 'rb') except IOError: log.debug("Failed to read achievement data from %s", self.data_filename) else: data = AchievementData.load(data_file) data_file.close() log.info("Loaded achievement data from %s", self.data_filename) history = data.pop('history', history) history.append(data) del history[:-10] unlocked = data.get('achievements.unlocked', unlocked) self.data.setdefault('history', history) self.data.setdefault('achievements.unlocked', unlocked) self.data.setdefault('achievements.new', []) self.data.setdefault('result.tests', []) self.data.setdefault('result.string', '') self.data.setdefault('result.errors', []) self.data.setdefault('result.failures', []) self.data.setdefault('time.start', datetime.now())
def test_load_returns_empty_data_instead_of_eof_error(self): data = AchievementData.load(self.stream) self.assertEqual(data, AchievementData())
def test_load_reads_data_from_stream(self): data = AchievementData.load(self.stream) self.assertEqual(self.data, data)