Exemple #1
0
def test_ip_pool():
    me = NoopMassEmail()
    pool = 'abc_group'

    me.set_ip_pool(pool)

    assert me.get_ip_pool() == pool
Exemple #2
0
def test_subject():
    me = NoopMassEmail()
    sub = 'Testing'

    me.set_subject(sub)

    assert me.get_subject() == sub
Exemple #3
0
def test_template_name():
    me = NoopMassEmail()
    template_name = 'test template'

    me.set_template_name(template_name)

    assert me.get_template_name() == template_name
Exemple #4
0
def test_add_recipients():
    '''
    Test that a list of recipients can be added in bulk, assigning a default
    empty dict of merge vars when not provided
    '''

    me = NoopMassEmail()

    me.add_recipients([
        {
            'email': '*****@*****.**',
            'name': 'Some test dude',
            'merge_vars': {'SOMETHING': 'test'},
        },
        {
            'email': '*****@*****.**',
            'name': 'Some test dude',
        },
    ])

    recips = me.get_recipients()

    assert len(recips) == 2

    recips = [x for x in me.get_recipients() if x.get('merge_vars') == {}]

    assert len(recips) == 1
Exemple #5
0
def test_webhook_data():
    me = NoopMassEmail()
    sub = 'Testing'

    me.set_webhook_data(sub)

    assert me.get_webhook_data() == sub
Exemple #6
0
def test_reply_to_addr():
    me = NoopMassEmail()
    addr = '*****@*****.**'

    me.set_reply_to_addr(addr)

    assert me.get_reply_to_addr() == addr
Exemple #7
0
def test_ip_pool():
    me = NoopMassEmail()
    pool = 'abc_group'

    me.set_ip_pool(pool)

    assert me.get_ip_pool() == pool
Exemple #8
0
def test_subject():
    me = NoopMassEmail()
    sub = 'Testing'

    me.set_subject(sub)

    assert me.get_subject() == sub
Exemple #9
0
def test_webhook_data():
    me = NoopMassEmail()
    sub = 'Testing'

    me.set_webhook_data(sub)

    assert me.get_webhook_data() == sub
Exemple #10
0
def test_reply_to_addr():
    me = NoopMassEmail()
    addr = '*****@*****.**'

    me.set_reply_to_addr(addr)

    assert me.get_reply_to_addr() == addr
Exemple #11
0
def test_template_name():
    me = NoopMassEmail()
    template_name = 'test template'

    me.set_template_name(template_name)

    assert me.get_template_name() == template_name
Exemple #12
0
def test_add_recipient():
    me = NoopMassEmail()

    me.add_recipient(name='Tester Dude',
                     email='*****@*****.**',
                     merge_vars={'EXAMPLE': 'A TEST REPLACEMENT'})

    recips = me.get_recipients()

    assert len(recips) == 1

    assert recips[0].get('merge_vars') is not None
Exemple #13
0
def test_validate():
    me = NoopMassEmail()

    with pytest.raises(Exception) as e:
        me.validate()

    assert 'address and subject' in str(e)

    me.set_subject('something')
    me.set_from_addr('*****@*****.**')

    me.validate()
Exemple #14
0
def test_add_recipient():
    me = NoopMassEmail()

    me.add_recipient(
        name='Tester Dude', email='*****@*****.**',
        merge_vars={'EXAMPLE': 'A TEST REPLACEMENT'}
    )

    recips = me.get_recipients()

    assert len(recips) == 1

    assert recips[0].get('merge_vars') is not None
Exemple #15
0
def test_delimiters():
    '''
    By default, we assume the ESP cannot hot-swap variable delimiters the way
    SendGrid can, so we raise NotImplementedError and call it a day.
    '''

    me = NoopMassEmail()

    with pytest.raises(NotImplementedError):
        me.set_variable_delimiters(start='*|', end='|*')

    with pytest.raises(NotImplementedError):
        me.get_variable_delimiters()
Exemple #16
0
def test_can_lazily_add_recipients_and_solidify():
    gen_count = 20

    me = NoopMassEmail()

    me.add_recipients(generate_recipients(gen_count))

    recips = me.get_raw_recipients()

    assert hasattr(recips, '__iter__') and not hasattr(recips, '__len__')

    recips_list = me.solidify_recipients()

    assert len(recips_list) == gen_count
Exemple #17
0
def test_importance():
    me = NoopMassEmail()

    me.set_importance(True)
    assert me.get_importance() is True

    me.set_importance(False)
    assert me.get_importance() is False
Exemple #18
0
def test_validate():
    me = NoopMassEmail()

    with pytest.raises(Exception) as e:
        me.validate()

    assert 'address and subject' in str(e)

    me.set_subject('something')
    me.set_from_addr('*****@*****.**')

    me.validate()
Exemple #19
0
def test_open_tracking():
    me = NoopMassEmail()

    assert not me.get_open_tracking_status()

    me.enable_open_tracking()

    assert me.get_open_tracking_status() is True

    me.disable_open_tracking()

    assert me.get_open_tracking_status() is False
Exemple #20
0
def test_clear_tags():
    me = NoopMassEmail()

    me.add_tags('test', 'mode')

    assert len(me.get_tags()) == 2

    me.clear_tags()

    assert len(me.get_tags()) == 0
Exemple #21
0
def test_clear_global_merge_vars():
    me = NoopMassEmail()

    me.add_global_merge_vars(FIRST='server', SECOND='client')

    me.clear_global_merge_vars()

    assert not me.get_global_merge_vars()
Exemple #22
0
def test_importance():
    me = NoopMassEmail()

    me.set_importance(True)
    assert me.get_importance() is True

    me.set_importance(False)
    assert me.get_importance() is False
Exemple #23
0
def test_add_global_merge_vars():
    me = NoopMassEmail()

    me.add_global_merge_vars(FIRST='server', SECOND_ONE_IS_BEST='client')

    assert len(me.get_global_merge_vars().items()) == 2
    assert 'FIRST' in me.get_global_merge_vars().keys()
    assert 'SECOND_ONE_IS_BEST' in me.get_global_merge_vars().keys()
Exemple #24
0
def test_open_tracking():
    me = NoopMassEmail()

    assert not me.get_open_tracking_status()

    me.enable_open_tracking()

    assert me.get_open_tracking_status() is True

    me.disable_open_tracking()

    assert me.get_open_tracking_status() is False
Exemple #25
0
def test_set_body_and_get_body():
    me = NoopMassEmail()
    msg = '<h1>Hello!</h1>'

    me.set_body(msg)

    assert me.get_body().get(MIMETYPE_HTML) == msg
    assert me.get_body(mimetype=MIMETYPE_HTML) == msg

    with pytest.raises(AttributeError) as e:
        me.get_body(mimetype=MIMETYPE_TEXT)

    assert 'mimetype' in str(e.value)
Exemple #26
0
def test_clear_tags():
    me = NoopMassEmail()

    me.add_tags('test', 'mode')

    assert len(me.get_tags()) == 2

    me.clear_tags()

    assert len(me.get_tags()) == 0
Exemple #27
0
def test_add_recipients():
    '''
    Test that a list of recipients can be added in bulk, assigning a default
    empty dict of merge vars when not provided
    '''

    me = NoopMassEmail()

    me.add_recipients([
        {
            'email': '*****@*****.**',
            'name': 'Some test dude',
            'merge_vars': {
                'SOMETHING': 'test'
            },
        },
        {
            'email': '*****@*****.**',
            'name': 'Some test dude',
        },
    ])

    recips = me.get_recipients()

    assert len(recips) == 2

    recips = [x for x in me.get_recipients() if x.get('merge_vars') == {}]

    assert len(recips) == 1
Exemple #28
0
def test_add_global_merge_vars():
    me = NoopMassEmail()

    me.add_global_merge_vars(FIRST='server', SECOND_ONE_IS_BEST='client')

    assert len(me.get_global_merge_vars().items()) == 2
    assert 'FIRST' in me.get_global_merge_vars().keys()
    assert 'SECOND_ONE_IS_BEST' in me.get_global_merge_vars().keys()
Exemple #29
0
def test_clear_global_merge_vars():
    me = NoopMassEmail()

    me.add_global_merge_vars(FIRST='server', SECOND='client')

    me.clear_global_merge_vars()

    assert not me.get_global_merge_vars()
Exemple #30
0
def test_set_body_and_get_body():
    me = NoopMassEmail()
    msg = '<h1>Hello!</h1>'

    me.set_body(msg)

    assert me.get_body().get(MIMETYPE_HTML) == msg
    assert me.get_body(mimetype=MIMETYPE_HTML) == msg

    with pytest.raises(AttributeError) as e:
        me.get_body(mimetype=MIMETYPE_TEXT)

    assert 'mimetype' in str(e.value)
Exemple #31
0
def test_set_body_with_mimetype():
    '''
    Test that setting a body will set the default (HTML), but this mimetype
    can be overridden with an argument (for, ie. plain text)
    '''
    me = NoopMassEmail()
    msg_text = 'Tester Test'
    msg_html = '<h1>Tester Test HTML</h1>'

    me.set_body(msg_html)
    me.set_body(msg_text, mimetype=MIMETYPE_TEXT)

    assert me.get_body(mimetype=MIMETYPE_HTML) == msg_html
    assert me.get_body(mimetype=MIMETYPE_TEXT) == msg_text
Exemple #32
0
def test_delimiters():
    '''
    By default, we assume the ESP cannot hot-swap variable delimiters the way
    SendGrid can, so we raise NotImplementedError and call it a day.
    '''

    me = NoopMassEmail()

    with pytest.raises(NotImplementedError):
        me.set_variable_delimiters(start='*|', end='|*')

    with pytest.raises(NotImplementedError):
        me.get_variable_delimiters()
Exemple #33
0
def test_can_lazily_add_recipients_and_solidify():
    gen_count = 20

    me = NoopMassEmail()

    me.add_recipients(generate_recipients(gen_count))

    recips = me.get_raw_recipients()

    assert hasattr(recips, '__iter__') and not hasattr(recips, '__len__')

    recips_list = me.solidify_recipients()

    assert len(recips_list) == gen_count
Exemple #34
0
def test_set_body_with_mimetype():
    '''
    Test that setting a body will set the default (HTML), but this mimetype
    can be overridden with an argument (for, ie. plain text)
    '''
    me = NoopMassEmail()
    msg_text = 'Tester Test'
    msg_html = '<h1>Tester Test HTML</h1>'

    me.set_body(msg_html)
    me.set_body(msg_text, mimetype=MIMETYPE_TEXT)

    assert me.get_body(mimetype=MIMETYPE_HTML) == msg_html
    assert me.get_body(mimetype=MIMETYPE_TEXT) == msg_text
Exemple #35
0
def test_no_tags_by_default():
    me = NoopMassEmail()

    assert len(me.get_tags()) == 0
Exemple #36
0
def test_send():
    me = NoopMassEmail()

    with pytest.raises(NotImplementedError):
        me.send()
Exemple #37
0
def test_send():
    me = NoopMassEmail()

    with pytest.raises(NotImplementedError):
        me.send()
Exemple #38
0
def test_instantiatable():
    assert NoopMassEmail()
Exemple #39
0
def test_no_tags_by_default():
    me = NoopMassEmail()

    assert len(me.get_tags()) == 0
Exemple #40
0
def test_no_global_merge_vars_by_default():
    me = NoopMassEmail()

    assert not me.get_global_merge_vars()
Exemple #41
0
def test_no_global_merge_vars_by_default():
    me = NoopMassEmail()

    assert not me.get_global_merge_vars()