Commit d05c0c85f33eccb9d72e7ff3d6f502f6f0a5be3a
1 parent
e7b5205f
Exists in
master
and in
8 other branches
Fixing search features
Moving solr specifics to the plugin
Showing
19 changed files
with
566 additions
and
465 deletions
Show diff stats
app/controllers/public/search_controller.rb
... | ... | @@ -105,7 +105,7 @@ class SearchController < PublicController |
105 | 105 | environment.events.by_day(@selected_day) |
106 | 106 | end |
107 | 107 | |
108 | - @scope = date_range ? environment.events.by_range(date_range) : environment.events | |
108 | + @scope = date_range && params[:action] == :events ? environment.events.by_range(date_range) : environment.events | |
109 | 109 | full_text_search |
110 | 110 | |
111 | 111 | events = @searches[@asset][:results] | ... | ... |
app/views/search/events.html.erb
features/browse.feature
features/profile_search.feature
... | ... | @@ -4,8 +4,7 @@ Feature: search inside a profile |
4 | 4 | In order to find stuff from a profile |
5 | 5 | |
6 | 6 | Background: |
7 | - Given the search index is empty | |
8 | - And the following users | |
7 | + Given the following users | |
9 | 8 | | login | name | |
10 | 9 | | joaosilva | Joao Silva | |
11 | 10 | And the following articles | ... | ... |
features/register_enterprise.feature
... | ... | @@ -201,10 +201,6 @@ Feature: register enterprise |
201 | 201 | When I follow "Manage my groups" |
202 | 202 | Then I should not see "My Enterprise" |
203 | 203 | |
204 | - Scenario: a user can see button to register new enterprise | |
205 | - When I am on /assets/enterprises | |
206 | - Then I should see "New enterprise" link | |
207 | - | |
208 | 204 | Scenario: a user cant see button to register new enterprise if enterprise_registration disabled |
209 | 205 | Given feature "enterprise_registration" is disabled on environment |
210 | 206 | When I am on /assets/enterprises | ... | ... |
features/search.feature
... | ... | @@ -4,8 +4,7 @@ Feature: search |
4 | 4 | In order to find stuff |
5 | 5 | |
6 | 6 | Background: |
7 | - Given the search index is empty | |
8 | - And feature "disable_asset_products" is disabled on environment | |
7 | + Given feature "disable_asset_products" is disabled on environment | |
9 | 8 | |
10 | 9 | Scenario: show empty results in all enabled assets |
11 | 10 | Given I go to the search page | ... | ... |
features/search_communities.feature
... | ... | @@ -4,8 +4,7 @@ Feature: search communities |
4 | 4 | In order to find ones that interest me |
5 | 5 | |
6 | 6 | Background: |
7 | - Given the search index is empty | |
8 | - And the following category | |
7 | + Given the following category | |
9 | 8 | | name | |
10 | 9 | | social network | |
11 | 10 | And the following community |
... | ... | @@ -34,82 +33,11 @@ Feature: search communities |
34 | 33 | And I should see "Noosfero Community" within ".only-one-result-box" |
35 | 34 | And I should see Noosfero Community's community image |
36 | 35 | |
37 | - Scenario: search communities by category | |
38 | - Given the following category | |
39 | - | name | | |
40 | - | Software Livre | | |
41 | - And the following community | |
42 | - | identifier | name | category | | |
43 | - | noos-comm | Noosfero Community | software-livre | | |
44 | - When I go to the search communities page | |
45 | - And I fill in "search-input" with "software livre" | |
46 | - And I press "Search" | |
47 | - Then I should see "Noosfero" within "#search-results" | |
48 | - | |
49 | - Scenario: see category facets when searching | |
50 | - Given the following categories as facets | |
51 | - | name | | |
52 | - | Temáticas | | |
53 | - And the following category | |
54 | - | name | parent | | |
55 | - | Software Livre | tematicas | | |
56 | - And the following community | |
57 | - | identifier | name | category | | |
58 | - | linux | Linux Community | software-livre | | |
59 | - When I go to the search communities page | |
60 | - And I fill in "search-input" with "Linux" | |
61 | - And I press "Search" | |
62 | - Then I should see "Temáticas" within "#facets-menu" | |
63 | - | |
64 | 36 | Scenario: find communities without exact query |
65 | 37 | Given the following communities |
66 | 38 | | identifier | name | |
67 | 39 | | luwac | Linux Users Without a Clue | |
68 | 40 | When I go to the search communities page |
69 | - And I fill in "search-input" with "Linux Clue" | |
41 | + And I fill in "search-input" with "Linux Users" | |
70 | 42 | And I press "Search" |
71 | 43 | Then I should see "Linux Users Without a Clue" within "#search-results" |
72 | - | |
73 | - Scenario: filter communities by facet | |
74 | - Given the following categories as facets | |
75 | - | name | | |
76 | - | Temáticas | | |
77 | - And the following category | |
78 | - | name | parent | | |
79 | - | Software Livre | tematicas | | |
80 | - | Big Brother | tematicas | | |
81 | - And the following communities | |
82 | - | identifier | name | category | | |
83 | - | noos-dev | Noosfero Developers | software-livre | | |
84 | - | facebook | Facebook Developers | big-brother | | |
85 | - When I go to the search communities page | |
86 | - And I fill in "search-input" with "Developers" | |
87 | - And I press "Search" | |
88 | - And I follow "Software Livre" within "#facets-menu" | |
89 | - Then I should see "Noosfero Developers" within "#search-results" | |
90 | - And I should not see "Facebook Developers" | |
91 | - # facet should also be de-selectable | |
92 | - When I follow "remove facet" within ".facet-selected" | |
93 | - Then I should see "Facebook Developers" | |
94 | - | |
95 | - Scenario: remember facet filter when searching new query | |
96 | - Given the following categories as facets | |
97 | - | name | | |
98 | - | Temáticas | | |
99 | - And the following category | |
100 | - | name | parent | | |
101 | - | Software Livre | tematicas | | |
102 | - | Other Category | tematicas | | |
103 | - And the following communities | |
104 | - | identifier | name | category | | |
105 | - | noos-dev | Noosfero Developers | software-livre | | |
106 | - | rails-dev | Rails Developers | other-category | | |
107 | - | rails-usr | Rails Users | software-livre | | |
108 | - When I go to the search communities page | |
109 | - And I fill in "search-input" with "Developers" | |
110 | - And I press "Search" | |
111 | - And I follow "Software Livre" within "#facets-menu" | |
112 | - And I fill in "search-input" with "Rails" | |
113 | - And I press "Search" | |
114 | - Then I should see "Rails Users" within "#search-results" | |
115 | - And I should not see "Rails Developers" | ... | ... |
features/search_contents.feature
... | ... | @@ -4,17 +4,13 @@ Feature: search contents |
4 | 4 | In order to find ones that interest me |
5 | 5 | |
6 | 6 | Background: |
7 | - Given the search index is empty | |
8 | - And the following users | |
7 | + Given the following users | |
9 | 8 | | login | name | |
10 | 9 | | joaosilva | Joao Silva | |
11 | 10 | And the following articles |
12 | 11 | | owner | name | body | |
13 | 12 | | joaosilva | bees and butterflies | this is an article about bees and butterflies | |
14 | 13 | | joaosilva | whales and dolphins | this is an article about whales and dolphins | |
15 | - And the following categories as facets | |
16 | - | name | | |
17 | - | Temáticas | | |
18 | 14 | |
19 | 15 | Scenario: show recent content on index |
20 | 16 | When I go to the search articles page |
... | ... | @@ -232,23 +228,8 @@ Feature: search contents |
232 | 228 | | sglaspell | Susan Glaspell | |
233 | 229 | And the article "whales and dolphins" is updated by "Susan Glaspell" |
234 | 230 | When I search contents for "whales" |
235 | - # Then show me the page | |
236 | 231 | Then I should see "by Susan Glaspell at" within ".search-article-author-changes" |
237 | 232 | |
238 | - Scenario: search articles by category | |
239 | - Given the following category | |
240 | - | name | | |
241 | - | Software Livre | | |
242 | - And the following articles | |
243 | - | owner | name | body | category | | |
244 | - | joaosilva | using noosfero | noosfero is a great CMS | software-livre | | |
245 | - When I go to the search articles page | |
246 | - And I fill in "search-input" with "Software" | |
247 | - And I press "Search" | |
248 | - Then I should see "using noosfero" within "#search-results" | |
249 | - And I should not see "bees and butterflies" | |
250 | - And I should not see "whales and dolphins" | |
251 | - | |
252 | 233 | Scenario: show basic info on blog search results |
253 | 234 | Given the following blogs |
254 | 235 | | owner | name | |
... | ... | @@ -284,55 +265,8 @@ Feature: search contents |
284 | 265 | When I search contents for "JSilva" |
285 | 266 | Then I should see "None" within ".search-blog-items" |
286 | 267 | |
287 | - Scenario: see default facets when searching | |
288 | - When I go to the search articles page | |
289 | - And I fill in "search-input" with "bees" | |
290 | - And I press "Search" | |
291 | - Then I should see "Type" within "#facets-menu" | |
292 | - And I should see "Published date" within "#facets-menu" | |
293 | - And I should see "Profile" within "#facets-menu" | |
294 | - And I should see "Categories" within "#facets-menu" | |
295 | - | |
296 | 268 | Scenario: find enterprises without exact query |
297 | 269 | When I go to the search articles page |
298 | - And I fill in "search-input" with "article bees" | |
270 | + And I fill in "search-input" with "bees and" | |
299 | 271 | And I press "Search" |
300 | 272 | Then I should see "bees and butterflies" within "#search-results" |
301 | - | |
302 | - Scenario: filter contents by facet | |
303 | - Given the following categories | |
304 | - | name | parent | | |
305 | - | Software Livre | tematicas | | |
306 | - | Big Brother | tematicas | | |
307 | - And the following articles | |
308 | - | owner | name | body | category | | |
309 | - | joaosilva | noosfero and debian | this is an article about noosfero and debian | software-livre | | |
310 | - | joaosilva | facebook and 1984 | this is an article about facebook and 1984 | big-brother | | |
311 | - When I go to the search articles page | |
312 | - And I fill in "search-input" with "this is an article" | |
313 | - And I press "Search" | |
314 | - # Then show me the page | |
315 | - And I follow "Software Livre" within "#facets-menu" | |
316 | - Then I should see "noosfero and debian" within "#search-results" | |
317 | - And I should not see "facebook and 1984" | |
318 | - # facet should also be de-selectable | |
319 | - When I follow "remove facet" within ".facet-selected" | |
320 | - Then I should see "facebook and 1984" | |
321 | - | |
322 | - Scenario: remember facet filter when searching new query | |
323 | - Given the following category | |
324 | - | name | parent | | |
325 | - | Software Livre | tematicas | | |
326 | - And the following articles | |
327 | - | owner | name | body | category | | |
328 | - | joaosilva | noosfero and debian | this is an article about noosfero and debian | software-livre | | |
329 | - | joaosilva | facebook and 1984 | this is an article about facebook and 1984 | big-brother | | |
330 | - | joaosilva | facebook defense | facebook is not so bad | software-livre | | |
331 | - When I go to the search articles page | |
332 | - And I fill in "search-input" with "this is an article" | |
333 | - And I press "Search" | |
334 | - And I follow "Software Livre" within "#facets-menu" | |
335 | - And I fill in "search-input" with "facebook" | |
336 | - And I press "Search" | |
337 | - Then I should see "facebook defense" within "#search-results" | |
338 | - And I should not see "1984" | ... | ... |
features/search_enterprises.feature
... | ... | @@ -4,14 +4,10 @@ Feature: search enterprises |
4 | 4 | In order to find ones that interest me |
5 | 5 | |
6 | 6 | Background: |
7 | - Given the search index is empty | |
8 | 7 | And the following enterprises |
9 | 8 | | identifier | name | img | |
10 | 9 | | shop1 | Shoes shop | shoes | |
11 | 10 | | shop2 | Fruits shop | fruits | |
12 | - And the following categories as facets | |
13 | - | name | | |
14 | - | Temáticas | | |
15 | 11 | |
16 | 12 | Scenario: show recent enterprises on index |
17 | 13 | Given there are no pending jobs |
... | ... | @@ -44,6 +40,7 @@ Feature: search enterprises |
44 | 40 | | owner | name | body | homepage | |
45 | 41 | | shop1 | Shoes home | This is the <i>homepage</i> of Shoes shop! It has a very long and pretty vague description, just so we can test wether the system will correctly create an excerpt of this text. We should probably talk about shoes. | true | |
46 | 42 | When I search enterprises for "shoes" |
43 | + And I follow "Full" | |
47 | 44 | Then I should see "This is the homepage of" within ".search-enterprise-description" |
48 | 45 | And I should see "about sho..." within ".search-enterprise-description" |
49 | 46 | |
... | ... | @@ -52,114 +49,15 @@ Feature: search enterprises |
52 | 49 | | identifier | name | description | |
53 | 50 | | shop3 | Clothes shop | This <b>clothes</b> shop also sells shoes! This too has a very long and pretty vague description, just so we can test wether the system will correctly create an excerpt of this text. Clothes are a really important part of our lives. | |
54 | 51 | When I search enterprises for "clothes" |
52 | + And I follow "Full" | |
55 | 53 | And I should see "This clothes shop" within ".search-enterprise-description" |
56 | 54 | And I should see "really import..." within ".search-enterprise-description" |
57 | 55 | |
58 | - Scenario: see default facets when searching | |
59 | - When I go to the search enterprises page | |
60 | - And I fill in "search-input" with "shoes" | |
61 | - And I press "Search" | |
62 | - Then I should see "City" within "#facets-menu" | |
63 | - | |
64 | - Scenario: see category facets when searching | |
65 | - When I go to the search enterprises page | |
66 | - And I fill in "search-input" with "shoes" | |
67 | - And I press "Search" | |
68 | - Then I should see "Temáticas" within "#facets-menu" | |
69 | - | |
70 | - Scenario: see region on facets and results | |
71 | - Given the following cities | |
72 | - | name | state | | |
73 | - | Pres. Prudente | SP | | |
74 | - And the following enterprises | |
75 | - | identifier | name | region | | |
76 | - | art-pp | Artesanato PP | Pres. Prudente | | |
77 | - When I go to the search enterprises page | |
78 | - And I fill in "search-input" with "Artesanato" | |
79 | - And I press "Search" | |
80 | - Then I should see "Pres. Prudente" within "#facet-menu-f_region" | |
81 | - And I should see ", SP" within "#facet-menu-f_region" | |
82 | - And I should see "City" within ".search-enterprise-region-label" | |
83 | - And I should see "Pres. Prudente, SP" within ".search-enterprise-region-name" | |
84 | - | |
85 | - Scenario: find enterprise by region | |
86 | - Given the following cities | |
87 | - | name | state | | |
88 | - | Pres. Prudente | SP | | |
89 | - And the following enterprises | |
90 | - | identifier | name | region | | |
91 | - | art-pp | Artesanato PP | Pres. Prudente | | |
92 | - When I go to the search enterprises page | |
93 | - And I fill in "search-input" with "Prudente" | |
94 | - And I press "Search" | |
95 | - Then I should see "Artesanato PP" within "#search-results" | |
96 | - | |
97 | - Scenario: find enterprise by category | |
98 | - Given the following categories | |
99 | - | name | | |
100 | - | Software Livre | | |
101 | - And the following enterprises | |
102 | - | identifier | name | category | | |
103 | - | noosfero | Noosfero | software-livre | | |
104 | - When I go to the search enterprises page | |
105 | - And I fill in "search-input" with "software" | |
106 | - And I press "Search" | |
107 | - Then I should see "Noosfero" within "#search-results" | |
108 | - And I should see "Software Livre" within ".search-enterprise-category" | |
109 | - | |
110 | - Scenario: show category hierarchy on search results | |
111 | - Given the following categories | |
112 | - | name | parent | | |
113 | - | Software Livre | | | |
114 | - | Rails | software-livre | | |
115 | - And the following enterprises | |
116 | - | identifier | name | category | | |
117 | - | noosfero | Noosfero | rails | | |
118 | - When I search enterprises for "Rails" | |
119 | - Then I should see "Software Livre" within ".search-enterprise-category" | |
120 | - And I should see "Rails" within ".search-enterprise-category" | |
121 | - | |
122 | 56 | Scenario: find enterprises without exact query |
123 | 57 | Given the following enterprises |
124 | 58 | | identifier | name | |
125 | 59 | | noosfero | Noosfero Developers Association | |
126 | 60 | When I go to the search enterprises page |
127 | - And I fill in "search-input" with "Noosfero Association" | |
61 | + And I fill in "search-input" with "Noosfero Developers" | |
128 | 62 | And I press "Search" |
129 | 63 | Then I should see "Noosfero Developers Association" within "#search-results" |
130 | - | |
131 | - Scenario: filter enterprises by facet | |
132 | - Given the following category | |
133 | - | name | parent | | |
134 | - | Software Livre | tematicas | | |
135 | - And the following enterprises | |
136 | - | identifier | name | category | | |
137 | - | noosfero | Noosfero Developers | software-livre | | |
138 | - | facebook | Facebook Developers | | | |
139 | - When I go to the search enterprises page | |
140 | - And I fill in "search-input" with "Developers" | |
141 | - And I press "Search" | |
142 | - And I follow "Software Livre" within "#facets-menu" | |
143 | - Then I should see "Noosfero Developers" within "#search-results" | |
144 | - And I should not see "Facebook Developers" | |
145 | - # facet should also be de-selectable | |
146 | - When I follow "remove facet" within ".facet-selected" | |
147 | - Then I should see "Facebook Developers" | |
148 | - | |
149 | - Scenario: remember facet filter when searching new query | |
150 | - Given the following category | |
151 | - | name | parent | | |
152 | - | Software Livre | tematicas | | |
153 | - And the following enterprises | |
154 | - | identifier | name | category | | |
155 | - | noosfero | Noosfero Developers | software-livre | | |
156 | - | rails-dev | Rails Developers | | | |
157 | - | rails-usr | Rails Users | software-livre | | |
158 | - When I go to the search enterprises page | |
159 | - And I fill in "search-input" with "Developers" | |
160 | - And I press "Search" | |
161 | - And I follow "Software Livre" within "#facets-menu" | |
162 | - And I fill in "search-input" with "Rails" | |
163 | - And I press "Search" | |
164 | - Then I should see "Rails Users" within "#search-results" | |
165 | - And I should not see "Rails Developers" | ... | ... |
features/search_people.feature
... | ... | @@ -4,8 +4,7 @@ Feature: search people |
4 | 4 | In order to find ones that interest me |
5 | 5 | |
6 | 6 | Background: |
7 | - Given the search index is empty | |
8 | - And the following users | |
7 | + Given the following users | |
9 | 8 | | login | name | |
10 | 9 | | joaosilva | Joao Silva | |
11 | 10 | | josearaujo | Jose Araujo | |
... | ... | @@ -27,76 +26,11 @@ Feature: search people |
27 | 26 | When I search people for "something unrelated" |
28 | 27 | Then I should see "None" within ".search-results-type-empty" |
29 | 28 | |
30 | - Scenario: see category facets when searching | |
31 | - Given the following categories as facets | |
32 | - | name | | |
33 | - | Temáticas | | |
34 | - When I go to the search people page | |
35 | - And I fill in "search-input" with "joao" | |
36 | - And I press "Search" | |
37 | - Then I should see "Temáticas" within "#facets-menu" | |
38 | - | |
39 | - Scenario: search people by category | |
40 | - Given the following category | |
41 | - | name | | |
42 | - | Software Livre | | |
43 | - And the following users | |
44 | - | login | name | category | | |
45 | - | linus | Linus Torvalds | software-livre | | |
46 | - When I go to the search people page | |
47 | - And I fill in "search-input" with "software livre" | |
48 | - And I press "Search" | |
49 | - Then I should see "Linus Torvalds" within "#search-results" | |
50 | - And I should not see "Joao Silva" | |
51 | - And I should not see "Jose Araujo" | |
52 | - | |
53 | 29 | Scenario: find person without exact query |
54 | 30 | Given the following users |
55 | 31 | | login | name | |
56 | 32 | | jsilva | Joao Adalberto de Oliveira Silva | |
57 | 33 | When I go to the search people page |
58 | - And I fill in "search-input" with "Adalberto Silva" | |
34 | + And I fill in "search-input" with "Adalberto de Oliveira" | |
59 | 35 | And I press "Search" |
60 | 36 | Then I should see "Joao Adalberto de Oliveira Silva" within "#search-results" |
61 | - | |
62 | - Scenario: filter people by facet | |
63 | - Given the following categories as facets | |
64 | - | name | | |
65 | - | Temáticas | | |
66 | - And the following category | |
67 | - | name | parent | | |
68 | - | Software Livre | tematicas | | |
69 | - And the following users | |
70 | - | login | name | category | | |
71 | - | linus | Linus Torvalds | software-livre | | |
72 | - | other | Other Linus | | | |
73 | - When I go to the search people page | |
74 | - And I fill in "search-input" with "Linus" | |
75 | - And I press "Search" | |
76 | - And I follow "Software Livre" within "#facets-menu" | |
77 | - Then I should see "Linus Torvalds" within "#search-results" | |
78 | - And I should not see "Other Linus" | |
79 | - # facet should also be de-selectable | |
80 | - When I follow "remove facet" within ".facet-selected" | |
81 | - Then I should see "Other Linus" | |
82 | - | |
83 | - Scenario: remember facet filter when searching new query | |
84 | - Given the following categories as facets | |
85 | - | name | | |
86 | - | Temáticas | | |
87 | - And the following category | |
88 | - | name | parent | | |
89 | - | Software Livre | tematicas | | |
90 | - And the following users | |
91 | - | login | name | category | | |
92 | - | linus | Linus Torvalds | software-livre | | |
93 | - | rilin | Richard Linus | | | |
94 | - | stall | Richard Stallman | software-livre | | |
95 | - When I go to the search people page | |
96 | - And I fill in "search-input" with "Linus" | |
97 | - And I press "Search" | |
98 | - And I follow "Software Livre" within "#facets-menu" | |
99 | - And I fill in "search-input" with "Richard" | |
100 | - And I press "Search" | |
101 | - Then I should see "Richard Stallman" within "#search-results" | |
102 | - And I should not see "Richard Linus" | ... | ... |
features/search_products.feature
... | ... | @@ -4,8 +4,7 @@ Feature: search products |
4 | 4 | In order to find ones that interest me |
5 | 5 | |
6 | 6 | Background: |
7 | - Given the search index is empty | |
8 | - And feature "disable_asset_products" is disabled on environment | |
7 | + Given feature "disable_asset_products" is disabled on environment | |
9 | 8 | And the following enterprises |
10 | 9 | | identifier | name | |
11 | 10 | | colivre-ent | Colivre | |
... | ... | @@ -22,11 +21,6 @@ Feature: search products |
22 | 21 | Then I should see "wikis consultancy" within "#search-results" |
23 | 22 | And I should see "social networks consultancy" within "#search-results" |
24 | 23 | |
25 | - Scenario: not show pagination and facets on recent products | |
26 | - When I go to the search products page | |
27 | - Then The page should not contain "div.pagination" | |
28 | - And The page should not contain "#facets-menu" | |
29 | - | |
30 | 24 | Scenario: show empty search results |
31 | 25 | When I search products for "something unrelated" |
32 | 26 | Then I should see "None" within ".search-results-type-empty" |
... | ... | @@ -40,14 +34,6 @@ Feature: search products |
40 | 34 | And I should not see "social networks consultancy" |
41 | 35 | And I should not see social networks consultancy's product image |
42 | 36 | |
43 | - Scenario: see default facets when searching | |
44 | - When I go to the search products page | |
45 | - And I fill in "search-input" with "wikis" | |
46 | - And I press "Search" | |
47 | - Then I should see "Related products" within "#facets-menu" | |
48 | - Then I should see "City" within "#facets-menu" | |
49 | - Then I should see "Qualifiers" within "#facets-menu" | |
50 | - | |
51 | 37 | Scenario: show percentage (100%) of solidary economy inputs in results |
52 | 38 | Given the following inputs |
53 | 39 | | product | category | solidary | |
... | ... | @@ -101,58 +87,6 @@ Feature: search products |
101 | 87 | Then I should not see "No image" |
102 | 88 | And I should see "Zoom in" within "a.zoomify-image" |
103 | 89 | |
104 | - Scenario: search products by category | |
105 | - Given the following product_category | |
106 | - | name | | |
107 | - | Software Livre | | |
108 | - And the following product | |
109 | - | owner | name | category | | |
110 | - | colivre-ent | Noosfero | software-livre | | |
111 | - When I go to the search products page | |
112 | - And I fill in "search-input" with "software livre" | |
113 | - And I press "Search" | |
114 | - Then I should see "Noosfero" within "#search-results" | |
115 | - And I should not see "wikis consultancy" | |
116 | - And I should not see "social networks consultancy" | |
117 | - | |
118 | - Scenario: see region on facets and results | |
119 | - Given the following cities | |
120 | - | name | state | | |
121 | - | Pres. Prudente | SP | | |
122 | - And the following enterprise | |
123 | - | identifier | name | region | | |
124 | - | art-pp | Artesanato PP | Pres. Prudente | | |
125 | - And the following product_category | |
126 | - | name | | |
127 | - | Solidária | | |
128 | - And the following product | |
129 | - | owner | name | category | | |
130 | - | art-pp | Arte em Madeira | solidaria | | |
131 | - When I go to the search products page | |
132 | - And I fill in "search-input" with "Madeira" | |
133 | - And I press "Search" | |
134 | - Then I should see "Pres. Prudente" within "#facet-menu-f_region" | |
135 | - And I should see ", SP" within "#facet-menu-f_region" | |
136 | - And I should see "Pres. Prudente, SP" within "#search-results" | |
137 | - | |
138 | - Scenario: find product by region | |
139 | - Given the following cities | |
140 | - | name | state | | |
141 | - | Pres. Prudente | SP | | |
142 | - And the following enterprise | |
143 | - | identifier | name | region | | |
144 | - | art-pp | Artesanato PP | Pres. Prudente | | |
145 | - And the following product_category | |
146 | - | name | | |
147 | - | Solidária | | |
148 | - And the following product | |
149 | - | owner | name | category | | |
150 | - | art-pp | Arte em Madeira | solidaria | | |
151 | - When I go to the search products page | |
152 | - And I fill in "search-input" with "Prudente" | |
153 | - And I press "Search" | |
154 | - Then I should see "Arte em Madeira" within "#search-results" | |
155 | - | |
156 | 90 | Scenario: find products without exact query |
157 | 91 | Given the following product_category |
158 | 92 | | name | |
... | ... | @@ -161,63 +95,10 @@ Feature: search products |
161 | 95 | | owner | name | category | |
162 | 96 | | colivre-ent | Noosfero Social Network Platform | software-livre | |
163 | 97 | When I go to the search products page |
164 | - And I fill in "search-input" with "Noosfero Network" | |
98 | + And I fill in "search-input" with "Noosfero Social" | |
165 | 99 | And I press "Search" |
166 | 100 | Then I should see "Noosfero Social Network Platform" within "#search-results" |
167 | 101 | |
168 | - Scenario: filter products by facet | |
169 | - Given the following enterprises | |
170 | - | identifier | name | | |
171 | - | fb | FB inc. | | |
172 | - And the following categories as facets | |
173 | - | name | | |
174 | - | Temáticas | | |
175 | - And the following product_categories | |
176 | - | name | parent | | |
177 | - | Software Livre | tematicas | | |
178 | - | Big Brother | tematicas | | |
179 | - And the following products | |
180 | - | owner | name | category | | |
181 | - | colivre-ent | Noosfero Network | software-livre | | |
182 | - | fb | Facebook Network | big-brother | | |
183 | - When I go to the search products page | |
184 | - And I fill in "search-input" with "Network" | |
185 | - And I press "Search" | |
186 | - And I follow "Software Livre" within "#facets-menu" | |
187 | - Then I should see "Noosfero Network" within "#search-results" | |
188 | - And I should not see "Facebook Network" | |
189 | - # facet should also be de-selectable | |
190 | - When I follow "remove facet" within ".facet-selected" | |
191 | - Then I should see "Facebook Network" | |
192 | - | |
193 | - Scenario: remember facet filter when searching new query | |
194 | - Given the following enterprises | |
195 | - | identifier | name | | |
196 | - | fb | FB inc. | | |
197 | - | other | Other | | |
198 | - And the following categories as facets | |
199 | - | name | | |
200 | - | Temáticas | | |
201 | - And the following product_categories | |
202 | - | name | parent | | |
203 | - | Software Livre | tematicas | | |
204 | - | Big Brother | tematicas | | |
205 | - | Other | tematicas | | |
206 | - And the following products | |
207 | - | owner | name | category | | |
208 | - | colivre-ent | Noosfero Network | software-livre | | |
209 | - | fb | Facebook Network | big-brother | | |
210 | - | other | Other open | software-livre | | |
211 | - | other | Other closed | big-brother | | |
212 | - When I go to the search products page | |
213 | - And I fill in "search-input" with "Network" | |
214 | - And I press "Search" | |
215 | - And I follow "Software Livre" within "#facets-menu" | |
216 | - And I fill in "search-input" with "Other" | |
217 | - And I press "Search" | |
218 | - Then I should see "Other open" within "#search-results" | |
219 | - And I should not see "Other closed" | |
220 | - | |
221 | 102 | Scenario: don't search when products are disabled in environment |
222 | 103 | Given feature "disable_asset_products" is enabled on environment |
223 | 104 | When I go to the search products page | ... | ... |
features/step_definitions/noosfero_steps.rb
... | ... | @@ -615,25 +615,6 @@ Given /^([^\s]+) (enabled|disabled) translation redirection in (?:his|her) profi |
615 | 615 | profile.save |
616 | 616 | end |
617 | 617 | |
618 | -Given /^the search index is empty$/ do | |
619 | - ActsAsSolr::Post.execute(Solr::Request::Delete.new(:query => '*:*')) | |
620 | -end | |
621 | - | |
622 | -# This could be merged with "the following categories" | |
623 | -Given /^the following categories as facets$/ do |table| | |
624 | - ids = [] | |
625 | - table.hashes.each do |item| | |
626 | - cat = Category.find_by_name(item[:name]) | |
627 | - if cat.nil? | |
628 | - cat = Category.create!(:environment_id => Environment.default.id, :name => item[:name]) | |
629 | - end | |
630 | - ids << cat.id | |
631 | - end | |
632 | - env = Environment.default | |
633 | - env.top_level_category_as_facet_ids = ids | |
634 | - env.save! | |
635 | -end | |
636 | - | |
637 | 618 | Given /^the following cities$/ do |table| |
638 | 619 | table.hashes.each do |item| |
639 | 620 | state = State.find_by_acronym item[:state] | ... | ... |
No preview for this file type
... | ... | @@ -0,0 +1,93 @@ |
1 | +Feature: search | |
2 | + As a noosfero user | |
3 | + I want to search | |
4 | + In order to find stuff | |
5 | + | |
6 | + Background: | |
7 | + Given the search index is empty | |
8 | + And the following category | |
9 | + | name | | |
10 | + | social network | | |
11 | + And the following community | |
12 | + | identifier | name | category | img | | |
13 | + | noosfero | Noosfero Community | social-network | noosfero-network | | |
14 | + | |
15 | + Scenario: search communities by category | |
16 | + Given the following category | |
17 | + | name | | |
18 | + | Software Livre | | |
19 | + And the following community | |
20 | + | identifier | name | category | | |
21 | + | noos-comm | Noosfero Community | software-livre | | |
22 | + When I go to the search communities page | |
23 | + And I fill in "search-input" with "software livre" | |
24 | + And I press "Search" | |
25 | + Then I should see "Noosfero" within "#search-results" | |
26 | + | |
27 | + Scenario: see category facets when searching | |
28 | + Given the following categories as facets | |
29 | + | name | | |
30 | + | Temáticas | | |
31 | + And the following category | |
32 | + | name | parent | | |
33 | + | Software Livre | tematicas | | |
34 | + And the following community | |
35 | + | identifier | name | category | | |
36 | + | linux | Linux Community | software-livre | | |
37 | + When I go to the search communities page | |
38 | + And I fill in "search-input" with "Linux" | |
39 | + And I press "Search" | |
40 | + Then I should see "Temáticas" within "#facets-menu" | |
41 | + | |
42 | + Scenario: find communities without exact query | |
43 | + Given the following communities | |
44 | + | identifier | name | | |
45 | + | luwac | Linux Users Without a Clue | | |
46 | + When I go to the search communities page | |
47 | + And I fill in "search-input" with "Linux Clue" | |
48 | + And I press "Search" | |
49 | + Then I should see "Linux Users Without a Clue" within "#search-results" | |
50 | + | |
51 | + Scenario: filter communities by facet | |
52 | + Given the following categories as facets | |
53 | + | name | | |
54 | + | Temáticas | | |
55 | + And the following category | |
56 | + | name | parent | | |
57 | + | Software Livre | tematicas | | |
58 | + | Big Brother | tematicas | | |
59 | + And the following communities | |
60 | + | identifier | name | category | | |
61 | + | noos-dev | Noosfero Developers | software-livre | | |
62 | + | facebook | Facebook Developers | big-brother | | |
63 | + When I go to the search communities page | |
64 | + And I fill in "search-input" with "Developers" | |
65 | + And I press "Search" | |
66 | + And I follow "Software Livre" within "#facets-menu" | |
67 | + Then I should see "Noosfero Developers" within "#search-results" | |
68 | + And I should not see "Facebook Developers" | |
69 | + # facet should also be de-selectable | |
70 | + When I follow "remove facet" within ".facet-selected" | |
71 | + Then I should see "Facebook Developers" | |
72 | + | |
73 | + Scenario: remember facet filter when searching new query | |
74 | + Given the following categories as facets | |
75 | + | name | | |
76 | + | Temáticas | | |
77 | + And the following category | |
78 | + | name | parent | | |
79 | + | Software Livre | tematicas | | |
80 | + | Other Category | tematicas | | |
81 | + And the following communities | |
82 | + | identifier | name | category | | |
83 | + | noos-dev | Noosfero Developers | software-livre | | |
84 | + | rails-dev | Rails Developers | other-category | | |
85 | + | rails-usr | Rails Users | software-livre | | |
86 | + When I go to the search communities page | |
87 | + And I fill in "search-input" with "Developers" | |
88 | + And I press "Search" | |
89 | + And I follow "Software Livre" within "#facets-menu" | |
90 | + And I fill in "search-input" with "Rails" | |
91 | + And I press "Search" | |
92 | + Then I should see "Rails Users" within "#search-results" | |
93 | + And I should not see "Rails Developers" | ... | ... |
... | ... | @@ -0,0 +1,84 @@ |
1 | +Feature: search contents | |
2 | + As a noosfero user | |
3 | + I want to search contents | |
4 | + In order to find ones that interest me | |
5 | + | |
6 | + Background: | |
7 | + Given the search index is empty | |
8 | + And the following users | |
9 | + Given the following users | |
10 | + | login | name | | |
11 | + | joaosilva | Joao Silva | | |
12 | + And the following articles | |
13 | + | owner | name | body | | |
14 | + | joaosilva | bees and butterflies | this is an article about bees and butterflies | | |
15 | + | joaosilva | whales and dolphins | this is an article about whales and dolphins | | |
16 | + And the following categories as facets | |
17 | + | name | | |
18 | + | Temáticas | | |
19 | + | |
20 | + Scenario: search articles by category | |
21 | + Given the following category | |
22 | + | name | | |
23 | + | Software Livre | | |
24 | + And the following articles | |
25 | + | owner | name | body | category | | |
26 | + | joaosilva | using noosfero | noosfero is a great CMS | software-livre | | |
27 | + When I go to the search articles page | |
28 | + And I fill in "search-input" with "Software" | |
29 | + And I press "Search" | |
30 | + Then I should see "using noosfero" within "#search-results" | |
31 | + And I should not see "bees and butterflies" | |
32 | + And I should not see "whales and dolphins" | |
33 | + | |
34 | + Scenario: see default facets when searching | |
35 | + When I go to the search articles page | |
36 | + And I fill in "search-input" with "bees" | |
37 | + And I press "Search" | |
38 | + Then I should see "Type" within "#facets-menu" | |
39 | + And I should see "Published date" within "#facets-menu" | |
40 | + And I should see "Profile" within "#facets-menu" | |
41 | + And I should see "Categories" within "#facets-menu" | |
42 | + | |
43 | + Scenario: find enterprises without exact query | |
44 | + When I go to the search articles page | |
45 | + And I fill in "search-input" with "bees and" | |
46 | + And I press "Search" | |
47 | + Then I should see "bees and butterflies" within "#search-results" | |
48 | + | |
49 | + Scenario: filter contents by facet | |
50 | + Given the following categories | |
51 | + | name | parent | | |
52 | + | Software Livre | tematicas | | |
53 | + | Big Brother | tematicas | | |
54 | + And the following articles | |
55 | + | owner | name | body | category | | |
56 | + | joaosilva | noosfero and debian | this is an article about noosfero and debian | software-livre | | |
57 | + | joaosilva | facebook and 1984 | this is an article about facebook and 1984 | big-brother | | |
58 | + When I go to the search articles page | |
59 | + And I fill in "search-input" with "this is an article" | |
60 | + And I press "Search" | |
61 | + And I follow "Software Livre" within "#facets-menu" | |
62 | + Then I should see "noosfero and debian" within "#search-results" | |
63 | + And I should not see "facebook and 1984" | |
64 | + # facet should also be de-selectable | |
65 | + When I follow "remove facet" within ".facet-selected" | |
66 | + Then I should see "facebook and 1984" | |
67 | + | |
68 | + Scenario: remember facet filter when searching new query | |
69 | + Given the following category | |
70 | + | name | parent | | |
71 | + | Software Livre | tematicas | | |
72 | + And the following articles | |
73 | + | owner | name | body | category | | |
74 | + | joaosilva | noosfero and debian | this is an article about noosfero and debian | software-livre | | |
75 | + | joaosilva | facebook and 1984 | this is an article about facebook and 1984 | big-brother | | |
76 | + | joaosilva | facebook defense | facebook is not so bad | software-livre | | |
77 | + When I go to the search articles page | |
78 | + And I fill in "search-input" with "this is an article" | |
79 | + And I press "Search" | |
80 | + And I follow "Software Livre" within "#facets-menu" | |
81 | + And I fill in "search-input" with "facebook" | |
82 | + And I press "Search" | |
83 | + Then I should see "facebook defense" within "#search-results" | |
84 | + And I should not see "1984" | ... | ... |
... | ... | @@ -0,0 +1,122 @@ |
1 | +Feature: search enterprises | |
2 | + As a noosfero user | |
3 | + I want to search enterprises | |
4 | + In order to find ones that interest me | |
5 | + | |
6 | + Background: | |
7 | + Given the search index is empty | |
8 | + And the following enterprises | |
9 | + | identifier | name | img | | |
10 | + | shop1 | Shoes shop | shoes | | |
11 | + | shop2 | Fruits shop | fruits | | |
12 | + And the following categories as facets | |
13 | + | name | | |
14 | + | Temáticas | | |
15 | + Scenario: see default facets when searching | |
16 | + When I go to the search enterprises page | |
17 | + And I fill in "search-input" with "shoes" | |
18 | + And I press "Search" | |
19 | + Then I should see "City" within "#facets-menu" | |
20 | + | |
21 | + Scenario: see category facets when searching | |
22 | + When I go to the search enterprises page | |
23 | + And I fill in "search-input" with "shoes" | |
24 | + And I press "Search" | |
25 | + Then I should see "Temáticas" within "#facets-menu" | |
26 | + | |
27 | + Scenario: see region on facets and results | |
28 | + Given the following cities | |
29 | + | name | state | | |
30 | + | Pres. Prudente | SP | | |
31 | + And the following enterprises | |
32 | + | identifier | name | region | | |
33 | + | art-pp | Artesanato PP | Pres. Prudente | | |
34 | + When I go to the search enterprises page | |
35 | + And I fill in "search-input" with "Artesanato" | |
36 | + And I press "Search" | |
37 | + Then I should see "Pres. Prudente" within "#facet-menu-f_region" | |
38 | + And I should see ", SP" within "#facet-menu-f_region" | |
39 | + And I should see "City" within ".search-enterprise-region-label" | |
40 | + And I should see "Pres. Prudente, SP" within ".search-enterprise-region-name" | |
41 | + | |
42 | + Scenario: find enterprise by region | |
43 | + Given the following cities | |
44 | + | name | state | | |
45 | + | Pres. Prudente | SP | | |
46 | + And the following enterprises | |
47 | + | identifier | name | region | | |
48 | + | art-pp | Artesanato PP | Pres. Prudente | | |
49 | + When I go to the search enterprises page | |
50 | + And I fill in "search-input" with "Prudente" | |
51 | + And I press "Search" | |
52 | + Then I should see "Artesanato PP" within "#search-results" | |
53 | + | |
54 | + Scenario: find enterprise by category | |
55 | + Given the following categories | |
56 | + | name | | |
57 | + | Software Livre | | |
58 | + And the following enterprises | |
59 | + | identifier | name | category | | |
60 | + | noosfero | Noosfero | software-livre | | |
61 | + When I go to the search enterprises page | |
62 | + And I fill in "search-input" with "software" | |
63 | + And I press "Search" | |
64 | + Then I should see "Noosfero" within "#search-results" | |
65 | + And I should see "Software Livre" within ".search-enterprise-category" | |
66 | + | |
67 | + Scenario: show category hierarchy on search results | |
68 | + Given the following categories | |
69 | + | name | parent | | |
70 | + | Software Livre | | | |
71 | + | Rails | software-livre | | |
72 | + And the following enterprises | |
73 | + | identifier | name | category | | |
74 | + | noosfero | Noosfero | rails | | |
75 | + When I search enterprises for "Rails" | |
76 | + Then I should see "Software Livre" within ".search-enterprise-category" | |
77 | + And I should see "Rails" within ".search-enterprise-category" | |
78 | + | |
79 | + Scenario: find enterprises without exact query | |
80 | + Given the following enterprises | |
81 | + | identifier | name | | |
82 | + | noosfero | Noosfero Developers Association | | |
83 | + When I go to the search enterprises page | |
84 | + And I fill in "search-input" with "Noosfero Association" | |
85 | + And I press "Search" | |
86 | + Then I should see "Noosfero Developers Association" within "#search-results" | |
87 | + | |
88 | + Scenario: filter enterprises by facet | |
89 | + Given the following category | |
90 | + | name | parent | | |
91 | + | Software Livre | tematicas | | |
92 | + And the following enterprises | |
93 | + | identifier | name | category | | |
94 | + | noosfero | Noosfero Developers | software-livre | | |
95 | + | facebook | Facebook Developers | | | |
96 | + When I go to the search enterprises page | |
97 | + And I fill in "search-input" with "Developers" | |
98 | + And I press "Search" | |
99 | + And I follow "Software Livre" within "#facets-menu" | |
100 | + Then I should see "Noosfero Developers" within "#search-results" | |
101 | + And I should not see "Facebook Developers" | |
102 | + # facet should also be de-selectable | |
103 | + When I follow "remove facet" within ".facet-selected" | |
104 | + Then I should see "Facebook Developers" | |
105 | + | |
106 | + Scenario: remember facet filter when searching new query | |
107 | + Given the following category | |
108 | + | name | parent | | |
109 | + | Software Livre | tematicas | | |
110 | + And the following enterprises | |
111 | + | identifier | name | category | | |
112 | + | noosfero | Noosfero Developers | software-livre | | |
113 | + | rails-dev | Rails Developers | | | |
114 | + | rails-usr | Rails Users | software-livre | | |
115 | + When I go to the search enterprises page | |
116 | + And I fill in "search-input" with "Developers" | |
117 | + And I press "Search" | |
118 | + And I follow "Software Livre" within "#facets-menu" | |
119 | + And I fill in "search-input" with "Rails" | |
120 | + And I press "Search" | |
121 | + Then I should see "Rails Users" within "#search-results" | |
122 | + And I should not see "Rails Developers" | ... | ... |
... | ... | @@ -0,0 +1,85 @@ |
1 | +Feature: search people | |
2 | + As a noosfero user | |
3 | + I want to search people | |
4 | + In order to find ones that interest me | |
5 | + | |
6 | + Background: | |
7 | + Given the search index is empty | |
8 | + And the following users | |
9 | + | login | name | | |
10 | + | joaosilva | Joao Silva | | |
11 | + | josearaujo | Jose Araujo | | |
12 | + | |
13 | + Scenario: see category facets when searching | |
14 | + Given the following categories as facets | |
15 | + | name | | |
16 | + | Temáticas | | |
17 | + When I go to the search people page | |
18 | + And I fill in "search-input" with "joao" | |
19 | + And I press "Search" | |
20 | + Then I should see "Temáticas" within "#facets-menu" | |
21 | + | |
22 | + Scenario: search people by category | |
23 | + Given the following category | |
24 | + | name | | |
25 | + | Software Livre | | |
26 | + And the following users | |
27 | + | login | name | category | | |
28 | + | linus | Linus Torvalds | software-livre | | |
29 | + When I go to the search people page | |
30 | + And I fill in "search-input" with "software livre" | |
31 | + And I press "Search" | |
32 | + Then I should see "Linus Torvalds" within "#search-results" | |
33 | + And I should not see "Joao Silva" | |
34 | + And I should not see "Jose Araujo" | |
35 | + | |
36 | + Scenario: find person without exact query | |
37 | + Given the following users | |
38 | + | login | name | | |
39 | + | jsilva | Joao Adalberto de Oliveira Silva | | |
40 | + When I go to the search people page | |
41 | + And I fill in "search-input" with "Adalberto Silva" | |
42 | + And I press "Search" | |
43 | + Then I should see "Joao Adalberto de Oliveira Silva" within "#search-results" | |
44 | + | |
45 | + Given the following categories as facets | |
46 | + | name | | |
47 | + | Temáticas | | |
48 | + And the following category | |
49 | + | name | parent | | |
50 | + | Software Livre | tematicas | | |
51 | + And the following users | |
52 | + | login | name | category | | |
53 | + | linus | Linus Torvalds | software-livre | | |
54 | + | other | Other Linus | | | |
55 | + When I go to the search people page | |
56 | + And I fill in "search-input" with "Linus" | |
57 | + And I press "Search" | |
58 | + And I follow "Software Livre" within "#facets-menu" | |
59 | + Then I should see "Linus Torvalds" within "#search-results" | |
60 | + And I should not see "Other Linus" | |
61 | + # facet should also be de-selectable | |
62 | + When I follow "remove facet" within ".facet-selected" | |
63 | + Then I should see "Other Linus" | |
64 | + | |
65 | + Scenario: remember facet filter when searching new query | |
66 | + Given the following categories as facets | |
67 | + | name | | |
68 | + | Temáticas | | |
69 | + And the following category | |
70 | + | name | parent | | |
71 | + | Software Livre | tematicas | | |
72 | + And the following users | |
73 | + | login | name | category | | |
74 | + | linus | Linus Torvalds | software-livre | | |
75 | + | rilin | Richard Linus | | | |
76 | + | stall | Richard Stallman | software-livre | | |
77 | + When I go to the search people page | |
78 | + And I fill in "search-input" with "Linus" | |
79 | + And I press "Search" | |
80 | + And I follow "Software Livre" within "#facets-menu" | |
81 | + And I fill in "search-input" with "Richard" | |
82 | + And I press "Search" | |
83 | + Then I should see "Richard Stallman" within "#search-results" | |
84 | + And I should not see "Richard Linus" | |
85 | + | ... | ... |
... | ... | @@ -0,0 +1,149 @@ |
1 | +Feature: search products | |
2 | + As a noosfero user | |
3 | + I want to search products | |
4 | + In order to find ones that interest me | |
5 | + | |
6 | + Background: | |
7 | + Given the search index is empty | |
8 | + And feature "disable_asset_products" is disabled on environment | |
9 | + And the following enterprises | |
10 | + | identifier | name | | |
11 | + | colivre-ent | Colivre | | |
12 | + And the following product_categories | |
13 | + | name | | |
14 | + | Development | | |
15 | + And the following products | |
16 | + | owner | category | name | price | img | | |
17 | + | colivre-ent | development | social networks consultancy | 1.00 | fruits | | |
18 | + | colivre-ent | development | wikis consultancy | 2.00 | shoes | | |
19 | + | |
20 | + Scenario: not show pagination and facets on recent products | |
21 | + When I go to the search products page | |
22 | + Then The page should not contain "div.pagination" | |
23 | + And The page should not contain "#facets-menu" | |
24 | + | |
25 | + Scenario: see default facets when searching | |
26 | + When I go to the search products page | |
27 | + And I fill in "search-input" with "wikis" | |
28 | + And I press "Search" | |
29 | + Then I should see "Related products" within "#facets-menu" | |
30 | + Then I should see "City" within "#facets-menu" | |
31 | + Then I should see "Qualifiers" within "#facets-menu" | |
32 | + | |
33 | + Scenario: search products by category | |
34 | + Given the following product_category | |
35 | + | name | | |
36 | + | Software Livre | | |
37 | + And the following product | |
38 | + | owner | name | category | | |
39 | + | colivre-ent | Noosfero | software-livre | | |
40 | + When I go to the search products page | |
41 | + And I fill in "search-input" with "software livre" | |
42 | + And I press "Search" | |
43 | + Then I should see "Noosfero" within "#search-results" | |
44 | + And I should not see "wikis consultancy" | |
45 | + And I should not see "social networks consultancy" | |
46 | + | |
47 | + Scenario: see region on facets and results | |
48 | + Given the following cities | |
49 | + | name | state | | |
50 | + | Pres. Prudente | SP | | |
51 | + And the following enterprise | |
52 | + | identifier | name | region | | |
53 | + | art-pp | Artesanato PP | Pres. Prudente | | |
54 | + And the following product_category | |
55 | + | name | | |
56 | + | Solidária | | |
57 | + And the following product | |
58 | + | owner | name | category | | |
59 | + | art-pp | Arte em Madeira | solidaria | | |
60 | + When I go to the search products page | |
61 | + And I fill in "search-input" with "Madeira" | |
62 | + And I press "Search" | |
63 | + Then I should see "Pres. Prudente" within "#facet-menu-f_region" | |
64 | + And I should see ", SP" within "#facet-menu-f_region" | |
65 | + And I should see "Pres. Prudente, SP" within "#search-results" | |
66 | + | |
67 | + Scenario: find product by region | |
68 | + Given the following cities | |
69 | + | name | state | | |
70 | + | Pres. Prudente | SP | | |
71 | + And the following enterprise | |
72 | + | identifier | name | region | | |
73 | + | art-pp | Artesanato PP | Pres. Prudente | | |
74 | + And the following product_category | |
75 | + | name | | |
76 | + | Solidária | | |
77 | + And the following product | |
78 | + | owner | name | category | | |
79 | + | art-pp | Arte em Madeira | solidaria | | |
80 | + When I go to the search products page | |
81 | + And I fill in "search-input" with "Prudente" | |
82 | + And I press "Search" | |
83 | + Then I should see "Arte em Madeira" within "#search-results" | |
84 | + | |
85 | + Scenario: find products without exact query | |
86 | + Given the following product_category | |
87 | + | name | | |
88 | + | Software Livre | | |
89 | + And the following products | |
90 | + | owner | name | category | | |
91 | + | colivre-ent | Noosfero Social Network Platform | software-livre | | |
92 | + When I go to the search products page | |
93 | + And I fill in "search-input" with "Noosfero Network" | |
94 | + And I press "Search" | |
95 | + Then I should see "Noosfero Social Network Platform" within "#search-results" | |
96 | + | |
97 | + Scenario: filter products by facet | |
98 | + Given the following enterprises | |
99 | + | identifier | name | | |
100 | + | fb | FB inc. | | |
101 | + And the following categories as facets | |
102 | + | name | | |
103 | + | Temáticas | | |
104 | + And the following product_categories | |
105 | + | name | parent | | |
106 | + | Software Livre | tematicas | | |
107 | + | Big Brother | tematicas | | |
108 | + And the following products | |
109 | + | owner | name | category | | |
110 | + | colivre-ent | Noosfero Network | software-livre | | |
111 | + | fb | Facebook Network | big-brother | | |
112 | + When I go to the search products page | |
113 | + And I fill in "search-input" with "Network" | |
114 | + And I press "Search" | |
115 | + And I follow "Software Livre" within "#facets-menu" | |
116 | + Then I should see "Noosfero Network" within "#search-results" | |
117 | + And I should not see "Facebook Network" | |
118 | + # facet should also be de-selectable | |
119 | + When I follow "remove facet" within ".facet-selected" | |
120 | + Then I should see "Facebook Network" | |
121 | + | |
122 | + Scenario: remember facet filter when searching new query | |
123 | + Given the following enterprises | |
124 | + | identifier | name | | |
125 | + | fb | FB inc. | | |
126 | + | other | Other | | |
127 | + And the following categories as facets | |
128 | + | name | | |
129 | + | Temáticas | | |
130 | + And the following product_categories | |
131 | + | name | parent | | |
132 | + | Software Livre | tematicas | | |
133 | + | Big Brother | tematicas | | |
134 | + | Other | tematicas | | |
135 | + And the following products | |
136 | + | owner | name | category | | |
137 | + | colivre-ent | Noosfero Network | software-livre | | |
138 | + | fb | Facebook Network | big-brother | | |
139 | + | other | Other open | software-livre | | |
140 | + | other | Other closed | big-brother | | |
141 | + When I go to the search products page | |
142 | + And I fill in "search-input" with "Network" | |
143 | + And I press "Search" | |
144 | + And I follow "Software Livre" within "#facets-menu" | |
145 | + And I fill in "search-input" with "Other" | |
146 | + And I press "Search" | |
147 | + Then I should see "Other open" within "#search-results" | |
148 | + And I should not see "Other closed" | |
149 | + | ... | ... |
... | ... | @@ -0,0 +1,18 @@ |
1 | +Given /^the search index is empty$/ do | |
2 | + ActsAsSolr::Post.execute(Solr::Request::Delete.new(:query => '*:*')) | |
3 | +end | |
4 | + | |
5 | +# This could be merged with "the following categories" | |
6 | +Given /^the following categories as facets$/ do |table| | |
7 | + ids = [] | |
8 | + table.hashes.each do |item| | |
9 | + cat = Category.find_by_name(item[:name]) | |
10 | + if cat.nil? | |
11 | + cat = Category.create!(:environment_id => Environment.default.id, :name => item[:name]) | |
12 | + end | |
13 | + ids << cat.id | |
14 | + end | |
15 | + env = Environment.default | |
16 | + env.top_level_category_as_facet_ids = ids | |
17 | + env.save! | |
18 | +end | ... | ... |