614 Commits

Author SHA1 Message Date
Brandur
c7e515ba7b Use refunds.create + maintain backward compatibility 2015-11-19 14:10:33 -08:00
Brandur
bc66a38cd4 Update application fee refunds (round 2)
Follows up the patch in #351, which I now believe is wrong. The trouble
is that we were mutating the application fee object, when in reality an
application fee refund is actually a completely new resource (see
[creating a refund][create-refund]). This patch edits the original
attempt to cut a new object and updates tests accordingly.

Once again, related to stripe/stripe-php#208.

[create-refund]: https://stripe.com/docs/api#create_fee_refund
2015-11-18 12:25:52 -08:00
Brandur
02f68e45e7 Merge pull request #351 from stripe/brandur-refund-url-correction
Correct URL used for refunding application fees
2015-11-16 13:06:26 -08:00
Brandur
c7fd5b6baa Correct URL used for refunding application fees
This uses the new endpoint instead of the deprecated one.

Related to stripe/stripe-php#208.
2015-11-16 11:07:32 -08:00
Brandur
59e7752a00 Merge pull request #349 from stripe/brandur-remove-18-hacks
Remove test hacks introduced to work around Ruby 1.8 limitations
2015-11-04 17:44:54 -08:00
Brandur
03b64a059d Remove test hacks introduced to work around Ruby 1.8 limitations 2015-11-04 16:41:59 -08:00
Kyle Conroy
90c9d8efa2 Merge pull request #348 from stripe/ruby18
No longer support Ruby 1.8.7
2015-11-04 15:52:18 -08:00
Kyle Conroy
7bf660d124 Only support Ruby >= 1.9.3
Update the README, Gemfiles, and gemspec to remove all references to
Rubies < 1.9.3.
2015-11-04 14:52:56 -08:00
Brandur
159335078c For completeness, add a test case with an empty string 2015-11-03 13:38:59 -08:00
Brandur
5769eb7c1e More consistent spacing 2015-11-03 09:31:21 -08:00
Brandur
492b24894d Fix identation 2015-11-02 13:40:39 -08:00
Brandur
3eca0a4be4 Fix spacing between sentences 2015-11-02 13:17:19 -08:00
Brandur
878d753ff1 Bump version to 1.31.0 v1.31.0 2015-10-29 12:06:03 -07:00
Brandur
c1c5b56762 Merge pull request #345 from iloveitaly/verify-bank-account
Adding BankAccount#verify
2015-10-29 12:05:45 -07:00
Michael Bianco
7cd161dd03 Tests for BankAccount#verify 2015-10-29 15:01:53 -04:00
Michael Bianco
cdc1165fc5 Adding BankAccount#verify 2015-10-29 13:50:45 -04:00
Brandur
aab350e833 Bump version to 1.30.3 v1.30.3 2015-10-28 11:33:02 -07:00
Kyle Conroy
87077c5f19 Merge pull request #344 from stripe/brandur-patch-additional-owners
Special case the serialization of account's `additional_owners`
2015-10-27 16:03:35 -07:00
Brandur
ae4bb64c5a Call serialization of a changed array of hashes undefined for now 2015-10-27 11:53:36 -07:00
Brandur
431ef3b1f2 Special case the serialization of account's additional_owners
We attempt to do a special encoding trick when serializing
`additional_owners` under an account: when updating a value, we actually
send the update parameters up as an integer-indexed hash rather than an
array. So instead of this:

    field[]=item1&field[]=item2&field[]=item3

We send this:

    field[0]=item1&field[1]=item2&field[2]=item3

The trouble is that this had previously been built into the core library
as the default handling for all arrays. Because of this, it was
impossible to resize a non-`additional_owners` array as described in
more detail in #340.

This patch special cases `additional_owners` and brings sane behavior
back to normal arrays along with a test suite so that we try to build
some better guarantees around both the general and non-general cases.
2015-10-27 09:07:41 -07:00
Brandur
1182539ae4 Give code a little breathing room 2015-10-23 16:25:33 -07:00
Brandur
216218aeb0 Order hack to make 1.8.7 tests happy
It turns out that the tests had been working ... but mostly by virtue of
luck only. This should stabilize them more permanently.
2015-10-20 12:15:36 -07:00
Brandur
7dabbd444a Revert "Tweak faulty test logic"
This reverts commit eac89a1af140600904b8e723b20b9755545b6a6e.
2015-10-20 12:15:20 -07:00
Brandur
eac89a1af1 Tweak faulty test logic 2015-10-20 12:11:28 -07:00
Brandur
4ae867f540 Small introductory paragraph and feature list 2015-10-15 12:31:08 -07:00
Brandur
59c21b9d72 Merge pull request #336 from stripe/brandur-add-byebug
Add byebug/pry as a gem development dependency
2015-10-12 12:30:11 -07:00
Brandur
fe8350e3eb Bump version to 1.30.2 v1.30.2 2015-10-12 12:19:22 -07:00
Brandur
72162f455d Merge pull request #335 from stripe/brandur-fix-opts
Correct internal usage of `#update_attributes`
2015-10-12 12:18:40 -07:00
Brandur
a084df78ef Add byebug/pry as a gem development dependency
I find myself using these quite a bit when looking into problems, and
currently have to manually re-add them to the Gemfile/gemspec to get
them in the bundle and make them available in tests.

Here we gate the debugger to only come in for Ruby > 2 so as to avoid
problems with various compatibility problems between debuggers and
versions of Ruby. If there's a demand for a pre-Ruby 2 debugger, we can
add that separately.

Any major objections to this one? Thanks.
2015-10-12 12:10:39 -07:00
Brandur
a014d505bc Correct internal usage of #update_attributes
Unfortunately usage of `#update_attributes` had rolled over from a time
where `#update_attributes_with_options` was still in use and `opts` were
being passed in as an optional argument which had the result of further
nesting the hash internally (i.e. `:opts => { :opts => ... } }`).

This patch fixes that problem, adds a regression test to prevent it from
reappearing, and banishes the unused `#update_attributes_with_options`.

Fixes #334.
2015-10-12 12:08:44 -07:00
Brandur
2ea5c9c1a6 Fix spelling mistake in log 2015-10-10 22:08:53 -07:00
Brandur
20512b0ff7 Bump version to 1.30.1 v1.30.1 2015-10-10 12:54:44 -07:00
Brandur
452a89c02a Merge pull request #333 from stripe/brandur-remove-sort-hack
Remove sorting hack from parameter encoding
2015-10-10 12:50:07 -07:00
Brandur
77b1972a72 Use alternate testing approach to satisfy 1.8.7 2015-10-10 12:40:17 -07:00
Brandur
ca8b49e5fd Use array as input instead of hash (for 1.8.7 tests) 2015-10-10 12:12:57 -07:00
Brandur
395d16b8c1 Remove sorting hack from parameter encoding
I added this for a regression suite so that 1.8.7 could pass its tests,
but unfortunately this caused a regression in the way that parameters
are encoded for arrays of hashes. This patch reverts the change and adds
tests to detect a future regression.

(And 1.8.7 is expected to fail on this initial commit.)
2015-10-10 12:12:57 -07:00
Brandur
a41691d972 Merge pull request #332 from stripe/brandur-pass-all-filters-to-pages
Pass through all paging filters to descendent pages
2015-10-10 12:10:41 -07:00
Brandur
daf2789ad7 Pass through all paging filters to descendent pages
When additional filters were provided for pagination like an expansion
or a predicate, they would not propagate to any call after the first.
This patch addresses that issue by storing all filters and moving them
to any new page objects being created.

Fixes #331.
2015-10-09 13:58:23 -07:00
Brandur
cdb8599119 Bump version to 1.30.0 v1.30.0 2015-10-09 10:45:25 -07:00
Brandur
dc545752f1 Merge pull request #330 from stripe/brandur-stripe-object-deleted
Add `StripeObject#deleted?`
2015-10-09 10:25:48 -07:00
Brandur
900fa4b5dc Add StripeObject#deleted?
Adds a special helper to `StripeObject` that helps a developer to
determine whether or not an object is deleted.

As described originally in #257, this is a bit of a special case because
a non-deleted object does not respond with `deleted` as part of its
representation, so while a deleted object would have this accessor
available automatically, non-deleted objects would not. This made use of
the SDK awkward because the presence of the method was not guaranteed.

Fixes #257 (again, heh).
2015-10-09 10:16:59 -07:00
Brandur
b3912c1712 Merge branch 'brandur-deprecate-refresh-from'
Conflicts:
	lib/stripe/stripe_object.rb
2015-10-08 17:49:27 -07:00
Brandur
d09093fca1 Add some tests just to make sure everything is working as we expect 2015-10-08 17:43:20 -07:00
Brandur
1a96d7cf8e Use Gem:: deprecation method instead of a custom one 2015-10-08 17:24:59 -07:00
Brandur
d8dcf7c6af Merge pull request #329 from stripe/brandur-dial-down-update-attributes-safety
Have StripeObject#update_attributes reflect behavior of accessors
2015-10-08 17:08:09 -07:00
Brandur
925066efd4 Remove outdated option 2015-10-08 14:44:42 -07:00
Brandur
11dd870900 Have StripeObject#update_attributes reflect behavior of accessors
This dials down the safety of `StripeObject`'s `#update_attributes`
method so that it allows properties to be assigned that it doesn't yet
know about. We're doing this for a few reasons:

1. To reflect the current behavior of accessors (i.e. `obj.name = ...`)
   through `method_missing`.
2. To allow `#update_attributes` to assign properties on new projects
   that don't yet know their schema from an API call.

Fixes #324.
2015-10-08 14:04:11 -07:00
Brandur
3468698ce9 Make 1.8 happy 2015-10-08 10:03:18 -07:00
Brandur
8b255c7005 Deprecate StripeObject#refresh_from
As discussed in #325, this deprecates the public visibility of
`#refresh_from` (by renaming it). It also adds some deprecation
infrastructure to produce warnings when it's used.
2015-10-08 09:57:16 -07:00
Brandur
e75fd86ae5 Fix miswording of error message 2015-10-08 07:39:56 -07:00