This reverts commit 492253b.
Associate subscriptions with the associated credit card on creation.
This has several advantages: - When looking at a source file, it's immediately obvious what are its dependencies to Ruby stdlib or 3rd-party libraries. - When changing a specific module in a way that one of the dependencies is no longer necessary, its easier to remember to remove the associated `require`. If all `require`s are in the main library file, in the long term it can be difficult to determine whether each of the require's are still needed. - Instead of loading whole of `active_support/core_ext`, cherry-pick parts of it that we need in the current file.
Ignored all parameters provided except the nonce. Only passed specs because the customer id was included in the credit card hash passed to the tokenize card method. The customer id has been removed from the test hash and now all parameters passed to .create are used in the creation of the credit card.
Stores credit card data identified by the returned "payment method nonce". Returned value may be used more than once.
Missing `require active_support`. This file sets up autoloading that the rest of ActiveSupport depends on. Other files might load without it, but it is not guaranteed.
`set_configuration` now also assigns Braintree `logger`, but `clear!` must be called first to create the log directory if it doesn't exist.
If the user of fake_braintree also uses Capybara for their acceptance tests, FakeBraintree::Server will have erroneously inherited the `server_host` setting that is not meant for it. Ensure that we bind to 127.0.0.1 always. This needs to bump Capybara version requirement to v2.2.0, which is when Capybara::Server started receiving the host argument.
In parallel testing mode via forked processes, it's not safe to use auto-assignment of ephemeral ports because it can lead to inermittent race conditions. For these kinds of test suites, it's necessary to be able to explicitly configure what port to use for spinnig up API server.