This is a Discussion Trigger
🎩 Description
Right now we have a lot of shared specs for the admin backend that test full scenarios for every admin role. This is expensive since we are talking about full suites with different scenarios that get run twice. However, there's normally no "role specific code" anywhere in our controllers, forms, views or commands, so in most situations either both roles fail or both pass. The only role specific code is usually inside cancancan ability files, which we normally backup with unit tests.
I haven't tried to grab numbers, but I think it'd be a matter of removing all of these files and see how much we save:
$ fd "(process|assembly)_admin_manages"
decidim-accountability/spec/system/process_admin_manages_accountability_spec.rb
decidim-assemblies/spec/system/admin/assembly_admin_manages_assemblies_spec.rb
decidim-assemblies/spec/system/admin/assembly_admin_manages_assembly_admins_spec.rb
decidim-assemblies/spec/system/admin/assembly_admin_manages_assembly_attachment_collections_spec.rb
decidim-assemblies/spec/system/admin/assembly_admin_manages_assembly_attachments_spec.rb
decidim-assemblies/spec/system/admin/assembly_admin_manages_assembly_categories_spec.rb
decidim-assemblies/spec/system/admin/assembly_admin_manages_assembly_component_permissions_spec.rb
decidim-assemblies/spec/system/admin/assembly_admin_manages_assembly_components_spec.rb
decidim-assemblies/spec/system/admin/assembly_admin_manages_assembly_moderations_spec.rb
decidim-budgets/spec/system/process_admin_manages_project_attachments_spec.rb
decidim-budgets/spec/system/process_admin_manages_projects_spec.rb
decidim-comments/spec/system/process_admin_manages_comments_spec.rb
decidim-debates/spec/system/process_admin_manages_debates_spec.rb
decidim-meetings/spec/system/process_admin_manages_meetings_attachments_spec.rb
decidim-meetings/spec/system/process_admin_manages_meetings_spec.rb
decidim-participatory_processes/spec/system/admin/participatory_process_admin_manages_participatory_process_admins_spec.rb
decidim-participatory_processes/spec/system/admin/participatory_process_admin_manages_participatory_process_attachments_spec.rb
decidim-participatory_processes/spec/system/admin/participatory_process_admin_manages_participatory_process_categories_spec.rb
decidim-participatory_processes/spec/system/admin/participatory_process_admin_manages_participatory_process_component_permissions_spec.rb
decidim-participatory_processes/spec/system/admin/participatory_process_admin_manages_participatory_process_components_spec.rb
decidim-participatory_processes/spec/system/admin/participatory_process_admin_manages_participatory_process_steps_spec.rb
decidim-participatory_processes/spec/system/admin/participatory_process_admin_manages_participatory_processes_spec.rb
decidim-proposals/spec/system/process_admin_manages_proposals_spec.rb
decidim-surveys/spec/system/process_admin_manages_surveys_spec.rb
Thoughts?
📋 Additional Data
None.
This is a Discussion Trigger
🎩 Description
Right now we have a lot of shared specs for the admin backend that test full scenarios for every admin role. This is expensive since we are talking about full suites with different scenarios that get run twice. However, there's normally no "role specific code" anywhere in our controllers, forms, views or commands, so in most situations either both roles fail or both pass. The only role specific code is usually inside cancancan ability files, which we normally backup with unit tests.
I haven't tried to grab numbers, but I think it'd be a matter of removing all of these files and see how much we save:
Thoughts?
📋 Additional Data
None.