Commit 79c9c2b9eb17913365af37eaca952ed7f3e7549d

Authored by Gabriela Navarro
1 parent 3b9952f6

Rename software_info_validation.feature

Signed-off-by: Gabriela Navarro <navarro1703@gmail.com>
Signed-off-by: Parley Martins <parley@outlook.com>
features/software_info_validation.feature
@@ -1,435 +0,0 @@ @@ -1,435 +0,0 @@
1 -Feature:  
2 - As a user  
3 - I want to create a new software  
4 -  
5 - Background:  
6 - Given "MpogSoftwarePlugin" plugin is enabled  
7 - And SoftwareInfo has initial default values on database  
8 - And I am logged in as admin  
9 - And I go to /admin/plugins  
10 - And I check "MpogSoftwarePlugin"  
11 - And I press "Save changes"  
12 -  
13 - @selenium  
14 - Scenario: Do not show error message if all required fields are correctly filled  
15 - Given I go to admin_user's control panel  
16 - And I follow "Manage my groups"  
17 - And I follow "Create a new software"  
18 - And I fill in "community_name" with "test name"  
19 - And I fill in "language__version" with "2.0.0"  
20 - And I fill in "language__operating_system" with "Linux"  
21 - And I fill in "database__version" with "3.0"  
22 - And I fill in "database__operating_system" with "GNU"  
23 - And I fill in "operating_system__version" with "3.0"  
24 - And I fill in "software_info_operating_platform" with "test operating platform"  
25 - And fill in "software_info_acronym" with "SFTW"  
26 - And I press "Create"  
27 - Then I should see "Manage my groups"  
28 -  
29 - Scenario: Show operating_platform errors if this field is blank  
30 - Given I go to admin_user's control panel  
31 - And I follow "Manage my groups"  
32 - And I follow "Create a new software"  
33 - And fill in "community_name" with "test"  
34 - And fill in "language__version" with "2.0.0"  
35 - And fill in "language__operating_system" with "Linux"  
36 - And I fill in "database__version" with "3.0"  
37 - And I fill in "database__operating_system" with "GNU"  
38 - And fill in "software_info_acronym" with "SFTW"  
39 - And I press "Create"  
40 - Then I should see "Operating platform can't be blank"  
41 -  
42 - Scenario: Do not show operating_platform errors if this field is not blank  
43 - Given I go to admin_user's control panel  
44 - And I follow "Manage my groups"  
45 - And I follow "Create a new software"  
46 - And fill in "software_info_operating_platform" with "test operating platform"  
47 - And fill in "language__version" with "2.0.0"  
48 - And fill in "language__operating_system" with "Linux"  
49 - And I fill in "database__version" with "3.0"  
50 - And I fill in "database__operating_system" with "GNU"  
51 - And I press "Create"  
52 - Then I should not see "Operating platform can't be blank"  
53 -  
54 - @selenium  
55 - Scenario: Show software_langue errors if this Version is blank  
56 - Given I go to admin_user's control panel  
57 - And I follow "Manage my groups"  
58 - And I follow "Create a new software"  
59 - And fill in "community_name" with "test"  
60 - And fill in "language__operating_system" with "Linux"  
61 - And I fill in "database__version" with "3.0"  
62 - And I fill in "database__operating_system" with "GNU"  
63 - And I press "Create"  
64 - Then I should see "Software languages is invalid"  
65 -  
66 - Scenario: Show acronym errors if this field is blank  
67 - Given I go to admin_user's control panel  
68 - And I follow "Manage my groups"  
69 - And I follow "Create a new software"  
70 - And fill in "community_name" with "test"  
71 - And fill in "language__version" with "2.0.0"  
72 - And fill in "language__operating_system" with "Linux"  
73 - And I fill in "database__version" with "3.0"  
74 - And I fill in "database__operating_system" with "GNU"  
75 - And I press "Create"  
76 - Then I should see "Acronym can't be blank"  
77 -  
78 - @selenium  
79 - Scenario: Show database_fields errors version is blank  
80 - Given I go to admin_user's control panel  
81 - And I follow "Manage my groups"  
82 - And I follow "Create a new software"  
83 - And fill in "community_name" with "test"  
84 - And fill in "language__version" with "2.0.0"  
85 - And fill in "language__operating_system" with "Linux"  
86 - And I fill in "database__operating_system" with "GNU"  
87 - And I press "Create"  
88 - Then I should see "Software databases is invalid"  
89 -  
90 - Scenario: Show acronym errors if this field has more than 8 characters  
91 - Given I go to admin_user's control panel  
92 - And I follow "Manage my groups"  
93 - And I follow "Create a new software"  
94 - And fill in "community_name" with "test"  
95 - And fill in "language__version" with "2.0.0"  
96 - And fill in "language__operating_system" with "Linux"  
97 - And I fill in "database__operating_system" with "GNU"  
98 - And I fill in "database__version" with "3.0"  
99 - And I press "Create"  
100 - And fill in "software_info_acronym" with "123456789"  
101 - And I press "Create"  
102 - Then I should see "Acronym can't have more than 8 characteres"  
103 -  
104 - Scenario: Show operating system errors if this field is not filled  
105 - Given I go to admin_user's control panel  
106 - And I follow "Manage my groups"  
107 - And I follow "Create a new software"  
108 - And I press "Create"  
109 - Then I should see "Operating system : at least one must be filled"  
110 -  
111 - @selenium  
112 - Scenario: Show operating system errors if this field is not filled  
113 - Given I go to admin_user's control panel  
114 - And I follow "Manage my groups"  
115 - And I follow "Create a new software"  
116 - And I fill in "operating_system__version" with "3.0"  
117 - And I press "Create"  
118 - Then I should not see "Operating system : at least one must be filled"  
119 -  
120 - Scenario: Show library fields when click in New Library  
121 - Given I go to admin_user's control panel  
122 - And I follow "Manage my groups"  
123 - And I follow "Create a new software"  
124 - And I follow "New Library"  
125 - Then I should see "Name"  
126 - Then I should see "Version"  
127 - Then I should see "License"  
128 -  
129 - @selenium  
130 - Scenario: Show SoftwareLangue fields when click in New Language  
131 - Given I go to admin_user's control panel  
132 - And I follow "Manage my groups"  
133 - And I follow "Create a new software"  
134 - And I follow "New language"  
135 - Then I should see "3" of this selector ".software-language-table"  
136 - #3 because one is always hidden  
137 -  
138 - @selenium  
139 - Scenario: Show databasefields when click in New database  
140 - Given I go to admin_user's control panel  
141 - And I follow "Manage my groups"  
142 - And I follow "Create a new software"  
143 - And I follow "New Database"  
144 - Then I should see "3" of this selector ".database-table"  
145 - #3 because one is always hidden  
146 -  
147 - @selenium  
148 - Scenario: Create software with libraries  
149 - Given I go to admin_user's control panel  
150 - And I follow "Manage my groups"  
151 - And I follow "Create a new software"  
152 - And I follow "New Library"  
153 - And I fill in "community_name" with "test123"  
154 - And fill in "software_info_acronym" with "SFTW"  
155 - And I fill in "software_info_operating_platform" with "test platform"  
156 - And I fill in "library__name" with "test library name"  
157 - And I fill in "library__version" with "test library version"  
158 - And I fill in "library__license" with "test library license"  
159 - And fill in "language__version" with "2.0.0"  
160 - And fill in "language__operating_system" with "Linux"  
161 - And I fill in "database__version" with "3.0"  
162 - And I fill in "database__operating_system" with "GNU"  
163 - And I fill in "operating_system__version" with "3.0"  
164 - And I press "Create"  
165 - And I go to /myprofile/test123/profile_editor/edit  
166 - And I should see "Libraries"  
167 - And selector ".library-table" should have any "test library name"  
168 - And selector ".library-table" should have any "test library version"  
169 - Then selector ".library-table" should have any "test library license"  
170 -  
171 - @selenium  
172 - Scenario: Delete software libraries  
173 - Given I go to admin_user's control panel  
174 - And I follow "Manage my groups"  
175 - And I follow "Create a new software"  
176 - And I follow "New Library"  
177 - And I fill in "community_name" with "test123"  
178 - And fill in "software_info_acronym" with "SFTW"  
179 - And I fill in "software_info_operating_platform" with "test platform"  
180 - And I fill in "library__name" with "test name"  
181 - And I fill in "library__version" with "test version"  
182 - And I fill in "library__license" with "test license"  
183 - And fill in "language__version" with "2.0.0"  
184 - And fill in "language__operating_system" with "Linux"  
185 - And I fill in "database__version" with "3.0"  
186 - And I fill in "database__operating_system" with "GNU"  
187 - And I fill in "operating_system__version" with "3.0"  
188 - And I press "Create"  
189 - And I go to /myprofile/test123/profile_editor/edit  
190 - And I should see "Libraries"  
191 - And selector ".library-table" should have any "test name"  
192 - And selector ".library-table" should have any "test version"  
193 - And selector ".library-table" should have any "test license"  
194 - And I follow "Delete"  
195 - And I press "Save"  
196 - And I go to /myprofile/test123/profile_editor/edit  
197 - And I should not see "test name" within "#library__name"  
198 - And I should not see "test version" within "#library__version"  
199 - Then I should not see "test license" within "#library__license"  
200 -  
201 - @selenium  
202 - Scenario: Crete software libraries on software edit  
203 - Given I go to admin_user's control panel  
204 - And I follow "Manage my groups"  
205 - And I follow "Create a new software"  
206 - And I fill in "community_name" with "test123"  
207 - And fill in "software_info_acronym" with "SFTW"  
208 - And I fill in "software_info_operating_platform" with "test platform"  
209 - And fill in "language__version" with "2.0.0"  
210 - And fill in "language__operating_system" with "Linux"  
211 - And I fill in "database__version" with "3.0"  
212 - And I fill in "database__operating_system" with "GNU"  
213 - And I fill in "operating_system__version" with "3.0"  
214 - And I press "Create"  
215 - And I go to /myprofile/test123/profile_editor/edit  
216 - And I follow "New Library"  
217 - And I fill in "library__name" with "test name"  
218 - And I fill in "library__version" with "test version"  
219 - And I fill in "library__license" with "test license"  
220 - And I press "Save"  
221 - And I go to /myprofile/test123/profile_editor/edit  
222 - And I should see "Libraries"  
223 - And selector ".library-table" should have any "test name"  
224 - And selector ".library-table" should have any "test version"  
225 - Then selector ".library-table" should have any "test license"  
226 -  
227 - @selenium  
228 - Scenario: Edit software libraries on software edit  
229 - Given I go to admin_user's control panel  
230 - And I follow "Manage my groups"  
231 - And I follow "Create a new software"  
232 - And I follow "New Library"  
233 - And I fill in "community_name" with "test123"  
234 - And fill in "software_info_acronym" with "SFTW"  
235 - And I fill in "software_info_operating_platform" with "test platform"  
236 - And I fill in "library__name" with "test name"  
237 - And I fill in "library__version" with "test version"  
238 - And I fill in "library__license" with "test license"  
239 - And fill in "language__version" with "2.0.0"  
240 - And fill in "language__operating_system" with "Linux"  
241 - And I fill in "database__version" with "3.0"  
242 - And I fill in "database__operating_system" with "GNU"  
243 - And I fill in "operating_system__version" with "3.0"  
244 - And I press "Create"  
245 - And I go to /myprofile/test123/profile_editor/edit  
246 - And I should see "Libraries"  
247 - And selector ".library-table" should have any "test name"  
248 - And selector ".library-table" should have any "test version"  
249 - And selector ".library-table" should have any "test license"  
250 - And I follow "New Library"  
251 - And I fill in "library__name" with "new name"  
252 - And I fill in "library__version" with "new version"  
253 - And I fill in "library__license" with "new license"  
254 - And I press "Save"  
255 - And I go to /myprofile/test123/profile_editor/edit  
256 - And selector ".library-table" should have any "new name"  
257 - And selector ".library-table" should have any "new version"  
258 - Then selector ".library-table" should have any "new license"  
259 -  
260 - @selenium  
261 - Scenario: change license field  
262 - Given I go to admin_user's control panel  
263 - And I follow "Manage my groups"  
264 - And I follow "Create a new software"  
265 - And I fill in "community_name" with "test123"  
266 - And fill in "software_info_acronym" with "SFTW"  
267 - And I fill in "software_info_operating_platform" with "test platform"  
268 - And I select "GPL-2" from "license_info_version"  
269 - And fill in "language__version" with "2.0.0"  
270 - And fill in "language__operating_system" with "Linux"  
271 - And I fill in "database__version" with "3.0"  
272 - And I fill in "database__operating_system" with "GNU"  
273 - And I fill in "operating_system__version" with "3.0"  
274 - And I press "Create"  
275 - And I go to /myprofile/test123/profile_editor/edit  
276 - And I select "GPL-3" from "version"  
277 - And I press "Save"  
278 - And I go to /myprofile/test123/profile_editor/edit  
279 - Then I should see "GPL-3"  
280 -  
281 - @selenium  
282 - Scenario: license link appears on the create software page  
283 - Given I go to admin_user's control panel  
284 - And I follow "Manage my groups"  
285 - And I follow "Create a new software"  
286 - And I fill in "community_name" with "test123"  
287 - And I fill in "software_info_operating_platform" with "test platform"  
288 - And I select "GPL-2" from "license_info_version"  
289 - Then I should see "www.gpl2.com" within "#version_link"  
290 -  
291 - @selenium  
292 - Scenario: license link changes if the user choose a different license  
293 - Given I go to admin_user's control panel  
294 - And I follow "Manage my groups"  
295 - And I follow "Create a new software"  
296 - And I fill in "community_name" with "test123"  
297 - And I fill in "software_info_operating_platform" with "test platform"  
298 - And I select "GPL-2" from "license_info_version"  
299 - And I should see "www.gpl2.com" within "#version_link"  
300 - And I select "GPL-3" from "license_info_version"  
301 - Then I should see "www.gpl3.com" within "#version_link"  
302 -  
303 - @selenium  
304 - Scenario: Crete software with Language  
305 - Given I go to admin_user's control panel  
306 - And I follow "Manage my groups"  
307 - And I follow "Create a new software"  
308 - And I fill in "community_name" with "test123"  
309 - And fill in "software_info_acronym" with "SFTW"  
310 - And I fill in "software_info_operating_platform" with "test platform"  
311 - And fill in "language__version" with "2.0.0"  
312 - And fill in "language__operating_system" with "Linux"  
313 - And I fill in "database__version" with "3.0"  
314 - And I fill in "database__operating_system" with "GNU"  
315 - And I fill in "operating_system__version" with "3.0"  
316 - And I press "Create"  
317 - And I go to /myprofile/test123/profile_editor/edit  
318 - And I should see "Programming Languages"  
319 - And selector ".software-language-table" should have any "2.0.0"  
320 - Then selector ".software-language-table" should have any "Linux"  
321 -  
322 - @selenium  
323 - Scenario: Edit softwareLanguage on profile editor  
324 - Given I go to admin_user's control panel  
325 - And I follow "Manage my groups"  
326 - And I follow "Create a new software"  
327 - And I fill in "community_name" with "test123"  
328 - And fill in "software_info_acronym" with "SFTW"  
329 - And I fill in "software_info_operating_platform" with "test platform"  
330 - And fill in "language__version" with "2.0.0"  
331 - And fill in "language__operating_system" with "Linux"  
332 - And I fill in "database__version" with "3.0"  
333 - And I fill in "database__operating_system" with "GNU"  
334 - And I fill in "operating_system__version" with "3.0"  
335 - And I press "Create"  
336 - And I go to /myprofile/test123/profile_editor/edit  
337 - And I should see "Programming Languages"  
338 - And selector ".software-language-table" should have any "2.0.0"  
339 - And selector ".software-language-table" should have any "Linux"  
340 - And I select "Python" from "language__programming_language_id"  
341 - And fill in "language__version" with "3.2"  
342 - And fill in "language__operating_system" with "GNU"  
343 - And I press "Save"  
344 - And I go to /myprofile/test123/profile_editor/edit  
345 - And selector ".software-language-table" should have any "Python"  
346 - And selector ".software-language-table" should have any "3.2"  
347 - Then selector ".software-language-table" should have any "GNU"  
348 -  
349 - @selenium  
350 - Scenario: Adding new softwareLanguage on profile editor  
351 - Given I go to admin_user's control panel  
352 - And I follow "Manage my groups"  
353 - And I follow "Create a new software"  
354 - And I fill in "community_name" with "test123"  
355 - And fill in "software_info_acronym" with "SFTW"  
356 - And I fill in "software_info_operating_platform" with "test platform"  
357 - And fill in "language__version" with "2.0.0"  
358 - And fill in "language__operating_system" with "Linux"  
359 - And I fill in "database__version" with "3.0"  
360 - And I fill in "database__operating_system" with "GNU"  
361 - And I fill in "operating_system__version" with "3.0"  
362 - And I press "Create"  
363 - And I go to /myprofile/test123/profile_editor/edit  
364 - And I should see "Programming Languages"  
365 - And selector ".software-language-table" should have any "2.0.0"  
366 - And selector ".software-language-table" should have any "Linux"  
367 - And I follow "New language"  
368 - And I click on the first button with class ".delete-dynamic-table"  
369 - And I click on table number "2" selector ".software-language-table" and select the value "Python"  
370 - And I fill with "4.3" in field with name "language[][version]" of table number "2" with class ".software-language-table"  
371 - And I fill with "Windows" in field with name "language[][operating_system]" of table number "2" with class ".software-language-table"  
372 - And I press "Save"  
373 - And I go to /myprofile/test123/profile_editor/edit  
374 - And selector ".software-language-table" should have any "Python"  
375 - And selector ".software-language-table" should have any "4.3"  
376 - Then selector ".software-language-table" should have any "Windows"  
377 -  
378 - @selenium  
379 - Scenario: Edit softwareDatabase on profile editor  
380 - Given I go to admin_user's control panel  
381 - And I follow "Manage my groups"  
382 - And I follow "Create a new software"  
383 - And I fill in "community_name" with "test123"  
384 - And fill in "software_info_acronym" with "SFTW"  
385 - And I fill in "software_info_operating_platform" with "test platform"  
386 - And fill in "language__version" with "2.0.0"  
387 - And fill in "language__operating_system" with "Linux"  
388 - And I fill in "database__version" with "3.0"  
389 - And I fill in "database__operating_system" with "GNU"  
390 - And I fill in "operating_system__version" with "3.0"  
391 - And I press "Create"  
392 - And I go to /myprofile/test123/profile_editor/edit  
393 - And I should see "Databases"  
394 - And selector ".database-table" should have any "3.0"  
395 - And selector ".database-table" should have any "GNU"  
396 - And I select "PostgreSQL" from "database__database_description_id"  
397 - And fill in "database__version" with "3.2"  
398 - And fill in "database__operating_system" with "Linux"  
399 - And I press "Save"  
400 - And I go to /myprofile/test123/profile_editor/edit  
401 - And selector ".database-table" should have any "PostgreSQL"  
402 - And selector ".database-table" should have any "3.2"  
403 - Then selector ".database-table" should have any "Linux"  
404 -  
405 - @selenium  
406 - Scenario: Delete softwareDatabase on profile editor  
407 - Given I go to admin_user's control panel  
408 - And I follow "Manage my groups"  
409 - And I follow "Create a new software"  
410 - And I fill in "community_name" with "test123"  
411 - And fill in "software_info_acronym" with "SFTW"  
412 - And I fill in "software_info_operating_platform" with "test platform"  
413 - And fill in "language__version" with "2.0.0"  
414 - And fill in "language__operating_system" with "Linux"  
415 - And I fill in "database__version" with "3.5"  
416 - And I fill in "database__operating_system" with "Solaris"  
417 - And I fill in "operating_system__version" with "3.0"  
418 - And I press "Create"  
419 - And I go to /myprofile/test123/profile_editor/edit  
420 - And I should see "Databases"  
421 - And selector ".database-table" should have any "3.5"  
422 - And selector ".database-table" should have any "Solaris"  
423 - And I follow "New Database"  
424 - And I click on table number "2" selector ".database-table" and select the value "MariaDB"  
425 - And I fill with "4.3" in field with name "database[][version]" of table number "2" with class ".database-table"  
426 - And I fill with "Windows" in field with name "database[][operating_system]" of table number "2" with class ".database-table"  
427 - And I click on the first button with class ".database-table .delete-dynamic-table"  
428 - And I press "Save"  
429 - And I go to /myprofile/test123/profile_editor/edit  
430 - And selector ".database-table" should have any "MariaDB"  
431 - And selector ".database-table" should have any "4.3"  
432 - And selector ".database-table" should have any "Windows"  
433 - And I should not see "4th Dimension"  
434 - And I should not see "3.5"  
435 - And I should not see "Solaris"  
436 \ No newline at end of file 0 \ No newline at end of file
features/software_registration.feature 0 → 100644
@@ -0,0 +1,435 @@ @@ -0,0 +1,435 @@
  1 +Feature:
  2 + As a user
  3 + I want to create a new software
  4 +
  5 + Background:
  6 + Given "MpogSoftwarePlugin" plugin is enabled
  7 + And SoftwareInfo has initial default values on database
  8 + And I am logged in as admin
  9 + And I go to /admin/plugins
  10 + And I check "MpogSoftwarePlugin"
  11 + And I press "Save changes"
  12 +
  13 + @selenium
  14 + Scenario: Do not show error message if all required fields are correctly filled
  15 + Given I go to admin_user's control panel
  16 + And I follow "Manage my groups"
  17 + And I follow "Create a new software"
  18 + And I fill in "community_name" with "test name"
  19 + And I fill in "language__version" with "2.0.0"
  20 + And I fill in "language__operating_system" with "Linux"
  21 + And I fill in "database__version" with "3.0"
  22 + And I fill in "database__operating_system" with "GNU"
  23 + And I fill in "operating_system__version" with "3.0"
  24 + And I fill in "software_info_operating_platform" with "test operating platform"
  25 + And fill in "software_info_acronym" with "SFTW"
  26 + And I press "Create"
  27 + Then I should see "Manage my groups"
  28 +
  29 + Scenario: Show operating_platform errors if this field is blank
  30 + Given I go to admin_user's control panel
  31 + And I follow "Manage my groups"
  32 + And I follow "Create a new software"
  33 + And fill in "community_name" with "test"
  34 + And fill in "language__version" with "2.0.0"
  35 + And fill in "language__operating_system" with "Linux"
  36 + And I fill in "database__version" with "3.0"
  37 + And I fill in "database__operating_system" with "GNU"
  38 + And fill in "software_info_acronym" with "SFTW"
  39 + And I press "Create"
  40 + Then I should see "Operating platform can't be blank"
  41 +
  42 + Scenario: Do not show operating_platform errors if this field is not blank
  43 + Given I go to admin_user's control panel
  44 + And I follow "Manage my groups"
  45 + And I follow "Create a new software"
  46 + And fill in "software_info_operating_platform" with "test operating platform"
  47 + And fill in "language__version" with "2.0.0"
  48 + And fill in "language__operating_system" with "Linux"
  49 + And I fill in "database__version" with "3.0"
  50 + And I fill in "database__operating_system" with "GNU"
  51 + And I press "Create"
  52 + Then I should not see "Operating platform can't be blank"
  53 +
  54 + @selenium
  55 + Scenario: Show software_language errors if version is blank
  56 + Given I go to admin_user's control panel
  57 + And I follow "Manage my groups"
  58 + And I follow "Create a new software"
  59 + And fill in "community_name" with "test"
  60 + And fill in "language__operating_system" with "Linux"
  61 + And I fill in "database__version" with "3.0"
  62 + And I fill in "database__operating_system" with "GNU"
  63 + And I press "Create"
  64 + Then I should see "Software languages is invalid"
  65 +
  66 + Scenario: Show acronym errors if this field is blank
  67 + Given I go to admin_user's control panel
  68 + And I follow "Manage my groups"
  69 + And I follow "Create a new software"
  70 + And fill in "community_name" with "test"
  71 + And fill in "language__version" with "2.0.0"
  72 + And fill in "language__operating_system" with "Linux"
  73 + And I fill in "database__version" with "3.0"
  74 + And I fill in "database__operating_system" with "GNU"
  75 + And I press "Create"
  76 + Then I should see "Acronym can't be blank"
  77 +
  78 + @selenium
  79 + Scenario: Show database_fields errors version is blank
  80 + Given I go to admin_user's control panel
  81 + And I follow "Manage my groups"
  82 + And I follow "Create a new software"
  83 + And fill in "community_name" with "test"
  84 + And fill in "language__version" with "2.0.0"
  85 + And fill in "language__operating_system" with "Linux"
  86 + And I fill in "database__operating_system" with "GNU"
  87 + And I press "Create"
  88 + Then I should see "Software databases is invalid"
  89 +
  90 + Scenario: Show acronym errors if this field has more than 8 characters
  91 + Given I go to admin_user's control panel
  92 + And I follow "Manage my groups"
  93 + And I follow "Create a new software"
  94 + And fill in "community_name" with "test"
  95 + And fill in "language__version" with "2.0.0"
  96 + And fill in "language__operating_system" with "Linux"
  97 + And I fill in "database__operating_system" with "GNU"
  98 + And I fill in "database__version" with "3.0"
  99 + And I press "Create"
  100 + And fill in "software_info_acronym" with "123456789"
  101 + And I press "Create"
  102 + Then I should see "Acronym can't have more than 8 characteres"
  103 +
  104 + Scenario: Show operating system errors if this field is not filled
  105 + Given I go to admin_user's control panel
  106 + And I follow "Manage my groups"
  107 + And I follow "Create a new software"
  108 + And I press "Create"
  109 + Then I should see "Operating system : at least one must be filled"
  110 +
  111 + @selenium
  112 + Scenario: Show operating system errors if this field is not filled
  113 + Given I go to admin_user's control panel
  114 + And I follow "Manage my groups"
  115 + And I follow "Create a new software"
  116 + And I fill in "operating_system__version" with "3.0"
  117 + And I press "Create"
  118 + Then I should not see "Operating system : at least one must be filled"
  119 +
  120 + Scenario: Show library fields when click in New Library
  121 + Given I go to admin_user's control panel
  122 + And I follow "Manage my groups"
  123 + And I follow "Create a new software"
  124 + And I follow "New Library"
  125 + Then I should see "Name"
  126 + Then I should see "Version"
  127 + Then I should see "License"
  128 +
  129 + @selenium
  130 + Scenario: Show SoftwareLangue fields when click in New Language
  131 + Given I go to admin_user's control panel
  132 + And I follow "Manage my groups"
  133 + And I follow "Create a new software"
  134 + And I follow "New language"
  135 + Then I should see "3" of this selector ".software-language-table"
  136 + #3 because one is always hidden
  137 +
  138 + @selenium
  139 + Scenario: Show databasefields when click in New database
  140 + Given I go to admin_user's control panel
  141 + And I follow "Manage my groups"
  142 + And I follow "Create a new software"
  143 + And I follow "New Database"
  144 + Then I should see "3" of this selector ".database-table"
  145 + #3 because one is always hidden
  146 +
  147 + @selenium
  148 + Scenario: Create software with libraries
  149 + Given I go to admin_user's control panel
  150 + And I follow "Manage my groups"
  151 + And I follow "Create a new software"
  152 + And I follow "New Library"
  153 + And I fill in "community_name" with "test123"
  154 + And fill in "software_info_acronym" with "SFTW"
  155 + And I fill in "software_info_operating_platform" with "test platform"
  156 + And I fill in "library__name" with "test library name"
  157 + And I fill in "library__version" with "test library version"
  158 + And I fill in "library__license" with "test library license"
  159 + And fill in "language__version" with "2.0.0"
  160 + And fill in "language__operating_system" with "Linux"
  161 + And I fill in "database__version" with "3.0"
  162 + And I fill in "database__operating_system" with "GNU"
  163 + And I fill in "operating_system__version" with "3.0"
  164 + And I press "Create"
  165 + And I go to /myprofile/test123/profile_editor/edit
  166 + And I should see "Libraries"
  167 + And selector ".library-table" should have any "test library name"
  168 + And selector ".library-table" should have any "test library version"
  169 + Then selector ".library-table" should have any "test library license"
  170 +
  171 + @selenium
  172 + Scenario: Delete software libraries
  173 + Given I go to admin_user's control panel
  174 + And I follow "Manage my groups"
  175 + And I follow "Create a new software"
  176 + And I follow "New Library"
  177 + And I fill in "community_name" with "test123"
  178 + And fill in "software_info_acronym" with "SFTW"
  179 + And I fill in "software_info_operating_platform" with "test platform"
  180 + And I fill in "library__name" with "test name"
  181 + And I fill in "library__version" with "test version"
  182 + And I fill in "library__license" with "test license"
  183 + And fill in "language__version" with "2.0.0"
  184 + And fill in "language__operating_system" with "Linux"
  185 + And I fill in "database__version" with "3.0"
  186 + And I fill in "database__operating_system" with "GNU"
  187 + And I fill in "operating_system__version" with "3.0"
  188 + And I press "Create"
  189 + And I go to /myprofile/test123/profile_editor/edit
  190 + And I should see "Libraries"
  191 + And selector ".library-table" should have any "test name"
  192 + And selector ".library-table" should have any "test version"
  193 + And selector ".library-table" should have any "test license"
  194 + And I follow "Delete"
  195 + And I press "Save"
  196 + And I go to /myprofile/test123/profile_editor/edit
  197 + And I should not see "test name" within "#library__name"
  198 + And I should not see "test version" within "#library__version"
  199 + Then I should not see "test license" within "#library__license"
  200 +
  201 + @selenium
  202 + Scenario: Crete software libraries on software edit
  203 + Given I go to admin_user's control panel
  204 + And I follow "Manage my groups"
  205 + And I follow "Create a new software"
  206 + And I fill in "community_name" with "test123"
  207 + And fill in "software_info_acronym" with "SFTW"
  208 + And I fill in "software_info_operating_platform" with "test platform"
  209 + And fill in "language__version" with "2.0.0"
  210 + And fill in "language__operating_system" with "Linux"
  211 + And I fill in "database__version" with "3.0"
  212 + And I fill in "database__operating_system" with "GNU"
  213 + And I fill in "operating_system__version" with "3.0"
  214 + And I press "Create"
  215 + And I go to /myprofile/test123/profile_editor/edit
  216 + And I follow "New Library"
  217 + And I fill in "library__name" with "test name"
  218 + And I fill in "library__version" with "test version"
  219 + And I fill in "library__license" with "test license"
  220 + And I press "Save"
  221 + And I go to /myprofile/test123/profile_editor/edit
  222 + And I should see "Libraries"
  223 + And selector ".library-table" should have any "test name"
  224 + And selector ".library-table" should have any "test version"
  225 + Then selector ".library-table" should have any "test license"
  226 +
  227 + @selenium
  228 + Scenario: Edit software libraries on software edit
  229 + Given I go to admin_user's control panel
  230 + And I follow "Manage my groups"
  231 + And I follow "Create a new software"
  232 + And I follow "New Library"
  233 + And I fill in "community_name" with "test123"
  234 + And fill in "software_info_acronym" with "SFTW"
  235 + And I fill in "software_info_operating_platform" with "test platform"
  236 + And I fill in "library__name" with "test name"
  237 + And I fill in "library__version" with "test version"
  238 + And I fill in "library__license" with "test license"
  239 + And fill in "language__version" with "2.0.0"
  240 + And fill in "language__operating_system" with "Linux"
  241 + And I fill in "database__version" with "3.0"
  242 + And I fill in "database__operating_system" with "GNU"
  243 + And I fill in "operating_system__version" with "3.0"
  244 + And I press "Create"
  245 + And I go to /myprofile/test123/profile_editor/edit
  246 + And I should see "Libraries"
  247 + And selector ".library-table" should have any "test name"
  248 + And selector ".library-table" should have any "test version"
  249 + And selector ".library-table" should have any "test license"
  250 + And I follow "New Library"
  251 + And I fill in "library__name" with "new name"
  252 + And I fill in "library__version" with "new version"
  253 + And I fill in "library__license" with "new license"
  254 + And I press "Save"
  255 + And I go to /myprofile/test123/profile_editor/edit
  256 + And selector ".library-table" should have any "new name"
  257 + And selector ".library-table" should have any "new version"
  258 + Then selector ".library-table" should have any "new license"
  259 +
  260 + @selenium
  261 + Scenario: change license field
  262 + Given I go to admin_user's control panel
  263 + And I follow "Manage my groups"
  264 + And I follow "Create a new software"
  265 + And I fill in "community_name" with "test123"
  266 + And fill in "software_info_acronym" with "SFTW"
  267 + And I fill in "software_info_operating_platform" with "test platform"
  268 + And I select "GPL-2" from "license_info_version"
  269 + And fill in "language__version" with "2.0.0"
  270 + And fill in "language__operating_system" with "Linux"
  271 + And I fill in "database__version" with "3.0"
  272 + And I fill in "database__operating_system" with "GNU"
  273 + And I fill in "operating_system__version" with "3.0"
  274 + And I press "Create"
  275 + And I go to /myprofile/test123/profile_editor/edit
  276 + And I select "GPL-3" from "version"
  277 + And I press "Save"
  278 + And I go to /myprofile/test123/profile_editor/edit
  279 + Then I should see "GPL-3"
  280 +
  281 + @selenium
  282 + Scenario: license link appears on the create software page
  283 + Given I go to admin_user's control panel
  284 + And I follow "Manage my groups"
  285 + And I follow "Create a new software"
  286 + And I fill in "community_name" with "test123"
  287 + And I fill in "software_info_operating_platform" with "test platform"
  288 + And I select "GPL-2" from "license_info_version"
  289 + Then I should see "www.gpl2.com" within "#version_link"
  290 +
  291 + @selenium
  292 + Scenario: license link changes if the user choose a different license
  293 + Given I go to admin_user's control panel
  294 + And I follow "Manage my groups"
  295 + And I follow "Create a new software"
  296 + And I fill in "community_name" with "test123"
  297 + And I fill in "software_info_operating_platform" with "test platform"
  298 + And I select "GPL-2" from "license_info_version"
  299 + And I should see "www.gpl2.com" within "#version_link"
  300 + And I select "GPL-3" from "license_info_version"
  301 + Then I should see "www.gpl3.com" within "#version_link"
  302 +
  303 + @selenium
  304 + Scenario: Crete software with Language
  305 + Given I go to admin_user's control panel
  306 + And I follow "Manage my groups"
  307 + And I follow "Create a new software"
  308 + And I fill in "community_name" with "test123"
  309 + And fill in "software_info_acronym" with "SFTW"
  310 + And I fill in "software_info_operating_platform" with "test platform"
  311 + And fill in "language__version" with "2.0.0"
  312 + And fill in "language__operating_system" with "Linux"
  313 + And I fill in "database__version" with "3.0"
  314 + And I fill in "database__operating_system" with "GNU"
  315 + And I fill in "operating_system__version" with "3.0"
  316 + And I press "Create"
  317 + And I go to /myprofile/test123/profile_editor/edit
  318 + And I should see "Programming Languages"
  319 + And selector ".software-language-table" should have any "2.0.0"
  320 + Then selector ".software-language-table" should have any "Linux"
  321 +
  322 + @selenium
  323 + Scenario: Edit softwareLanguage on profile editor
  324 + Given I go to admin_user's control panel
  325 + And I follow "Manage my groups"
  326 + And I follow "Create a new software"
  327 + And I fill in "community_name" with "test123"
  328 + And fill in "software_info_acronym" with "SFTW"
  329 + And I fill in "software_info_operating_platform" with "test platform"
  330 + And fill in "language__version" with "2.0.0"
  331 + And fill in "language__operating_system" with "Linux"
  332 + And I fill in "database__version" with "3.0"
  333 + And I fill in "database__operating_system" with "GNU"
  334 + And I fill in "operating_system__version" with "3.0"
  335 + And I press "Create"
  336 + And I go to /myprofile/test123/profile_editor/edit
  337 + And I should see "Programming Languages"
  338 + And selector ".software-language-table" should have any "2.0.0"
  339 + And selector ".software-language-table" should have any "Linux"
  340 + And I select "Python" from "language__programming_language_id"
  341 + And fill in "language__version" with "3.2"
  342 + And fill in "language__operating_system" with "GNU"
  343 + And I press "Save"
  344 + And I go to /myprofile/test123/profile_editor/edit
  345 + And selector ".software-language-table" should have any "Python"
  346 + And selector ".software-language-table" should have any "3.2"
  347 + Then selector ".software-language-table" should have any "GNU"
  348 +
  349 + @selenium
  350 + Scenario: Adding new softwareLanguage on profile editor
  351 + Given I go to admin_user's control panel
  352 + And I follow "Manage my groups"
  353 + And I follow "Create a new software"
  354 + And I fill in "community_name" with "test123"
  355 + And fill in "software_info_acronym" with "SFTW"
  356 + And I fill in "software_info_operating_platform" with "test platform"
  357 + And fill in "language__version" with "2.0.0"
  358 + And fill in "language__operating_system" with "Linux"
  359 + And I fill in "database__version" with "3.0"
  360 + And I fill in "database__operating_system" with "GNU"
  361 + And I fill in "operating_system__version" with "3.0"
  362 + And I press "Create"
  363 + And I go to /myprofile/test123/profile_editor/edit
  364 + And I should see "Programming Languages"
  365 + And selector ".software-language-table" should have any "2.0.0"
  366 + And selector ".software-language-table" should have any "Linux"
  367 + And I follow "New language"
  368 + And I click on the first button with class ".delete-dynamic-table"
  369 + And I click on table number "2" selector ".software-language-table" and select the value "Python"
  370 + And I fill with "4.3" in field with name "language[][version]" of table number "2" with class ".software-language-table"
  371 + And I fill with "Windows" in field with name "language[][operating_system]" of table number "2" with class ".software-language-table"
  372 + And I press "Save"
  373 + And I go to /myprofile/test123/profile_editor/edit
  374 + And selector ".software-language-table" should have any "Python"
  375 + And selector ".software-language-table" should have any "4.3"
  376 + Then selector ".software-language-table" should have any "Windows"
  377 +
  378 + @selenium
  379 + Scenario: Edit softwareDatabase on profile editor
  380 + Given I go to admin_user's control panel
  381 + And I follow "Manage my groups"
  382 + And I follow "Create a new software"
  383 + And I fill in "community_name" with "test123"
  384 + And fill in "software_info_acronym" with "SFTW"
  385 + And I fill in "software_info_operating_platform" with "test platform"
  386 + And fill in "language__version" with "2.0.0"
  387 + And fill in "language__operating_system" with "Linux"
  388 + And I fill in "database__version" with "3.0"
  389 + And I fill in "database__operating_system" with "GNU"
  390 + And I fill in "operating_system__version" with "3.0"
  391 + And I press "Create"
  392 + And I go to /myprofile/test123/profile_editor/edit
  393 + And I should see "Databases"
  394 + And selector ".database-table" should have any "3.0"
  395 + And selector ".database-table" should have any "GNU"
  396 + And I select "PostgreSQL" from "database__database_description_id"
  397 + And fill in "database__version" with "3.2"
  398 + And fill in "database__operating_system" with "Linux"
  399 + And I press "Save"
  400 + And I go to /myprofile/test123/profile_editor/edit
  401 + And selector ".database-table" should have any "PostgreSQL"
  402 + And selector ".database-table" should have any "3.2"
  403 + Then selector ".database-table" should have any "Linux"
  404 +
  405 + @selenium
  406 + Scenario: Delete softwareDatabase on profile editor
  407 + Given I go to admin_user's control panel
  408 + And I follow "Manage my groups"
  409 + And I follow "Create a new software"
  410 + And I fill in "community_name" with "test123"
  411 + And fill in "software_info_acronym" with "SFTW"
  412 + And I fill in "software_info_operating_platform" with "test platform"
  413 + And fill in "language__version" with "2.0.0"
  414 + And fill in "language__operating_system" with "Linux"
  415 + And I fill in "database__version" with "3.5"
  416 + And I fill in "database__operating_system" with "Solaris"
  417 + And I fill in "operating_system__version" with "3.0"
  418 + And I press "Create"
  419 + And I go to /myprofile/test123/profile_editor/edit
  420 + And I should see "Databases"
  421 + And selector ".database-table" should have any "3.5"
  422 + And selector ".database-table" should have any "Solaris"
  423 + And I follow "New Database"
  424 + And I click on table number "2" selector ".database-table" and select the value "MariaDB"
  425 + And I fill with "4.3" in field with name "database[][version]" of table number "2" with class ".database-table"
  426 + And I fill with "Windows" in field with name "database[][operating_system]" of table number "2" with class ".database-table"
  427 + And I click on the first button with class ".database-table .delete-dynamic-table"
  428 + And I press "Save"
  429 + And I go to /myprofile/test123/profile_editor/edit
  430 + And selector ".database-table" should have any "MariaDB"
  431 + And selector ".database-table" should have any "4.3"
  432 + And selector ".database-table" should have any "Windows"
  433 + And I should not see "4th Dimension"
  434 + And I should not see "3.5"
  435 + And I should not see "Solaris"