def test_reviews_model_stats(self): def _got_review_stats_changed_signal(): self._i_am_refreshed = True # get the model model = ReviewsListModel() self._i_am_refreshed = False model.reviewStatsChanged.connect(_got_review_stats_changed_signal) model.refreshReviewStats() # ensure the signal got send self.assertTrue(self._i_am_refreshed) del self._i_am_refreshed
def test_reviews_model_details(self): SUMMARY_COLUMN = 0 # get the model model = ReviewsListModel() # ensure we start with a empty model by default self.assertEqual(model.rowCount(), 0) # fetch some reviews and ensure its not random random.seed(1) model.getReviews("software-center") time.sleep(0.1) self._p() # check the results self.assertEqual(model.rowCount(), 17) summaries = [] for i in range(model.rowCount()): index = model.index(i, SUMMARY_COLUMN) role = SUMMARY_COLUMN summaries.append(model.data(index, role)) # ensure the summaries are thre self.assertEqual(summaries[0], "Medium") self.assertEqual(summaries[4], "Cool") # test clear model.clear() self.assertEqual(model.rowCount(), 0)