Class: ExampleAppShowcaseMoneyUpdateTest

Inherits:
ExampleAppIntegrationTestCase show all
Defined in:
lib/installer_templates/example_app_tests/test/integration/example_app_showcase_money_update_test.rb

Overview

Regression for the inline attribute :update action.

The bug: ‘update` ignored the return value of `@object.save` and always re-rendered `field_show` from the in-memory `@object`. money-rails rejects an unparseable amount like “99.ace99” (the monetized validator fails, so `save` returns false and `amount_cents` is never written), yet the user saw a “saved” show of the unsaved in-memory value. Re-opening the edit revealed the old value – the success render was a lie.

The fix branches on ‘@object.save`: on failure it re-renders the EDIT field (with the rejected raw input still visible) instead of a fake show.