From 1298f15b627ca1034edacadac3eea63aeb546bfc Mon Sep 17 00:00:00 2001 From: Martin Edenhofer Date: Tue, 7 Apr 2015 01:33:22 +0200 Subject: [PATCH] Improved attachment search. --- test/fixtures/es-normal.txt | 2 +- test/fixtures/es-pdf1.pdf | Bin 0 -> 7822 bytes test/integration/elasticsearch_test.rb | 13 +++++++------ 3 files changed, 8 insertions(+), 7 deletions(-) create mode 100644 test/fixtures/es-pdf1.pdf diff --git a/test/fixtures/es-normal.txt b/test/fixtures/es-normal.txt index 10f46ec67..0b60b1a2d 100644 --- a/test/fixtures/es-normal.txt +++ b/test/fixtures/es-normal.txt @@ -1 +1 @@ -some normal text +some normal text66 diff --git a/test/fixtures/es-pdf1.pdf b/test/fixtures/es-pdf1.pdf new file mode 100644 index 0000000000000000000000000000000000000000..1ed3a64ac00252a750d0adbb2514386cff5d6319 GIT binary patch literal 7822 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 HA_Mpz$LG{< literal 0 HcmV?d00001 diff --git a/test/integration/elasticsearch_test.rb b/test/integration/elasticsearch_test.rb index 2a91883bb..efaafb8b5 100644 --- a/test/integration/elasticsearch_test.rb +++ b/test/integration/elasticsearch_test.rb @@ -128,11 +128,12 @@ class ElasticsearchTest < ActiveSupport::TestCase ) # add attachments which should get index / .pdf + # "Zammad Test77" Store.add( :object => 'Ticket::Article', :o_id => article1.id, - :data => File.read("#{Rails.root.to_s}/test/fixtures/test1.pdf"), - :filename => 'test1.pdf', + :data => File.read("#{Rails.root.to_s}/test/fixtures/es-pdf1.pdf"), + :filename => 'es-pdf1.pdf', :preferences => {}, :created_by_id => 1, ) @@ -245,7 +246,7 @@ class ElasticsearchTest < ActiveSupport::TestCase # search for indexed attachment result = Ticket.search( :current_user => agent, - :query => 'some AND normal AND text', + :query => '"some normal text66"', :limit => 15, ) assert(result[0], 'record 1') @@ -253,7 +254,7 @@ class ElasticsearchTest < ActiveSupport::TestCase result = Ticket.search( :current_user => agent, - :query => 'otrs.org', + :query => 'test77', :limit => 15, ) assert(result[0], 'record 1') @@ -263,14 +264,14 @@ class ElasticsearchTest < ActiveSupport::TestCase # search for not indexed attachment result = Ticket.search( :current_user => agent, - :query => 'some AND too AND big AND text', + :query => '"some too big text"', :limit => 15, ) assert(!result[0], 'record 1') result = Ticket.search( :current_user => agent, - :query => 'Old AND programmers AND never AND die', + :query => '"Old programmers never die"', :limit => 15, ) assert(!result[0], 'record 1')