Пример #1
0
    def handle(self, *args, **options):

        group_name = options['name']
        fname = options["file"]

        group, flag = models.EmailGroup.objects.get_or_create(name=group_name)
        if flag:
            logger.info(f"Created group.name={group}")

        stream = csv.DictReader(open(fname, 'rU'))

        before_count = models.EmailSubscription.objects.all().count()

        for no, row in enumerate(stream):
            email, name = row.get("Email"), row.get("Name")
            if email:
                auth.add_subscription(email=email, name=name, group=group)
            else:
                msg = f'Invalid email at line: {no+1}'
                logger.error(msg)

        after_count = models.Subscription.objects.all().count()

        logger.info(
            f"Added {after_count-before_count} new subscriptions to group={group_name}"
        )
        logger.info(f"Group={group_name} contains {after_count} subscriptions")
Пример #2
0
    def test_add_subs(self):
        "Test adding subscription using auth"

        group = models.EmailGroup()
        group.save()
        auth.add_subscription(email="*****@*****.**",
                              group=group,
                              name='tested')