Commit e80430110ac3d8d72118e856b3578f59c7a6e9f5
1 parent
23cad8fe
Exists in
master
and in
79 other branches
Add tests and helper for create new software.
Signed-off-by: Gabriela Navarro <navarro1703@gmail.com> Signed-off-by: Gustavo Jaruga <darksshades@gmail.com> Signed-off-by: Parley Martins <parley@outlook.com>
Showing
3 changed files
with
13 additions
and
132 deletions
Show diff stats
test/functional/mpog_software_plugin_myprofile_controller_test.rb
1 | require File.dirname(__FILE__) + '/../../../../test/test_helper' | 1 | require File.dirname(__FILE__) + '/../../../../test/test_helper' |
2 | require File.dirname(__FILE__) + '/../../controllers/mpog_software_plugin_myprofile_controller' | 2 | require File.dirname(__FILE__) + '/../../controllers/mpog_software_plugin_myprofile_controller' |
3 | -require File.dirname(__FILE__) + '/software_helper' | 3 | +require File.dirname(__FILE__) + '/software_test_helper' |
4 | 4 | ||
5 | class MpogSoftwarePluginMyprofileController; def rescue_action(e) raise e end; | 5 | class MpogSoftwarePluginMyprofileController; def rescue_action(e) raise e end; |
6 | end | 6 | end |
7 | 7 | ||
8 | class MpogSoftwarePluginMyprofileControllerTest < ActionController::TestCase | 8 | class MpogSoftwarePluginMyprofileControllerTest < ActionController::TestCase |
9 | - include SoftwareHelper | 9 | + include SoftwareTestHelper |
10 | def setup | 10 | def setup |
11 | @controller = MpogSoftwarePluginMyprofileController.new | 11 | @controller = MpogSoftwarePluginMyprofileController.new |
12 | @request = ActionController::TestRequest.new | 12 | @request = ActionController::TestRequest.new |
@@ -22,9 +22,9 @@ class MpogSoftwarePluginMyprofileControllerTest < ActionController::TestCase | @@ -22,9 +22,9 @@ class MpogSoftwarePluginMyprofileControllerTest < ActionController::TestCase | ||
22 | OperatingSystemName.create(:name=>"Debian") | 22 | OperatingSystemName.create(:name=>"Debian") |
23 | 23 | ||
24 | login_as(@person.user.login) | 24 | login_as(@person.user.login) |
25 | - e = Environment.default | ||
26 | - e.enable_plugin('MpogSoftwarePlugin') | ||
27 | - e.save! | 25 | + @e = Environment.default |
26 | + @e.enable_plugin('MpogSoftwarePlugin') | ||
27 | + @e.save! | ||
28 | end | 28 | end |
29 | 29 | ||
30 | attr_accessor :person, :offer | 30 | attr_accessor :person, :offer |
@@ -32,8 +32,9 @@ class MpogSoftwarePluginMyprofileControllerTest < ActionController::TestCase | @@ -32,8 +32,9 @@ class MpogSoftwarePluginMyprofileControllerTest < ActionController::TestCase | ||
32 | should 'Add offer to admin in new software' do | 32 | should 'Add offer to admin in new software' do |
33 | @hash_list = software_fields | 33 | @hash_list = software_fields |
34 | @software = create_software @hash_list | 34 | @software = create_software @hash_list |
35 | - @software.community.add_admin(@offer.person) | ||
36 | - assert_equal @offer.id, Community.last.admins.last.id | 35 | + @software.community.add_admin(@offer.person) |
36 | + @software.save | ||
37 | + assert_equal @offer.id, @software.community.admins.last.id | ||
37 | end | 38 | end |
38 | 39 | ||
39 | should 'search new offers while creating a new software' do | 40 | should 'search new offers while creating a new software' do |
@@ -62,52 +63,12 @@ class MpogSoftwarePluginMyprofileControllerTest < ActionController::TestCase | @@ -62,52 +63,12 @@ class MpogSoftwarePluginMyprofileControllerTest < ActionController::TestCase | ||
62 | 63 | ||
63 | should 'create a new software with all fields filled in' do | 64 | should 'create a new software with all fields filled in' do |
64 | fields = software_fields | 65 | fields = software_fields |
65 | - software = create_software(fields) | ||
66 | - assert software.save | ||
67 | - end | ||
68 | - | ||
69 | -private | ||
70 | - | ||
71 | - def software_fields | ||
72 | 66 | ||
73 | - fields = Hash.new | ||
74 | - fields_library = Hash.new | ||
75 | - fields_language = Hash.new | ||
76 | - fields_database = Hash.new | ||
77 | - fields_license = Hash.new | ||
78 | - fields_operating_system = Hash.new | ||
79 | - #Fields for library | ||
80 | - fields_library['version'] = 'test' | ||
81 | - fields_library['name'] = 'test' | ||
82 | - fields_library['license'] = 'test' | ||
83 | - #Fields for software language | ||
84 | - fields_language['version'] = 'test' | ||
85 | - fields_language['programming_language_id'] = ProgrammingLanguage.last.id | ||
86 | - fields_language['operating_system'] = 'test' | ||
87 | - #Fields for database | ||
88 | - fields_database['version'] = 'test' | ||
89 | - fields_database['database_description_id'] = DatabaseDescription.last.id | ||
90 | - fields_database['operating_system'] = 'test' | ||
91 | - #Fields for license info | ||
92 | - fields_license['version'] = 'teste' | ||
93 | - fields_license['link'] = 'teste' | ||
94 | - #Fields for operating system | ||
95 | - fields_operating_system['version'] = 'version' | ||
96 | - fields_operating_system['operating_system_name_id'] = OperatingSystemName.last.id | 67 | + post :new_software, :profile => person.identifier, :community => fields[6], :license_info => fields[5], |
68 | + :software_info => fields[0], :library => fields[1], :database => fields[3], | ||
69 | + :language => fields[2], :operating_system=> fields[4] | ||
70 | + assert @response.success? | ||
71 | + end | ||
97 | 72 | ||
98 | - fields['acronym'] = 'test' | ||
99 | - fields['objectives'] = 'test' | ||
100 | - fields['features'] = 'test' | ||
101 | - fields['operating_platform'] = 'operating_plataform_test' | ||
102 | - fields['demonstration_url'] = 'test' | ||
103 | 73 | ||
104 | - hash_list = [] | ||
105 | - hash_list << fields | ||
106 | - hash_list << fields_library | ||
107 | - hash_list << fields_language | ||
108 | - hash_list << fields_database | ||
109 | - hash_list << fields_operating_system | ||
110 | - hash_list << fields_license | ||
111 | - hash_list | ||
112 | - end | ||
113 | end | 74 | end |
test/functional/software_helper.rb
@@ -1,80 +0,0 @@ | @@ -1,80 +0,0 @@ | ||
1 | -module SoftwareHelper | ||
2 | - | ||
3 | - def create_language language_fields | ||
4 | - language = SoftwareLanguage.new | ||
5 | - | ||
6 | - language_fields.each do |k,v| | ||
7 | - language[k] = v | ||
8 | - end | ||
9 | - language.save | ||
10 | - language | ||
11 | - end | ||
12 | - | ||
13 | - def create_database database_fields | ||
14 | - | ||
15 | - database = SoftwareDatabase.new | ||
16 | - | ||
17 | - database_fields.each do |k,v| | ||
18 | - database[k] = v | ||
19 | - end | ||
20 | - | ||
21 | - database.save | ||
22 | - database | ||
23 | - end | ||
24 | - | ||
25 | - def create_library library_fields | ||
26 | - library = Library.new | ||
27 | - | ||
28 | - library_fields.each do |k,v| | ||
29 | - library[k] = v | ||
30 | - end | ||
31 | - library.save | ||
32 | - library | ||
33 | - end | ||
34 | - | ||
35 | - def create_operating_system operating_system_hash | ||
36 | - operating_system = OperatingSystem.new | ||
37 | - | ||
38 | - operating_system_hash.each do |k,v| | ||
39 | - operating_system[k] = v | ||
40 | - end | ||
41 | - operating_system.save | ||
42 | - operating_system | ||
43 | - end | ||
44 | - | ||
45 | - def create_license license_hash | ||
46 | - license_info = LicenseInfo.new | ||
47 | - | ||
48 | - license_hash.each do |k,v| | ||
49 | - license_info[k] = v | ||
50 | - end | ||
51 | - license_info.save | ||
52 | - license_info | ||
53 | - end | ||
54 | - def create_software fields | ||
55 | - | ||
56 | - software = SoftwareInfo.new | ||
57 | - software_hash = fields[0] | ||
58 | - library_hash = fields[1] | ||
59 | - language_hash = fields[2] | ||
60 | - database_hash = fields[3] | ||
61 | - operating_system_hash = fields[4] | ||
62 | - license_system_hash = fields[5] | ||
63 | - | ||
64 | - software_hash.each do |k,v| | ||
65 | - software[k] = v | ||
66 | - end | ||
67 | - | ||
68 | - community = Community.new | ||
69 | - community.name = "debian" | ||
70 | - community.save | ||
71 | - software.community = community | ||
72 | - software.software_databases << create_database(database_hash) | ||
73 | - software.software_languages << create_language(language_hash) | ||
74 | - software.operating_systems << create_operating_system(operating_system_hash) | ||
75 | - software.license_info = create_license(license_system_hash) | ||
76 | - software.libraries << create_library(library_hash) | ||
77 | - | ||
78 | - software | ||
79 | - end | ||
80 | -end |