##// END OF EJS Templates
migration: detach permissions defaults migration from current models....
migration: detach permissions defaults migration from current models. This was causing that latest code was used results in potential problems during migration. Now we use the bound migraiton code that always will perform the same exact migrations independent of the current code changes.

File last commit:

r512:fafa37cf default
r1544:cf0c0eb2 default
Show More
test_mako_emails.py
68 lines | 2.0 KiB | text/x-python | PythonLexer
import collections
import pytest
from rhodecode.lib.utils import PartialRenderer
from rhodecode.model.notification import EmailNotificationModel
def test_get_template_obj(pylonsapp):
template = EmailNotificationModel().get_renderer(
EmailNotificationModel.TYPE_TEST)
assert isinstance(template, PartialRenderer)
def test_render_email(pylonsapp):
kwargs = {}
subject, headers, body, body_plaintext = EmailNotificationModel().render_email(
EmailNotificationModel.TYPE_TEST, **kwargs)
# subject
assert subject == 'Test "Subject" hello "world"'
# headers
assert headers == 'X=Y'
# body plaintext
assert body_plaintext == 'Email Plaintext Body'
# body
assert 'This is a notification ' \
'from RhodeCode. http://test.example.com:80/' in body
assert 'Email Body' in body
def test_render_pr_email(pylonsapp, user_admin):
ref = collections.namedtuple('Ref',
'name, type')(
'fxies123', 'book'
)
pr = collections.namedtuple('PullRequest',
'pull_request_id, title, description, source_ref_parts, source_ref_name, target_ref_parts, target_ref_name')(
200, 'Example Pull Request', 'Desc of PR', ref, 'bookmark', ref, 'Branch')
source_repo = target_repo = collections.namedtuple('Repo',
'type, repo_name')(
'hg', 'pull_request_1')
kwargs = {
'user': '<marcin@rhodecode.com> Marcin Kuzminski',
'pull_request': pr,
'pull_request_commits': [],
'pull_request_target_repo': target_repo,
'pull_request_target_repo_url': 'x',
'pull_request_source_repo': source_repo,
'pull_request_source_repo_url': 'x',
'pull_request_url': 'http://localhost/pr1',
}
subject, headers, body, body_plaintext = EmailNotificationModel().render_email(
EmailNotificationModel.TYPE_PULL_REQUEST, **kwargs)
# subject
assert subject == 'Marcin Kuzminski wants you to review pull request #200: "Example Pull Request"'