-
Notifications
You must be signed in to change notification settings - Fork 2
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Polish attendance index (Sourcery refactored) #501
Conversation
6020827
to
bb1abd9
Compare
bb1abd9
to
3e1c1b6
Compare
if int(formatted_amount) == formatted_amount: | ||
return int(formatted_amount) | ||
else: | ||
return formatted_amount | ||
return ( | ||
int(formatted_amount) | ||
if int(formatted_amount) == formatted_amount | ||
else formatted_amount | ||
) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Function formatted_amount
refactored with the following changes:
- Split conditional into multiple branches [×2] (
split-or-ifs
) - Merge duplicate blocks in conditional [×2] (
merge-duplicate-blocks
) - Replace if statement with if expression (
assign-if-exp
) - Remove redundant conditional [×4] (
remove-redundant-if
) - Replace multiple comparisons of same variable with
in
operator [×2] (merge-comparisons
)
app/models/events.py
Outdated
relative_portion_count = 0 | ||
|
||
# count portions of attendees with their portion size | ||
for attendee in self.attendees: | ||
relative_portion_count += getattr(attendee.portion_type, "size", 1) | ||
|
||
relative_portion_count = sum( | ||
getattr(attendee.portion_type, "size", 1) | ||
for attendee in self.attendees | ||
) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Function Event.relative_portion_count
refactored with the following changes:
- Convert for loop into call to sum() (
sum-comprehension
)
This removes the following comments ( why? ):
# count portions of attendees with their portion size
for i, recipe in enumerate(daily_recipes): | ||
if recipe.is_shopping: | ||
shopping_indexes.append(i) | ||
|
||
shopping_indexes.extend( | ||
i for i, recipe in enumerate(daily_recipes) if recipe.is_shopping | ||
) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Function Event.daily_recipes_split_by_shopping
refactored with the following changes:
- Replace a for append loop with list extend (
for-append-to-extend
)
return sum([t.count for t in self.event_portion_types]) | ||
return sum(t.count for t in self.event_portion_types) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Function Event.people_with_any_portion_type_count
refactored with the following changes:
- Replace unneeded comprehension with generator (
comprehension-to-generator
)
Pull Request #500 refactored by Sourcery.
If you're happy with these changes, merge this Pull Request using the Squash and merge strategy.
NOTE: As code is pushed to the original Pull Request, Sourcery will
re-run and update (force-push) this Pull Request with new refactorings as
necessary. If Sourcery finds no refactorings at any point, this Pull Request
will be closed automatically.
See our documentation here.
Run Sourcery locally
Reduce the feedback loop during development by using the Sourcery editor plugin:
Review changes via command line
To manually merge these changes, make sure you're on the
polish-attendance-index
branch, then run:Help us improve this pull request!