Update the Readme to reflect that rounding can be configured.
Fix some minor linting errors that pylint flagged (happy to revert some of these if they were intentional).
Add a class method to allow consumers to set whether to apply per-operation rounding or not. If per-operation rounding is applied, it's also possible to configure the decimal rounding type. from decimal. Initially, I thought of using a config file to set this up. However, people installing this as a library probably wouldn't want to modify any bundled configuration. So it seemed like using class variables and setters would give more flexibility.
Preserve the default behaviour of the library by setting the rounding type to ROUND_HALF_UP and keeping rounding enabled.
Add tests around the default state of Money and the setters for the class variables.
First of all, thanks for reviewing this PR!
pylint
flagged (happy to revert some of these if they were intentional).decimal
. Initially, I thought of using a config file to set this up. However, people installing this as a library probably wouldn't want to modify any bundled configuration. So it seemed like using class variables and setters would give more flexibility.ROUND_HALF_UP
and keeping rounding enabled.Money
and the setters for the class variables.