Enhanced tests with different ticket hooks.
This commit is contained in:
parent
9577d7aa05
commit
939e268151
1 changed files with 76 additions and 0 deletions
|
@ -32,6 +32,12 @@ class EmailProcessFollowUpTest < ActiveSupport::TestCase
|
||||||
To: customer@example.com
|
To: customer@example.com
|
||||||
Subject: #{ticket.subject_build('some new subject')}
|
Subject: #{ticket.subject_build('some new subject')}
|
||||||
|
|
||||||
|
Some Text"
|
||||||
|
|
||||||
|
email_raw_string_other_subject = "From: me@example.com
|
||||||
|
To: customer@example.com
|
||||||
|
Subject: other subject #{Setting.get('ticket_hook')}#{ticket.number}
|
||||||
|
|
||||||
Some Text"
|
Some Text"
|
||||||
|
|
||||||
email_raw_string_body = "From: me@example.com
|
email_raw_string_body = "From: me@example.com
|
||||||
|
@ -88,6 +94,10 @@ no reference "
|
||||||
ticket_p, article_p, user_p = Channel::EmailParser.new.process({}, email_raw_string_subject)
|
ticket_p, article_p, user_p = Channel::EmailParser.new.process({}, email_raw_string_subject)
|
||||||
assert_equal(ticket.id, ticket_p.id)
|
assert_equal(ticket.id, ticket_p.id)
|
||||||
|
|
||||||
|
travel 1.second
|
||||||
|
ticket_p, article_p, user_p = Channel::EmailParser.new.process({}, email_raw_string_other_subject)
|
||||||
|
assert_equal(ticket.id, ticket_p.id)
|
||||||
|
|
||||||
travel 1.second
|
travel 1.second
|
||||||
ticket_p, article_p, user_p = Channel::EmailParser.new.process({}, email_raw_string_body)
|
ticket_p, article_p, user_p = Channel::EmailParser.new.process({}, email_raw_string_body)
|
||||||
assert_equal(ticket.id, ticket_p.id)
|
assert_equal(ticket.id, ticket_p.id)
|
||||||
|
@ -110,6 +120,10 @@ no reference "
|
||||||
ticket_p, article_p, user_p = Channel::EmailParser.new.process({}, email_raw_string_subject)
|
ticket_p, article_p, user_p = Channel::EmailParser.new.process({}, email_raw_string_subject)
|
||||||
assert_equal(ticket.id, ticket_p.id)
|
assert_equal(ticket.id, ticket_p.id)
|
||||||
|
|
||||||
|
travel 1.second
|
||||||
|
ticket_p, article_p, user_p = Channel::EmailParser.new.process({}, email_raw_string_other_subject)
|
||||||
|
assert_equal(ticket.id, ticket_p.id)
|
||||||
|
|
||||||
travel 1.second
|
travel 1.second
|
||||||
ticket_p, article_p, user_p = Channel::EmailParser.new.process({}, email_raw_string_body)
|
ticket_p, article_p, user_p = Channel::EmailParser.new.process({}, email_raw_string_body)
|
||||||
assert_not_equal(ticket.id, ticket_p.id)
|
assert_not_equal(ticket.id, ticket_p.id)
|
||||||
|
@ -132,6 +146,10 @@ no reference "
|
||||||
ticket_p, article_p, user_p = Channel::EmailParser.new.process({}, email_raw_string_subject)
|
ticket_p, article_p, user_p = Channel::EmailParser.new.process({}, email_raw_string_subject)
|
||||||
assert_equal(ticket.id, ticket_p.id)
|
assert_equal(ticket.id, ticket_p.id)
|
||||||
|
|
||||||
|
travel 1.second
|
||||||
|
ticket_p, article_p, user_p = Channel::EmailParser.new.process({}, email_raw_string_other_subject)
|
||||||
|
assert_equal(ticket.id, ticket_p.id)
|
||||||
|
|
||||||
travel 1.second
|
travel 1.second
|
||||||
ticket_p, article_p, user_p = Channel::EmailParser.new.process({}, email_raw_string_body)
|
ticket_p, article_p, user_p = Channel::EmailParser.new.process({}, email_raw_string_body)
|
||||||
assert_not_equal(ticket.id, ticket_p.id)
|
assert_not_equal(ticket.id, ticket_p.id)
|
||||||
|
@ -154,6 +172,10 @@ no reference "
|
||||||
ticket_p, article_p, user_p = Channel::EmailParser.new.process({}, email_raw_string_subject)
|
ticket_p, article_p, user_p = Channel::EmailParser.new.process({}, email_raw_string_subject)
|
||||||
assert_equal(ticket.id, ticket_p.id)
|
assert_equal(ticket.id, ticket_p.id)
|
||||||
|
|
||||||
|
travel 1.second
|
||||||
|
ticket_p, article_p, user_p = Channel::EmailParser.new.process({}, email_raw_string_other_subject)
|
||||||
|
assert_equal(ticket.id, ticket_p.id)
|
||||||
|
|
||||||
travel 1.second
|
travel 1.second
|
||||||
ticket_p, article_p, user_p = Channel::EmailParser.new.process({}, email_raw_string_body)
|
ticket_p, article_p, user_p = Channel::EmailParser.new.process({}, email_raw_string_body)
|
||||||
assert_not_equal(ticket.id, ticket_p.id)
|
assert_not_equal(ticket.id, ticket_p.id)
|
||||||
|
@ -172,6 +194,60 @@ no reference "
|
||||||
travel_back
|
travel_back
|
||||||
end
|
end
|
||||||
|
|
||||||
|
test 'process with follow up check with different ticket hook' do
|
||||||
|
|
||||||
|
setting_orig = Setting.get('ticket_hook')
|
||||||
|
Setting.set('ticket_hook', 'VD-Ticket#')
|
||||||
|
|
||||||
|
ticket = Ticket.create(
|
||||||
|
title: 'follow up check ticket hook',
|
||||||
|
group: Group.lookup(name: 'Users'),
|
||||||
|
customer_id: 2,
|
||||||
|
state: Ticket::State.lookup(name: 'new'),
|
||||||
|
priority: Ticket::Priority.lookup(name: '2 normal'),
|
||||||
|
updated_by_id: 1,
|
||||||
|
created_by_id: 1,
|
||||||
|
)
|
||||||
|
article = Ticket::Article.create(
|
||||||
|
ticket_id: ticket.id,
|
||||||
|
from: 'some_sender@example.com',
|
||||||
|
to: 'some_recipient@example.com',
|
||||||
|
subject: 'follow up check',
|
||||||
|
message_id: '<20150830145601.30.608882.123123@edenhofer.zammad.com>',
|
||||||
|
body: 'some message article',
|
||||||
|
internal: false,
|
||||||
|
sender: Ticket::Article::Sender.lookup(name: 'Agent'),
|
||||||
|
type: Ticket::Article::Type.lookup(name: 'email'),
|
||||||
|
updated_by_id: 1,
|
||||||
|
created_by_id: 1,
|
||||||
|
)
|
||||||
|
|
||||||
|
email_raw_string_subject = "From: me@example.com
|
||||||
|
To: customer@example.com
|
||||||
|
Subject: #{ticket.subject_build('some new subject')}
|
||||||
|
|
||||||
|
Some Text"
|
||||||
|
|
||||||
|
email_raw_string_other_subject = "From: me@example.com
|
||||||
|
To: customer@example.com
|
||||||
|
Subject: Aw: RE: other subject [#{Setting.get('ticket_hook')}#{ticket.number}]
|
||||||
|
|
||||||
|
Some Text"
|
||||||
|
|
||||||
|
travel 1.second
|
||||||
|
ticket_p, article_p, user_p = Channel::EmailParser.new.process({}, email_raw_string_subject)
|
||||||
|
assert_equal(ticket.id, ticket_p.id)
|
||||||
|
|
||||||
|
travel 1.second
|
||||||
|
ticket_p, article_p, user_p = Channel::EmailParser.new.process({}, email_raw_string_other_subject)
|
||||||
|
assert_equal(ticket.id, ticket_p.id)
|
||||||
|
|
||||||
|
travel_back
|
||||||
|
|
||||||
|
Setting.set('ticket_hook', setting_orig)
|
||||||
|
|
||||||
|
end
|
||||||
|
|
||||||
test 'process with follow up check with two external reference headers' do
|
test 'process with follow up check with two external reference headers' do
|
||||||
|
|
||||||
setting_orig = Setting.get('postmaster_follow_up_search_in')
|
setting_orig = Setting.get('postmaster_follow_up_search_in')
|
||||||
|
|
Loading…
Reference in a new issue