In Ruby, it’s considered a better practice to use ranges when generating random numbers. This rule is important because it promotes the use of more idiomatic Ruby code and enhances readability. Using a range to generate a random number clearly shows the minimum and maximum values, which makes the code easier to understand.
Non-compliant code, such as rand(42) + 1, is less clear because it’s not immediately obvious what the range of possible values is. This can lead to confusion and potential bugs in the code.
To follow this rule, use a range when generating random numbers. For example, rand(1..42) is a much clearer way of generating a random number between 1 and 42. This makes it obvious to anyone reading the code what the range of possible values is, thus improving the readability and maintainability of your code.
Non-Compliant Code Examples
rand(42)+1
Compliant Code Examples
rand(1..42)
Seamless integrations. Try Datadog Code Analysis
Datadog Code Analysis
Try this rule and analyze your code with Datadog Code Analysis
How to use this rule
1
2
rulesets:- ruby-code-style # Rules to enforce Ruby code style.
Create a static-analysis.datadog.yml with the content above at the root of your repository
Use our free IDE Plugins or add Code Analysis scans to your CI pipelines