Speed-up 'groups_controller_spec.rb' by using 'let_it_be'
What does this MR do and why?
35 less factory created, test file takes 11 seconds less to run.
Before
Test environment set up in 13.0365 seconds
..........[TEST PROF INFO] FactoryDoctor says: "Looks good to me!"
Finished in 27.83 seconds (files took 4 seconds to load)
10 examples, 0 failures
[TEST PROF INFO] Time spent in factories: 00:05.874 (17.97% of total time)
[TEST PROF INFO] Factories usage
Total: 59
Total top-level: 29
Total time: 00:05.874 (out of 00:33.986)
Total uniq factories: 9
total top-level total time time per call top-level time name
16 10 2.5074s 0.1567s 1.8220s user
10 10 1.3390s 0.1339s 1.3390s group
10 0 0.0839s 0.0084s 0.0000s namespace_settings
10 0 0.0644s 0.0064s 0.0000s namespace_ci_cd_settings
4 0 0.5600s 0.1400s 0.0000s namespace
4 4 2.2952s 0.5738s 2.2952s project
2 2 0.2719s 0.1359s 0.2719s group_saml_identity
2 2 0.1117s 0.0559s 0.1117s saml_provider
1 1 0.0346s 0.0346s 0.0346s license
After
Test environment set up in 8.360882 seconds
..........[TEST PROF INFO] FactoryDoctor says: "Looks good to me!"
Finished in 16.73 seconds (files took 3.27 seconds to load)
10 examples, 0 failures
[TEST PROF INFO] Time spent in factories: 00:03.109 (14.73% of total time)
[TEST PROF INFO] Factories usage
Total: 26
Total top-level: 13
Total time: 00:03.109 (out of 00:22.186)
Total uniq factories: 9
total top-level total time time per call top-level time name
9 4 1.2578s 0.1398s 0.7436s user
4 0 0.5217s 0.1304s 0.0000s namespace
4 4 1.9861s 0.4965s 1.9861s project
2 2 0.2393s 0.1197s 0.2393s group
2 0 0.0096s 0.0048s 0.0000s namespace_settings
2 0 0.0096s 0.0048s 0.0000s namespace_ci_cd_settings
1 1 0.0905s 0.0905s 0.0905s group_saml_identity
1 1 0.0327s 0.0327s 0.0327s saml_provider
1 1 0.0170s 0.0170s 0.0170s license
How to set up and validate locally
Numbered steps to set up and validate the change are strongly suggested.
MR acceptance checklist
This checklist encourages us to confirm any changes have been analyzed to reduce risks in quality, performance, reliability, security, and maintainability.
-
I have evaluated the MR acceptance checklist for this MR.
Edited by Peter Leitzen