dnsimple 12.2.0 → 13.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/.github/dependabot.yml +7 -0
- data/.github/workflows/ci.yml +3 -4
- data/.github/workflows/release.yml +2 -2
- data/.github/workflows/sync-test-fixtures.yml +2 -2
- data/CHANGELOG.md +30 -0
- data/CONTRIBUTING.md +2 -0
- data/RELEASING.md +3 -1
- data/lib/dnsimple/client/domains_pushes.rb +6 -3
- data/lib/dnsimple/struct/account.rb +3 -0
- data/lib/dnsimple/struct/certificate.rb +0 -3
- data/lib/dnsimple/struct/domain.rb +2 -2
- data/lib/dnsimple/struct/domain_price.rb +2 -2
- data/lib/dnsimple/struct/domain_registration.rb +2 -2
- data/lib/dnsimple/struct/domain_transfer.rb +3 -0
- data/lib/dnsimple/struct/zone_record.rb +1 -0
- data/lib/dnsimple/version.rb +1 -1
- data/test/dnsimple/client/accounts_test.rb +11 -0
- data/test/dnsimple/client/billing_test.rb +14 -1
- data/test/dnsimple/client/certificates_test.rb +0 -1
- data/test/dnsimple/client/domains_pushes_test.rb +12 -0
- data/test/dnsimple/client/domains_test.rb +1 -1
- data/test/dnsimple/client/registrar_test.rb +10 -7
- data/test/fixtures.http/accounts/success-account.http +1 -1
- data/test/fixtures.http/accounts/success-user.http +1 -1
- data/test/fixtures.http/cancelDomainTransfer/success.http +1 -1
- data/test/fixtures.http/getDomain/success.http +1 -1
- data/test/fixtures.http/getDomainPrices/success.http +1 -1
- data/test/fixtures.http/getDomainRegistration/success.http +1 -1
- data/test/fixtures.http/getDomainTransfer/success.http +1 -1
- data/test/fixtures.http/listAccounts/success-account.http +1 -1
- data/test/fixtures.http/listAccounts/success-user.http +1 -1
- data/test/fixtures.http/listCharges/success.http +1 -1
- data/test/fixtures.http/registerDomain/success.http +1 -1
- data/test/fixtures.http/transferDomain/success.http +1 -1
- data/test/fixtures.http/whoami/success-account.http +1 -1
- data/test/fixtures.http/whoami/success.http +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 637783627a04f5443865b91941ff82803977bf89357346098125d5997e9a39dd
|
|
4
|
+
data.tar.gz: d1558294e61dd2f131124d5f53ca72c530a8266d8f91275e5a396eebc38071e3
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 1a5328d695bb89fc66b0bd9df582d560c66f0517a627007be24eeac63029417f042bf6fa455e1795103ef38e2df4a2805e85bcf41d5b0cf2db97f2a1a8387dad
|
|
7
|
+
data.tar.gz: de5a226b078b273fe798088a13c494464364d4dc7808a8e1f486c26e6324c6a54834d76ed9d91583dd7f5ade984a72e7feca49bfde44c044cd03cc1d11cb74b4
|
data/.github/dependabot.yml
CHANGED
data/.github/workflows/ci.yml
CHANGED
|
@@ -18,7 +18,7 @@ jobs:
|
|
|
18
18
|
runs-on: ubuntu-latest
|
|
19
19
|
steps:
|
|
20
20
|
- name: Checkout Code
|
|
21
|
-
uses: actions/checkout@
|
|
21
|
+
uses: actions/checkout@v7
|
|
22
22
|
- name: Run markdownlint-cli
|
|
23
23
|
uses: nosborn/github-action-markdown-cli@v3.5.0
|
|
24
24
|
with:
|
|
@@ -38,11 +38,10 @@ jobs:
|
|
|
38
38
|
- '3.4'
|
|
39
39
|
- '4.0'
|
|
40
40
|
- 'ruby-head'
|
|
41
|
-
- 'truffleruby-head'
|
|
42
41
|
steps:
|
|
43
|
-
- uses: actions/checkout@
|
|
42
|
+
- uses: actions/checkout@v7
|
|
44
43
|
- name: Set up Ruby
|
|
45
|
-
uses: ruby/setup-ruby@v1
|
|
44
|
+
uses: ruby/setup-ruby@v1.322.0
|
|
46
45
|
with:
|
|
47
46
|
ruby-version: ${{ matrix.ruby-version }}
|
|
48
47
|
bundler-cache: true
|
|
@@ -11,7 +11,7 @@ jobs:
|
|
|
11
11
|
runs-on: ubuntu-latest
|
|
12
12
|
steps:
|
|
13
13
|
- name: Wait for CI to pass
|
|
14
|
-
uses: lewagon/wait-on-check-action@v1.
|
|
14
|
+
uses: lewagon/wait-on-check-action@v1.9.1
|
|
15
15
|
with:
|
|
16
16
|
ref: ${{ github.sha }}
|
|
17
17
|
running-workflow-name: Wait for CI
|
|
@@ -23,7 +23,7 @@ jobs:
|
|
|
23
23
|
needs: wait-for-ci
|
|
24
24
|
runs-on: ubuntu-latest
|
|
25
25
|
steps:
|
|
26
|
-
- uses: actions/checkout@
|
|
26
|
+
- uses: actions/checkout@v7
|
|
27
27
|
|
|
28
28
|
- name: Release Gem
|
|
29
29
|
uses: simplyqio/publish-rubygems-action@2.0.0
|
|
@@ -9,7 +9,7 @@ jobs:
|
|
|
9
9
|
runs-on: ubuntu-latest
|
|
10
10
|
steps:
|
|
11
11
|
- name: Checkout repository
|
|
12
|
-
uses: actions/checkout@
|
|
12
|
+
uses: actions/checkout@v7
|
|
13
13
|
- name: Sync fixtures
|
|
14
14
|
id: sync
|
|
15
15
|
run: |
|
|
@@ -19,7 +19,7 @@ jobs:
|
|
|
19
19
|
rsync -a --delete "$TMP_DIR/dnsimple-developer-main/fixtures/v2/api/" test/fixtures.http/
|
|
20
20
|
echo "now=$(date +'%Y-%m-%d %H:%M:%S')" >> "$GITHUB_OUTPUT"
|
|
21
21
|
- name: Create PR with synced fixtures
|
|
22
|
-
uses: peter-evans/create-pull-request@
|
|
22
|
+
uses: peter-evans/create-pull-request@v8
|
|
23
23
|
with:
|
|
24
24
|
sign-commits: true
|
|
25
25
|
add-paths: test/fixtures.http
|
data/CHANGELOG.md
CHANGED
|
@@ -2,6 +2,36 @@
|
|
|
2
2
|
|
|
3
3
|
This project uses [Semantic Versioning 2.0.0](http://semver.org/), the format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/).
|
|
4
4
|
|
|
5
|
+
## 13.1.0 - 2026-09-17
|
|
6
|
+
|
|
7
|
+
### Deprecated
|
|
8
|
+
|
|
9
|
+
- Deprecated `parent_id` in `Dnsimple::Struct::ZoneRecord`. The value is always `nil`, and the attribute will be removed in the next major version. (#486)
|
|
10
|
+
|
|
11
|
+
## 13.0.0 - 2026-05-05
|
|
12
|
+
|
|
13
|
+
### Changed
|
|
14
|
+
|
|
15
|
+
- **BREAKING**: Renamed `trustee_service` to `trustee` in `Domain`, `DomainRegistration`, and `DomainTransfer`. (#472)
|
|
16
|
+
- **BREAKING**: Renamed `trustee_service_price` to `trustee_price` in `DomainPrice`. (#472)
|
|
17
|
+
- Updated the `listCharges` test fixture to include a certificate purchase entry demonstrating that `product_reference` is a string even when it represents a numeric ID. (#468)
|
|
18
|
+
|
|
19
|
+
### Removed
|
|
20
|
+
|
|
21
|
+
- **BREAKING**: Removed the deprecated `contact_id` attribute from the `Certificate` struct. The field was deprecated on 2022-05-17 and is no longer required for certificate operations. (#465)
|
|
22
|
+
|
|
23
|
+
## 12.3.0 - 2026-04-15
|
|
24
|
+
|
|
25
|
+
### Added
|
|
26
|
+
|
|
27
|
+
- Added `new_account_identifier` option to `initiate_push` for initiating domain pushes by account identifier. (#462)
|
|
28
|
+
- Added `name` to `Account`. (#462)
|
|
29
|
+
- Added support for trustee service in domain transfers. (#464)
|
|
30
|
+
|
|
31
|
+
### Deprecated
|
|
32
|
+
|
|
33
|
+
- Deprecated `new_account_email` option in `initiate_push`. Use `new_account_identifier` instead. (#462)
|
|
34
|
+
|
|
5
35
|
## 12.2.0 - 2026-03-23
|
|
6
36
|
|
|
7
37
|
### Added
|
data/CONTRIBUTING.md
CHANGED
|
@@ -32,3 +32,5 @@ When you submit a PR, tests will also be run on the [continuous integration envi
|
|
|
32
32
|
## Changelog
|
|
33
33
|
|
|
34
34
|
We follow the [Common Changelog](https://common-changelog.org/) format for changelog entries.
|
|
35
|
+
|
|
36
|
+
Add new entries to the `## Unreleased` section at the top of `CHANGELOG.md`. When a change requires a major version, append `(requires major version)` to its entry, for example `- Drop support for Ruby < X.Y (requires major version)`. The release process uses this tag to select the next version.
|
data/RELEASING.md
CHANGED
|
@@ -21,6 +21,8 @@ This document describes the steps to release a new version of DNSimple/Ruby.
|
|
|
21
21
|
- **MINOR** version for backwards-compatible functionality additions
|
|
22
22
|
- **PATCH** version for backwards-compatible bug fixes
|
|
23
23
|
|
|
24
|
+
Check the `## Unreleased` section in `CHANGELOG.md` for entries tagged `(requires major version)`. Any such entry requires a **MAJOR** version, whatever the other entries are. Raising the minimum supported Ruby version is always a breaking change, so its changelog entry must carry this tag.
|
|
25
|
+
|
|
24
26
|
2. **Update the version file** with the new version
|
|
25
27
|
|
|
26
28
|
Edit `version.rb` and update the `VERSION` constant:
|
|
@@ -37,7 +39,7 @@ This document describes the steps to release a new version of DNSimple/Ruby.
|
|
|
37
39
|
|
|
38
40
|
4. **Update the changelog** with the new version
|
|
39
41
|
|
|
40
|
-
Finalize the `##
|
|
42
|
+
Finalize the `## Unreleased` section in `CHANGELOG.md` assigning the version.
|
|
41
43
|
|
|
42
44
|
5. **Commit the new version**
|
|
43
45
|
|
|
@@ -7,19 +7,22 @@ module Dnsimple
|
|
|
7
7
|
#
|
|
8
8
|
# @see https://developer.dnsimple.com/v2/domains/pushes/#initiate
|
|
9
9
|
#
|
|
10
|
-
# @example Initiate a domain
|
|
10
|
+
# @example Initiate a domain push for example.com using a domain push identifier:
|
|
11
|
+
# client.domains.initiate_push(1010, "example.com", new_account_identifier: "abc123")
|
|
12
|
+
#
|
|
13
|
+
# @example Initiate a domain push for example.com using an account email (deprecated):
|
|
11
14
|
# client.domains.initiate_push(1010, "example.com", new_account_email: "admin@target-account.test")
|
|
12
15
|
#
|
|
13
16
|
# @param account_id [Integer] the account ID
|
|
14
17
|
# @param domain_id [#to_s] The domain ID or domain name
|
|
15
18
|
# @param attributes [Hash]
|
|
16
|
-
# @option attributes [String] :
|
|
19
|
+
# @option attributes [String] :new_account_identifier the target account identifier
|
|
20
|
+
# @option attributes [String] :new_account_email the target account email (deprecated, use :new_account_identifier instead)
|
|
17
21
|
# @param options [Hash]
|
|
18
22
|
# @return [Dnsimple::Response<Dnsimple::Struct::DomainPush>]
|
|
19
23
|
#
|
|
20
24
|
# @raise [Dnsimple::RequestError]
|
|
21
25
|
def initiate_push(account_id, domain_id, attributes, options = {})
|
|
22
|
-
Extra.validate_mandatory_attributes(attributes, [:new_account_email])
|
|
23
26
|
response = client.post(Client.versioned("/%s/domains/%s/pushes" % [account_id, domain_id]), attributes, options)
|
|
24
27
|
|
|
25
28
|
Dnsimple::Response.new(response, Struct::DomainPush.new(response["data"]))
|
|
@@ -9,6 +9,9 @@ module Dnsimple
|
|
|
9
9
|
# @return [String] The account email.
|
|
10
10
|
attr_accessor :email
|
|
11
11
|
|
|
12
|
+
# @return [String] The account name.
|
|
13
|
+
attr_accessor :name
|
|
14
|
+
|
|
12
15
|
# @return [String] The identifier of the plan the account is subscribed to.
|
|
13
16
|
attr_accessor :plan_identifier
|
|
14
17
|
end
|
|
@@ -27,8 +27,8 @@ module Dnsimple
|
|
|
27
27
|
# @return [Bool] True if the domain WHOIS privacy is enabled, false otherwise.
|
|
28
28
|
attr_accessor :private_whois
|
|
29
29
|
|
|
30
|
-
# @return [Bool] True if the domain
|
|
31
|
-
attr_accessor :
|
|
30
|
+
# @return [Bool] True if the domain trustee is enabled, false otherwise.
|
|
31
|
+
attr_accessor :trustee
|
|
32
32
|
|
|
33
33
|
# @return [String] The timestamp when domain will expire.
|
|
34
34
|
attr_accessor :expires_at
|
|
@@ -18,8 +18,8 @@ module Dnsimple
|
|
|
18
18
|
# @return [Float] The price for transfer
|
|
19
19
|
attr_accessor :transfer_price
|
|
20
20
|
|
|
21
|
-
# @return [Float] The
|
|
22
|
-
attr_accessor :
|
|
21
|
+
# @return [Float] The trustee price
|
|
22
|
+
attr_accessor :trustee_price
|
|
23
23
|
end
|
|
24
24
|
end
|
|
25
25
|
end
|
|
@@ -24,8 +24,8 @@ module Dnsimple
|
|
|
24
24
|
# @return [Bool] True if the domain WHOIS privacy was requested.
|
|
25
25
|
attr_accessor :whois_privacy
|
|
26
26
|
|
|
27
|
-
# @return [Bool] True if
|
|
28
|
-
attr_accessor :
|
|
27
|
+
# @return [Bool] True if trustee was requested.
|
|
28
|
+
attr_accessor :trustee
|
|
29
29
|
|
|
30
30
|
# @return [String] When the domain renewal was created in DNSimple.
|
|
31
31
|
attr_accessor :created_at
|
|
@@ -21,6 +21,9 @@ module Dnsimple
|
|
|
21
21
|
# @return [Bool] True if the domain WHOIS privacy was requested.
|
|
22
22
|
attr_accessor :whois_privacy
|
|
23
23
|
|
|
24
|
+
# @return [Bool] True if trustee was requested.
|
|
25
|
+
attr_accessor :trustee
|
|
26
|
+
|
|
24
27
|
# @return [String,nil] The reason if transfer failed.
|
|
25
28
|
attr_accessor :status_description
|
|
26
29
|
|
|
@@ -10,6 +10,7 @@ module Dnsimple
|
|
|
10
10
|
attr_accessor :zone_id
|
|
11
11
|
|
|
12
12
|
# @return [Integer] The ID of the parent record, if this record is dependent on another record.
|
|
13
|
+
# @deprecated The value is always nil, and the attribute will be removed in the next major version.
|
|
13
14
|
attr_accessor :parent_id
|
|
14
15
|
|
|
15
16
|
# @return [String] The type of record, in uppercase.
|
data/lib/dnsimple/version.rb
CHANGED
|
@@ -30,4 +30,15 @@ class AccountsTest < Minitest::Test
|
|
|
30
30
|
assert_kind_of(Dnsimple::Struct::Account, result.first)
|
|
31
31
|
assert_kind_of(Dnsimple::Struct::Account, result.last)
|
|
32
32
|
end
|
|
33
|
+
|
|
34
|
+
test "returns the account name" do
|
|
35
|
+
stub_request(:get, %r{/v2/accounts$})
|
|
36
|
+
.to_return(read_http_fixture("listAccounts/success-account.http"))
|
|
37
|
+
|
|
38
|
+
response = @subject.accounts
|
|
39
|
+
|
|
40
|
+
result = response.data.first
|
|
41
|
+
|
|
42
|
+
assert_equal("John", result.name)
|
|
43
|
+
end
|
|
33
44
|
end
|
|
@@ -41,7 +41,7 @@ class BillingTest < Minitest::Test
|
|
|
41
41
|
|
|
42
42
|
assert_kind_of(Dnsimple::PaginatedResponse, response)
|
|
43
43
|
assert_kind_of(Array, response.data)
|
|
44
|
-
assert_equal(
|
|
44
|
+
assert_equal(4, response.data.size)
|
|
45
45
|
|
|
46
46
|
response.data.each do |result|
|
|
47
47
|
assert_kind_of(Dnsimple::Struct::Charge, result)
|
|
@@ -57,6 +57,19 @@ class BillingTest < Minitest::Test
|
|
|
57
57
|
assert_equal("14.5", response.data[0].items[0].amount.to_s("F"))
|
|
58
58
|
end
|
|
59
59
|
|
|
60
|
+
test "returns certificate-purchase charges with string product reference" do
|
|
61
|
+
stub_request(:get, %r{/v2/#{@account_id}/billing/charges})
|
|
62
|
+
.to_return(read_http_fixture("listCharges/success.http"))
|
|
63
|
+
|
|
64
|
+
response = @subject.charges(@account_id)
|
|
65
|
+
cert_charge = response.data[3]
|
|
66
|
+
|
|
67
|
+
assert_equal("5-2", cert_charge.reference)
|
|
68
|
+
assert_equal("certificate-purchase", cert_charge.items[0].product_type)
|
|
69
|
+
assert_kind_of(String, cert_charge.items[0].product_reference)
|
|
70
|
+
assert_equal("42", cert_charge.items[0].product_reference)
|
|
71
|
+
end
|
|
72
|
+
|
|
60
73
|
test "supports filters" do
|
|
61
74
|
stub_request(:get, %r{/v2/#{@account_id}/billing/charges})
|
|
62
75
|
.to_return(read_http_fixture("listCharges/success.http"))
|
|
@@ -134,7 +134,6 @@ class CertificatesTest < Minitest::Test
|
|
|
134
134
|
assert_kind_of(Dnsimple::Struct::Certificate, result)
|
|
135
135
|
assert_equal(101967, result.id)
|
|
136
136
|
assert_equal(289333, result.domain_id)
|
|
137
|
-
assert_equal(2511, result.contact_id)
|
|
138
137
|
assert_equal("www.bingo.pizza", result.common_name)
|
|
139
138
|
assert_empty(result.alternate_names)
|
|
140
139
|
assert_equal(1, result.years)
|
|
@@ -36,6 +36,18 @@ class DomainsPushesTest < Minitest::Test
|
|
|
36
36
|
assert_kind_of(Integer, result.id)
|
|
37
37
|
end
|
|
38
38
|
|
|
39
|
+
test "initiate push with account identifier builds correct request" do
|
|
40
|
+
stub_request(:post, %r{/v2/#{@account_id}/domains/#{@domain_id}/pushes$})
|
|
41
|
+
.to_return(read_http_fixture("initiatePush/success.http"))
|
|
42
|
+
|
|
43
|
+
attributes = { new_account_identifier: "abc123" }
|
|
44
|
+
@subject.initiate_push(@account_id, @domain_id, attributes)
|
|
45
|
+
|
|
46
|
+
assert_requested(:post, "https://api.dnsimple.test/v2/#{@account_id}/domains/#{@domain_id}/pushes",
|
|
47
|
+
body: attributes,
|
|
48
|
+
headers: { "Accept" => "application/json" })
|
|
49
|
+
end
|
|
50
|
+
|
|
39
51
|
test "pushes builds correct request" do
|
|
40
52
|
stub_request(:get, %r{/v2/2020/pushes})
|
|
41
53
|
.to_return(read_http_fixture("listPushes/success.http"))
|
|
@@ -172,7 +172,7 @@ class DomainsTest < Minitest::Test
|
|
|
172
172
|
assert_equal("registered", result.state)
|
|
173
173
|
refute(result.auto_renew)
|
|
174
174
|
refute(result.private_whois)
|
|
175
|
-
refute(result.
|
|
175
|
+
refute(result.trustee)
|
|
176
176
|
assert_equal("2021-06-05T02:15:00Z", result.expires_at)
|
|
177
177
|
assert_equal("2020-06-04T19:15:14Z", result.created_at)
|
|
178
178
|
assert_equal("2020-06-04T19:15:21Z", result.updated_at)
|
|
@@ -62,10 +62,10 @@ class RegistrarTest < Minitest::Test
|
|
|
62
62
|
assert_in_delta(20.0, result.registration_price)
|
|
63
63
|
assert_in_delta(20.0, result.renewal_price)
|
|
64
64
|
assert_in_delta(20.0, result.transfer_price)
|
|
65
|
-
if result.
|
|
66
|
-
assert_nil result.
|
|
65
|
+
if result.trustee_price.nil?
|
|
66
|
+
assert_nil result.trustee_price
|
|
67
67
|
else
|
|
68
|
-
assert_in_delta(20.0, result.
|
|
68
|
+
assert_in_delta(20.0, result.trustee_price)
|
|
69
69
|
end
|
|
70
70
|
end
|
|
71
71
|
|
|
@@ -83,7 +83,7 @@ class RegistrarTest < Minitest::Test
|
|
|
83
83
|
stub_request(:post, %r{/v2/#{@account_id}/registrar/domains/.+/registrations$})
|
|
84
84
|
.to_return(read_http_fixture("registerDomain/success.http"))
|
|
85
85
|
|
|
86
|
-
attributes = { registrant_id: "10",
|
|
86
|
+
attributes = { registrant_id: "10", trustee: true }
|
|
87
87
|
@subject.register_domain(@account_id, domain_name = "example.com", attributes)
|
|
88
88
|
|
|
89
89
|
assert_requested(:post, "https://api.dnsimple.test/v2/#{@account_id}/registrar/domains/#{domain_name}/registrations",
|
|
@@ -105,7 +105,7 @@ class RegistrarTest < Minitest::Test
|
|
|
105
105
|
assert_kind_of(Dnsimple::Struct::DomainRegistration, result)
|
|
106
106
|
assert_kind_of(Integer, result.id)
|
|
107
107
|
assert_kind_of(Integer, result.domain_id)
|
|
108
|
-
refute(result.
|
|
108
|
+
refute(result.trustee)
|
|
109
109
|
end
|
|
110
110
|
|
|
111
111
|
test "register domain when attributes are incomplete raises argument error" do
|
|
@@ -138,7 +138,7 @@ class RegistrarTest < Minitest::Test
|
|
|
138
138
|
assert_kind_of(Dnsimple::Struct::DomainRegistration, result)
|
|
139
139
|
assert_kind_of(Integer, result.id)
|
|
140
140
|
assert_kind_of(Integer, result.domain_id)
|
|
141
|
-
refute(result.
|
|
141
|
+
refute(result.trustee)
|
|
142
142
|
end
|
|
143
143
|
|
|
144
144
|
|
|
@@ -211,7 +211,7 @@ class RegistrarTest < Minitest::Test
|
|
|
211
211
|
stub_request(:post, %r{/v2/#{@account_id}/registrar/domains/.+/transfers$})
|
|
212
212
|
.to_return(read_http_fixture("transferDomain/success.http"))
|
|
213
213
|
|
|
214
|
-
attributes = { registrant_id: "10", auth_code: "x1y2z3" }
|
|
214
|
+
attributes = { registrant_id: "10", auth_code: "x1y2z3", trustee: true }
|
|
215
215
|
@subject.transfer_domain(@account_id, domain_name = "example.com", attributes)
|
|
216
216
|
|
|
217
217
|
assert_requested(:post, "https://api.dnsimple.test/v2/#{@account_id}/registrar/domains/#{domain_name}/transfers",
|
|
@@ -233,6 +233,7 @@ class RegistrarTest < Minitest::Test
|
|
|
233
233
|
assert_kind_of(Dnsimple::Struct::DomainTransfer, result)
|
|
234
234
|
assert_kind_of(Integer, result.id)
|
|
235
235
|
assert_kind_of(Integer, result.domain_id)
|
|
236
|
+
refute(result.trustee)
|
|
236
237
|
end
|
|
237
238
|
|
|
238
239
|
test "transfer domain when attributes are incomplete raises argument error" do
|
|
@@ -288,6 +289,7 @@ class RegistrarTest < Minitest::Test
|
|
|
288
289
|
assert_equal("cancelled", result.state)
|
|
289
290
|
refute(result.auto_renew)
|
|
290
291
|
refute(result.whois_privacy)
|
|
292
|
+
refute(result.trustee)
|
|
291
293
|
assert_equal("Canceled by customer", result.status_description)
|
|
292
294
|
assert_equal("2020-06-05T18:08:00Z", result.created_at)
|
|
293
295
|
assert_equal("2020-06-05T18:10:01Z", result.updated_at)
|
|
@@ -321,6 +323,7 @@ class RegistrarTest < Minitest::Test
|
|
|
321
323
|
assert_equal("transferring", result.state)
|
|
322
324
|
refute(result.auto_renew)
|
|
323
325
|
refute(result.whois_privacy)
|
|
326
|
+
refute(result.trustee)
|
|
324
327
|
assert_nil(result.status_description)
|
|
325
328
|
assert_equal("2020-06-05T18:08:00Z", result.created_at)
|
|
326
329
|
assert_equal("2020-06-05T18:08:04Z", result.updated_at)
|
|
@@ -17,4 +17,4 @@ x-permitted-cross-domain-policies: none
|
|
|
17
17
|
x-xss-protection: 1; mode=block
|
|
18
18
|
strict-transport-security: max-age=31536000
|
|
19
19
|
|
|
20
|
-
{"data":[{"id":123,"email":"john@example.com","plan_identifier":"dnsimple-personal","created_at":"2011-09-11T17:15:58Z","updated_at":"2016-06-03T15:02:26Z"}]}
|
|
20
|
+
{"data":[{"id":123,"email":"john@example.com","name":"John","plan_identifier":"dnsimple-personal","created_at":"2011-09-11T17:15:58Z","updated_at":"2016-06-03T15:02:26Z"}]}
|
|
@@ -17,5 +17,5 @@ x-permitted-cross-domain-policies: none
|
|
|
17
17
|
x-xss-protection: 1; mode=block
|
|
18
18
|
strict-transport-security: max-age=31536000
|
|
19
19
|
|
|
20
|
-
{"data":[{"id":123,"email":"john@example.com","plan_identifier":"dnsimple-personal","created_at":"2011-09-11T17:15:58Z","updated_at":"2016-06-03T15:02:26Z"},{"id":456,"email":"ops@company.com","plan_identifier":"teams-v1-monthly","created_at":"2012-03-16T16:02:54Z","updated_at":"2016-06-14T11:23:16Z"}]}
|
|
20
|
+
{"data":[{"id":123,"email":"john@example.com","name":"John","plan_identifier":"dnsimple-personal","created_at":"2011-09-11T17:15:58Z","updated_at":"2016-06-03T15:02:26Z"},{"id":456,"email":"ops@company.com","name":"Ops Company","plan_identifier":"teams-v1-monthly","created_at":"2012-03-16T16:02:54Z","updated_at":"2016-06-14T11:23:16Z"}]}
|
|
21
21
|
|
|
@@ -15,4 +15,4 @@ x-xss-protection: 1; mode=block
|
|
|
15
15
|
x-download-options: noopen
|
|
16
16
|
x-permitted-cross-domain-policies: none
|
|
17
17
|
|
|
18
|
-
{"data":{"id":361,"domain_id":182245,"registrant_id":2715,"state":"transferring","auto_renew":false,"whois_privacy":false,"status_description":null,"created_at":"2020-06-05T18:08:00Z","updated_at":"2020-06-05T18:08:04Z"}}
|
|
18
|
+
{"data":{"id":361,"domain_id":182245,"registrant_id":2715,"state":"transferring","auto_renew":false,"whois_privacy":false,"trustee":false,"status_description":null,"created_at":"2020-06-05T18:08:00Z","updated_at":"2020-06-05T18:08:04Z"}}
|
|
@@ -17,4 +17,4 @@ x-download-options: noopen
|
|
|
17
17
|
x-permitted-cross-domain-policies: none
|
|
18
18
|
strict-transport-security: max-age=31536000
|
|
19
19
|
|
|
20
|
-
{"data":{"id":181984,"account_id":1385,"registrant_id":2715,"name":"example-alpha.com","unicode_name":"example-alpha.com","state":"registered","auto_renew":false,"private_whois":false,"
|
|
20
|
+
{"data":{"id":181984,"account_id":1385,"registrant_id":2715,"name":"example-alpha.com","unicode_name":"example-alpha.com","state":"registered","auto_renew":false,"private_whois":false,"trustee":false,"expires_on":"2021-06-05","expires_at":"2021-06-05T02:15:00Z","created_at":"2020-06-04T19:15:14Z","updated_at":"2020-06-04T19:15:21Z"}}
|
|
@@ -18,4 +18,4 @@ x-permitted-cross-domain-policies: none
|
|
|
18
18
|
content-security-policy: frame-ancestors 'none'
|
|
19
19
|
strict-transport-security: max-age=31536000
|
|
20
20
|
|
|
21
|
-
{"data":{"domain":"bingo.pizza","premium":true,"registration_price":20.0,"renewal_price":20.0,"transfer_price":20.0,"restore_price":20.0,"
|
|
21
|
+
{"data":{"domain":"bingo.pizza","premium":true,"registration_price":20.0,"renewal_price":20.0,"transfer_price":20.0,"restore_price":20.0,"trustee_price":20.0}}
|
|
@@ -17,4 +17,4 @@ x-download-options: noopen
|
|
|
17
17
|
x-permitted-cross-domain-policies: none
|
|
18
18
|
strict-transport-security: max-age=31536000
|
|
19
19
|
|
|
20
|
-
{"data":{"id":361,"domain_id":104040,"registrant_id":2715,"period":1,"state":"registering","auto_renew":false,"whois_privacy":false,"
|
|
20
|
+
{"data":{"id":361,"domain_id":104040,"registrant_id":2715,"period":1,"state":"registering","auto_renew":false,"whois_privacy":false,"trustee":false,"created_at":"2023-01-27T17:44:32Z","updated_at":"2023-01-27T17:44:40Z"}}
|
|
@@ -17,4 +17,4 @@ x-download-options: noopen
|
|
|
17
17
|
x-permitted-cross-domain-policies: none
|
|
18
18
|
strict-transport-security: max-age=31536000
|
|
19
19
|
|
|
20
|
-
{"data":{"id":361,"domain_id":182245,"registrant_id":2715,"state":"cancelled","auto_renew":false,"whois_privacy":false,"status_description":"Canceled by customer","created_at":"2020-06-05T18:08:00Z","updated_at":"2020-06-05T18:10:01Z"}}
|
|
20
|
+
{"data":{"id":361,"domain_id":182245,"registrant_id":2715,"state":"cancelled","auto_renew":false,"whois_privacy":false,"trustee":false,"status_description":"Canceled by customer","created_at":"2020-06-05T18:08:00Z","updated_at":"2020-06-05T18:10:01Z"}}
|
|
@@ -17,4 +17,4 @@ x-permitted-cross-domain-policies: none
|
|
|
17
17
|
x-xss-protection: 1; mode=block
|
|
18
18
|
strict-transport-security: max-age=31536000
|
|
19
19
|
|
|
20
|
-
{"data":[{"id":123,"email":"john@example.com","plan_identifier":"dnsimple-personal","created_at":"2011-09-11T17:15:58Z","updated_at":"2016-06-03T15:02:26Z"}]}
|
|
20
|
+
{"data":[{"id":123,"email":"john@example.com","name":"John","plan_identifier":"dnsimple-personal","created_at":"2011-09-11T17:15:58Z","updated_at":"2016-06-03T15:02:26Z"}]}
|
|
@@ -17,4 +17,4 @@ x-permitted-cross-domain-policies: none
|
|
|
17
17
|
x-xss-protection: 1; mode=block
|
|
18
18
|
strict-transport-security: max-age=31536000
|
|
19
19
|
|
|
20
|
-
{"data":[{"id":123,"email":"john@example.com","plan_identifier":"dnsimple-personal","created_at":"2011-09-11T17:15:58Z","updated_at":"2016-06-03T15:02:26Z"},{"id":456,"email":"ops@company.com","plan_identifier":"teams-v1-monthly","created_at":"2012-03-16T16:02:54Z","updated_at":"2016-06-14T11:23:16Z"}]}
|
|
20
|
+
{"data":[{"id":123,"email":"john@example.com","name":"John","plan_identifier":"dnsimple-personal","created_at":"2011-09-11T17:15:58Z","updated_at":"2016-06-03T15:02:26Z"},{"id":456,"email":"ops@company.com","name":"Ops Company","plan_identifier":"teams-v1-monthly","created_at":"2012-03-16T16:02:54Z","updated_at":"2016-06-14T11:23:16Z"}]}
|
|
@@ -9,4 +9,4 @@ cache-control: no-store, must-revalidate, private, max-age=0
|
|
|
9
9
|
x-request-id: a57a87c8-626a-4361-9fb8-b55ca9be8e5d
|
|
10
10
|
x-runtime: 0.060526
|
|
11
11
|
|
|
12
|
-
{"data":[{"invoiced_at":"2023-08-17T05:53:36Z","total_amount":"14.50","balance_amount":"0.00","reference":"1-2","state":"collected","items":[{"description":"Register bubble-registered.com","amount":"14.50","product_id":1,"product_type":"domain-registration","product_reference":"bubble-registered.com"}]},{"invoiced_at":"2023-08-17T05:57:53Z","total_amount":"14.50","balance_amount":"0.00","reference":"2-2","state":"refunded","items":[{"description":"Register example.com","amount":"14.50","product_id":2,"product_type":"domain-registration","product_reference":"example.com"}]},{"invoiced_at":"2023-10-24T07:49:05Z","total_amount":"1099999.99","balance_amount":"0.00","reference":"4-2","state":"collected","items":[{"description":"Test Line Item 1","amount":"99999.99","product_id":null,"product_type":"manual","product_reference":null},{"description":"Test Line Item 2","amount":"1000000.00","product_id":null,"product_type":"manual","product_reference":null}]}],"pagination":{"current_page":1,"per_page":30,"total_entries":
|
|
12
|
+
{"data":[{"invoiced_at":"2023-08-17T05:53:36Z","total_amount":"14.50","balance_amount":"0.00","reference":"1-2","state":"collected","items":[{"description":"Register bubble-registered.com","amount":"14.50","product_id":1,"product_type":"domain-registration","product_reference":"bubble-registered.com"}]},{"invoiced_at":"2023-08-17T05:57:53Z","total_amount":"14.50","balance_amount":"0.00","reference":"2-2","state":"refunded","items":[{"description":"Register example.com","amount":"14.50","product_id":2,"product_type":"domain-registration","product_reference":"example.com"}]},{"invoiced_at":"2023-10-24T07:49:05Z","total_amount":"1099999.99","balance_amount":"0.00","reference":"4-2","state":"collected","items":[{"description":"Test Line Item 1","amount":"99999.99","product_id":null,"product_type":"manual","product_reference":null},{"description":"Test Line Item 2","amount":"1000000.00","product_id":null,"product_type":"manual","product_reference":null}]},{"invoiced_at":"2023-10-24T09:00:00Z","total_amount":"20.00","balance_amount":"0.00","reference":"5-2","state":"collected","items":[{"description":"Purchase Certificate www.bubble-registered.com","amount":"20.00","product_id":42,"product_type":"certificate-purchase","product_reference":"42"}]}],"pagination":{"current_page":1,"per_page":30,"total_entries":4,"total_pages":1}}
|
|
@@ -17,4 +17,4 @@ x-permitted-cross-domain-policies: none
|
|
|
17
17
|
x-xss-protection: 1; mode=block
|
|
18
18
|
strict-transport-security: max-age=31536000
|
|
19
19
|
|
|
20
|
-
{"data":{"id":1,"domain_id":999,"registrant_id":2,"period":1,"state":"new","auto_renew":false,"whois_privacy":false,"
|
|
20
|
+
{"data":{"id":1,"domain_id":999,"registrant_id":2,"period":1,"state":"new","auto_renew":false,"whois_privacy":false,"trustee":false,"created_at":"2016-12-09T19:35:31Z","updated_at":"2016-12-09T19:35:31Z"}}
|
|
@@ -17,4 +17,4 @@ x-permitted-cross-domain-policies: none
|
|
|
17
17
|
x-xss-protection: 1; mode=block
|
|
18
18
|
strict-transport-security: max-age=31536000
|
|
19
19
|
|
|
20
|
-
{"data":{"id":1,"domain_id":999,"registrant_id":2,"state":"transferring","auto_renew":false,"whois_privacy":false,"created_at":"2016-12-09T19:43:41Z","updated_at":"2016-12-09T19:43:43Z"}}
|
|
20
|
+
{"data":{"id":1,"domain_id":999,"registrant_id":2,"state":"transferring","auto_renew":false,"whois_privacy":false,"trustee":false,"created_at":"2016-12-09T19:43:41Z","updated_at":"2016-12-09T19:43:43Z"}}
|
|
@@ -12,4 +12,4 @@ x-request-id: 15a7f3a5-7ee5-4e36-ac5a-8c21c2e1fffd
|
|
|
12
12
|
x-runtime: 0.141588
|
|
13
13
|
strict-transport-security: max-age=31536000
|
|
14
14
|
|
|
15
|
-
{"data":{"user":null,"account":{"id":1,"email":"example-account@example.com","plan_identifier":"teams-v1-monthly","created_at":"2015-09-18T23:04:37Z","updated_at":"2016-06-09T20:03:39Z"}}}
|
|
15
|
+
{"data":{"user":null,"account":{"id":1,"email":"example-account@example.com","name":"Example Account","plan_identifier":"teams-v1-monthly","created_at":"2015-09-18T23:04:37Z","updated_at":"2016-06-09T20:03:39Z"}}}
|
|
@@ -12,4 +12,4 @@ x-request-id: 15a7f3a5-7ee5-4e36-ac5a-8c21c2e1fffd
|
|
|
12
12
|
x-runtime: 0.141588
|
|
13
13
|
strict-transport-security: max-age=31536000
|
|
14
14
|
|
|
15
|
-
{"data":{"user":null,"account":{"id":1,"email":"example-account@example.com","plan_identifier":"teams-v1-monthly","created_at":"2015-09-18T23:04:37Z","updated_at":"2016-06-09T20:03:39Z"}}}
|
|
15
|
+
{"data":{"user":null,"account":{"id":1,"email":"example-account@example.com","name":"Example Account","plan_identifier":"teams-v1-monthly","created_at":"2015-09-18T23:04:37Z","updated_at":"2016-06-09T20:03:39Z"}}}
|
metadata
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: dnsimple
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version:
|
|
4
|
+
version: 13.1.0
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- DNSimple
|
|
8
8
|
autorequire:
|
|
9
9
|
bindir: bin
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date: 2026-
|
|
11
|
+
date: 2026-09-17 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: httparty
|