mirror of
https://github.com/internetee/registry.git
synced 2025-06-06 04:37:30 +02:00
Update domains controller to return serialized domains now
This commit is contained in:
parent
ed0316dd83
commit
ce8451d004
3 changed files with 73 additions and 33 deletions
|
@ -1,3 +1,5 @@
|
|||
require 'serializers/registrant_api/domain'
|
||||
|
||||
module Api
|
||||
module V1
|
||||
module Registrant
|
||||
|
@ -17,7 +19,13 @@ module Api
|
|||
end
|
||||
|
||||
@domains = associated_domains(current_registrant_user).limit(limit).offset(offset)
|
||||
render json: @domains
|
||||
|
||||
serialized_domains = @domains.map do |item|
|
||||
serializer = Serializers::RegistrantApi::Domain.new(item)
|
||||
serializer.to_json
|
||||
end
|
||||
|
||||
render json: serialized_domains
|
||||
end
|
||||
|
||||
def show
|
||||
|
@ -25,7 +33,8 @@ module Api
|
|||
@domain = domain_pool.find_by(uuid: params[:uuid])
|
||||
|
||||
if @domain
|
||||
render json: @domain
|
||||
serializer = Serializers::RegistrantApi::Domain.new(@domain)
|
||||
render json: serializer.to_json
|
||||
else
|
||||
render json: { errors: [{ base: ['Domain not found'] }] }, status: :not_found
|
||||
end
|
||||
|
|
|
@ -11,15 +11,6 @@ Returns domains of the current registrant.
|
|||
| ---------- | -------- | ---- | -------------- | ----------- |
|
||||
| limit | false | Integer | [1..200] | How many domains to show |
|
||||
| offset | false | Integer | | Domain number to start at |
|
||||
| details | false | String | ["true", "false"] | Whether to include details |
|
||||
|
||||
#### Request
|
||||
```
|
||||
GET api/v1/registrant/domains?limit=1&details=true HTTP/1.1
|
||||
Accept: application/json
|
||||
Authorization: Bearer Z2l0bGFiOmdoeXQ5ZTRmdQ==
|
||||
Content-Type: application/json
|
||||
```
|
||||
|
||||
#### Response
|
||||
```
|
||||
|
@ -27,13 +18,11 @@ HTTP/1.1 200
|
|||
Content-Type: application/json
|
||||
|
||||
{
|
||||
"domains": [
|
||||
[
|
||||
{
|
||||
"uuid": "98d1083a-8863-4153-93e4-caee4a013535",
|
||||
"id": "98d1083a-8863-4153-93e4-caee4a013535",
|
||||
"name": "domain0.ee",
|
||||
"registrar_id": 2,
|
||||
"registered_at": "2015-09-09T09:11:14.861Z",
|
||||
"status": null,
|
||||
"registrar": "Best Names",
|
||||
"valid_from": "2015-09-09T09:11:14.861Z",
|
||||
"valid_to": "2016-09-09T09:11:14.861Z",
|
||||
"registrant_id": 1,
|
||||
|
@ -53,23 +42,28 @@ Content-Type: application/json
|
|||
"delete_at": "2016-10-24T09:11:14.861Z",
|
||||
"registrant_verification_asked_at": null,
|
||||
"registrant_verification_token": null,
|
||||
"pending_json": {
|
||||
},
|
||||
"locked_by_registrant_at": "2015-09-09T09:11:14.861Z",
|
||||
"pending_json": {},
|
||||
"force_delete_at": null,
|
||||
"statuses": [
|
||||
"ok"
|
||||
],
|
||||
"reserved": false,
|
||||
"status_notes": {
|
||||
},
|
||||
"statuses_backup": [
|
||||
]
|
||||
"status_notes": {},
|
||||
"statuses_backup": []
|
||||
}
|
||||
],
|
||||
"total_number_of_records": 2
|
||||
]
|
||||
}
|
||||
```
|
||||
|
||||
#### Request
|
||||
```
|
||||
GET api/v1/registrant/domains HTTP/1.1
|
||||
Accept: application/json
|
||||
Authorization: Bearer Z2l0bGFiOmdoeXQ5ZTRmdQ==
|
||||
Content-Type: application/json
|
||||
```
|
||||
|
||||
## GET api/v1/registrant/domains
|
||||
|
||||
Returns domain names with offset.
|
||||
|
@ -77,7 +71,7 @@ Returns domain names with offset.
|
|||
|
||||
#### Request
|
||||
```
|
||||
GET api/v1/registrant/domains?offset=1 HTTP/1.1
|
||||
GET api/v1/registrant/domains?offset=1&limit=1 HTTP/1.1
|
||||
Accept: application/json
|
||||
Authorization: Bearer Z2l0bGFiOmdoeXQ5ZTRmdQ==
|
||||
Content-Type: application/json
|
||||
|
@ -89,10 +83,40 @@ HTTP/1.1 200
|
|||
Content-Type: application/json
|
||||
|
||||
{
|
||||
"domains": [
|
||||
"domain1.ee"
|
||||
],
|
||||
"total_number_of_records": 2
|
||||
[
|
||||
{
|
||||
"id": "98d1083a-8863-4153-93e4-caee4a013535",
|
||||
"name": "domain0.ee",
|
||||
"registrar": "Best Names",
|
||||
"valid_to": "2016-09-09T09:11:14.861Z",
|
||||
"registrant_id": 1,
|
||||
"transfer_code": "98oiewslkfkd",
|
||||
"created_at": "2015-09-09T09:11:14.861Z",
|
||||
"updated_at": "2015-09-09T09:11:14.860Z",
|
||||
"name_dirty": "domain0.ee",
|
||||
"name_puny": "domain0.ee",
|
||||
"period": 1,
|
||||
"period_unit": "y",
|
||||
"creator_str": null,
|
||||
"updator_str": null,
|
||||
"legacy_id": null,
|
||||
"legacy_registrar_id": null,
|
||||
"legacy_registrant_id": null,
|
||||
"outzone_at": "2016-09-24T09:11:14.861Z",
|
||||
"delete_at": "2016-10-24T09:11:14.861Z",
|
||||
"registrant_verification_asked_at": null,
|
||||
"registrant_verification_token": null,
|
||||
"locked_by_registrant_at": "2015-09-09T09:11:14.861Z",
|
||||
"pending_json": {},
|
||||
"force_delete_at": null,
|
||||
"statuses": [
|
||||
"ok"
|
||||
],
|
||||
"reserved": false,
|
||||
"status_notes": {},
|
||||
"statuses_backup": []
|
||||
}
|
||||
]
|
||||
}
|
||||
```
|
||||
|
||||
|
@ -116,12 +140,10 @@ HTTP/1.1 200
|
|||
Content-Type: application/json
|
||||
|
||||
{
|
||||
"uuid": "98d1083a-8863-4153-93e4-caee4a013535",
|
||||
"id": "98d1083a-8863-4153-93e4-caee4a013535",
|
||||
"name": "domain0.ee",
|
||||
"registrar_id": 2,
|
||||
"registrar": "Best Names",
|
||||
"registered_at": "2015-09-09T09:11:14.861Z",
|
||||
"status": null,
|
||||
"valid_from": "2015-09-09T09:11:14.861Z",
|
||||
"valid_to": "2016-09-09T09:11:14.861Z",
|
||||
"registrant_id": 1,
|
||||
"transfer_code": "98oiewslkfkd",
|
||||
|
@ -140,6 +162,7 @@ Content-Type: application/json
|
|||
"delete_at": "2016-10-24T09:11:14.861Z",
|
||||
"registrant_verification_asked_at": null,
|
||||
"registrant_verification_token": null,
|
||||
"locked_by_registrant_at": "2015-09-09T09:11:14.861Z",
|
||||
"pending_json": {},
|
||||
"force_delete_at": null,
|
||||
"statuses": [
|
||||
|
|
|
@ -27,7 +27,12 @@ class RegistrantApiDomainsTest < ApplicationIntegrationTest
|
|||
assert_equal(200, response.status)
|
||||
|
||||
domain = JSON.parse(response.body, symbolize_names: true)
|
||||
|
||||
assert_equal('hospital.test', domain[:name])
|
||||
assert_equal('5edda1a5-3548-41ee-8b65-6d60daf85a37', domain[:id])
|
||||
assert_equal('Good Names', domain[:registrar])
|
||||
assert_equal([], domain[:nameservers])
|
||||
assert(domain.has_key?(:locked_by_registrant_at))
|
||||
end
|
||||
|
||||
def test_get_non_existent_domain_details_by_uuid
|
||||
|
@ -45,6 +50,9 @@ class RegistrantApiDomainsTest < ApplicationIntegrationTest
|
|||
response_json = JSON.parse(response.body, symbolize_names: true)
|
||||
array_of_domain_names = response_json.map { |x| x[:name] }
|
||||
assert(array_of_domain_names.include?('hospital.test'))
|
||||
|
||||
array_of_domain_registrars = response_json.map { |x| x[:registrar] }
|
||||
assert(array_of_domain_registrars.include?('Good Names'))
|
||||
end
|
||||
|
||||
def test_root_accepts_limit_and_offset_parameters
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue