trabajo-afectivo/spec/models/ticket/overviews_spec.rb

38 lines
1.5 KiB
Ruby
Raw Normal View History

require 'rails_helper'
RSpec.describe Ticket::Overviews do
describe '#index' do
# https://github.com/zammad/zammad/issues/1769
it 'does not return multiple results for a single ticket' do
user = create(:user)
source_ticket = create(:ticket, customer: user, created_by_id: user.id)
source_ticket2 = create(:ticket, customer: user, created_by_id: user.id)
# create some articles
create(:ticket_article, ticket_id: source_ticket.id, from: 'asdf1@blubselector.de', created_by_id: user.id)
create(:ticket_article, ticket_id: source_ticket.id, from: 'asdf2@blubselector.de', created_by_id: user.id)
create(:ticket_article, ticket_id: source_ticket.id, from: 'asdf3@blubselector.de', created_by_id: user.id)
create(:ticket_article, ticket_id: source_ticket2.id, from: 'asdf3@blubselector.de', created_by_id: user.id)
create(:ticket_article, ticket_id: source_ticket2.id, from: 'asdf4@blubselector.de', created_by_id: user.id)
create(:ticket_article, ticket_id: source_ticket2.id, from: 'asdf5@blubselector.de', created_by_id: user.id)
condition = {
'article.from' => {
operator: 'contains',
value: 'blubselector.de',
},
}
overview = create(:overview, condition: condition)
result = Ticket::Overviews.index(user)
result = result.select { |x| x[:overview][:name] == 'My Factory Tickets' }
expect(result.count).to be == 1
expect(result[0][:count]).to be == 2
expect(result[0][:tickets].count).to be == 2
end
end
end