def test_data(self): sample = Sample(id=1, resolwe=MagicMock()) # test getting data attribute sample.resolwe.data.filter = MagicMock(return_value=['data_1', 'data_2', 'data_3']) self.assertEqual(sample.data, ['data_1', 'data_2', 'data_3']) # test caching data attribute self.assertEqual(sample.data, ['data_1', 'data_2', 'data_3']) self.assertEqual(sample.resolwe.data.filter.call_count, 1) # cache is cleared at update sample._data = ['data'] sample.update() self.assertEqual(sample._data, None) # raising error if sample is not saved sample.id = None with self.assertRaises(ValueError): _ = sample.data
def test_collections(self): sample = Sample(id=1, resolwe=MagicMock()) sample._original_values = {'collections': [1, 2, 3]} # test getting data attribute sample.resolwe.collection.filter = MagicMock( return_value=['collection_1', 'collection_2', 'collection_3']) self.assertEqual(sample.collections, ['collection_1', 'collection_2', 'collection_3']) # test caching data attribute self.assertEqual(sample.collections, ['collection_1', 'collection_2', 'collection_3']) self.assertEqual(sample.resolwe.collection.filter.call_count, 1) # cache is cleared at update sample._collections = ['collection'] sample.update() self.assertEqual(sample._collections, None) # raising error if sample is not saved sample.id = None with self.assertRaises(ValueError): _ = sample.collections