def test_filter_factory_multi(self): j = '[{"f_type":"Accept"},{"f_type":"Reject"}]' self.config.filter_json = j f = filter_factory(self.config) test = f.heads self.assertEqual(len(test), 2) self.assertIsInstance(test[0], Accept) self.assertIsInstance(test[1], Reject)
def __init__(self, config, use_shards=True): self.student_filter = filter_factory(config) self.batch_size = config.importer_batch_size self.filename = config.import_filename self.in_file = gcs.open(self.filename) self.reader = csv.reader(self.in_file) self.imported = 0 self.rejected = 0 if use_shards: LOG.info("Checking student shards") StudentShard.init_shards(config) self.shard_gen = StudentShard.circular_shard_generator() else: self.shard_gen = None
def test_filter_factory_match(self): j = """ [ {"f_type":"MatchTag", "tag_name":"foo", "tag_value":"bar", "if_true":{"f_type": "Accept"}, "if_false":{"f_type": "Reject"} } ] """ self.config.filter_json = j f = filter_factory(self.config) instance = f.heads[0] self.assertIsInstance(instance, MatchTag) self.assertIsInstance(instance.if_true, Accept) self.assertIsInstance(instance.if_false, Reject) self.assertEqual(instance.tag_name, "foo") self.assertEqual(instance.tag_value, "bar")
def test_filter_factory_rie(self): j = '[{"f_type":"RejectIfEmpty"}]' self.config.filter_json = j f = filter_factory(self.config) instance = f.heads[0] self.assertIsInstance(instance, RejectIfEmpty)
def test_filter_factory_accept(self): j = '[{"f_type":"Accept"}]' self.config.filter_json = j f = filter_factory(self.config) instance = f.heads[0] self.assertIsInstance(instance, Accept)