Skip to content

Fix SMA window size type validation - #15613

Closed
YYDW-i wants to merge 2 commits into
TheAlgorithms:masterfrom
YYDW-i:fix-sma-window-validation
Closed

YYDW-i wants to merge 2 commits into
TheAlgorithms:masterfrom
YYDW-i:fix-sma-window-validation

Conversation

@YYDW-i

@YYDW-i YYDW-i commented Oct 21, 2026

Copy link
Copy Markdown

Description

The simple_moving_average() function currently checks whether window_size is positive, but does not explicitly validate its type.

Passing a float such as 2.5 results in an unclear error during slicing.

This PR adds explicit type validation for window_size.

Changes

  • Reject non-integer window sizes with a TypeError.
  • Reject boolean values, which Python treats as a subclass of int.
  • Add a doctest for a floating-point window size.
  • Preserve the existing validation for non-positive integer values.

Testing

Added a doctest covering window_size=2.5.

Local tests have not been run. CI results are pending.

@algorithms-keeper algorithms-keeper Bot added the awaiting reviews This PR is ready to be reviewed label Oct 21, 2026
@algorithms-keeper

Copy link
Copy Markdown

Closing this pull request as invalid

@YYDW-i, this pull request is being closed as none of the checkboxes have been marked. It is important that you go through the checklist and mark the ones relevant to this pull request. Please read the Contributing guidelines.

If you're facing any problem on how to mark a checkbox, please read the following instructions:

  • Read a point one at a time and think if it is relevant to the pull request or not.
  • If it is, then mark it by putting a x between the square bracket like so: [x]

NOTE: Only [x] is supported so if you have put any other letter or symbol between the brackets, that will be marked as invalid. If that is the case then please open a new pull request with the appropriate changes.

@algorithms-keeper algorithms-keeper Bot removed the awaiting reviews This PR is ready to be reviewed label Oct 21, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant