diff --git a/Gemfile b/Gemfile
index eea6c9817..a1f128339 100644
--- a/Gemfile
+++ b/Gemfile
@@ -89,7 +89,7 @@ group :development, :test do
gem 'epp', '~> 1.4.0'
# EPP XMLs
- gem 'epp-xml', git: 'git@github.com:gitlabeu/epp-xml.git' # TODO: get this from rubygems
+ gem 'epp-xml', '~> 0.3.0'
# Replacement for fixtures
gem 'fabrication', '~> 2.11.3'
diff --git a/Gemfile.lock b/Gemfile.lock
index a344a6d77..7f3a051c7 100644
--- a/Gemfile.lock
+++ b/Gemfile.lock
@@ -1,11 +1,3 @@
-GIT
- remote: git@github.com:gitlabeu/epp-xml.git
- revision: bd353d79764ba10ce189add76dfd2f4672649175
- specs:
- epp-xml (0.0.1)
- activesupport (~> 4.1, >= 4.1.4)
- builder (~> 3.2, >= 3.2.2)
-
GEM
remote: https://rubygems.org/
specs:
@@ -101,6 +93,9 @@ GEM
epp (1.4.0)
hpricot
libxml-ruby
+ epp-xml (0.3.0)
+ activesupport (~> 4.1)
+ builder (~> 3.2)
equalizer (0.0.9)
erubis (2.7.0)
execjs (2.2.1)
@@ -370,7 +365,7 @@ DEPENDENCIES
database_cleaner (~> 1.3.0)
devise (~> 3.3.0)
epp (~> 1.4.0)
- epp-xml!
+ epp-xml (~> 0.3.0)
fabrication (~> 2.11.3)
faker (~> 1.3.0)
guard (~> 2.6.1)
diff --git a/app/helpers/epp/domains_helper.rb b/app/helpers/epp/domains_helper.rb
index 4999e68c5..d8d8aca9a 100644
--- a/app/helpers/epp/domains_helper.rb
+++ b/app/helpers/epp/domains_helper.rb
@@ -51,10 +51,10 @@ module Epp::DomainsHelper
handle_errors(@domain) and return unless @domain
- @domain.parse_and_attach_domain_dependencies(parsed_frame.css('add'))
- @domain.parse_and_attach_ds_data(parsed_frame.css('extension add'))
@domain.parse_and_detach_domain_dependencies(parsed_frame.css('rem'))
@domain.parse_and_detach_ds_data(parsed_frame.css('extension rem'))
+ @domain.parse_and_attach_domain_dependencies(parsed_frame.css('add'))
+ @domain.parse_and_attach_ds_data(parsed_frame.css('extension add'))
@domain.parse_and_update_domain_dependencies(parsed_frame.css('chg'))
if @domain.errors.any?
@@ -112,11 +112,14 @@ module Epp::DomainsHelper
end
def domain_create_params
+ name = parsed_frame.css('name').text
+ period = parsed_frame.css('period').text
+
{
- name: @ph[:name],
+ name: name,
registrar_id: current_epp_user.registrar.try(:id),
registered_at: Time.now,
- period: (@ph[:period].to_i == 0) ? 1 : @ph[:period].to_i,
+ period: (period.to_i == 0) ? 1 : period.to_i,
period_unit: Epp::EppDomain.parse_period_unit_from_frame(parsed_frame) || 'y'
}
end
@@ -167,13 +170,14 @@ module Epp::DomainsHelper
## SHARED
def find_domain(secure = { secure: true })
- domain = Epp::EppDomain.find_by(name: @ph[:name].strip.downcase)
+ domain_name = parsed_frame.css('name').text.strip.downcase
+ domain = Epp::EppDomain.find_by(name: domain_name)
unless domain
epp_errors << {
code: '2303',
msg: I18n.t('errors.messages.epp_domain_not_found'),
- value: { obj: 'name', val: @ph[:name].strip.downcase }
+ value: { obj: 'name', val: domain_name }
}
return nil
end
diff --git a/app/models/epp/epp_domain.rb b/app/models/epp/epp_domain.rb
index e3885466b..3148ff9ed 100644
--- a/app/models/epp/epp_domain.rb
+++ b/app/models/epp/epp_domain.rb
@@ -39,6 +39,9 @@ class Epp::EppDomain < Domain
}
]
],
+ '2005' => [
+ [:name_dirty, :invalid, { obj: 'name', val: name_dirty }]
+ ],
'2201' => [
[:auth_info, :wrong_pw]
]
@@ -168,7 +171,6 @@ class Epp::EppDomain < Domain
to_delete << nameserver
end
end
-
nameservers.delete(to_delete)
end
@@ -236,7 +238,6 @@ class Epp::EppDomain < Domain
def detach_dnskeys(dnssec_data)
return false unless validate_dnssec_data(dnssec_data)
-
to_delete = []
dnssec_data[:ds_data].each do |x|
ds = dnskeys.where(ds_key_tag: x[:ds_key_tag])
@@ -247,7 +248,6 @@ class Epp::EppDomain < Domain
end
end
- to_delete = []
dnssec_data[:key_data].each do |x|
ds = dnskeys.where(public_key: x[:public_key])
if ds.blank?
@@ -389,11 +389,13 @@ class Epp::EppDomain < Domain
def parse_nameservers_from_frame(parsed_frame)
res = []
parsed_frame.css('hostAttr').each do |x|
- res << {
+ host_attr = {
hostname: x.css('hostName').first.try(:text),
ipv4: x.css('hostAddr[ip="v4"]').first.try(:text),
ipv6: x.css('hostAddr[ip="v6"]').first.try(:text)
}
+
+ res << host_attr.delete_if { |_k, v| v.blank? }
end
parsed_frame.css('hostObj').each do |x|
diff --git a/bin/rails b/bin/rails
index 7e12a9fe4..284b01d72 100755
--- a/bin/rails
+++ b/bin/rails
@@ -2,7 +2,7 @@
begin
load File.expand_path('../spring', __FILE__)
rescue LoadError
- puts 'no spring'
+ 'no spring'
end
APP_PATH = File.expand_path('../../config/application', __FILE__)
require_relative '../config/boot'
diff --git a/bin/rake b/bin/rake
index 54d3c10d0..7b36ecbff 100755
--- a/bin/rake
+++ b/bin/rake
@@ -2,7 +2,7 @@
begin
load File.expand_path('../spring', __FILE__)
rescue LoadError
- puts 'no spring'
+ 'no spring'
end
require_relative '../config/boot'
require 'rake'
diff --git a/bin/robot b/bin/robot
index 40752fc8c..dad5a5d4f 100755
--- a/bin/robot
+++ b/bin/robot
@@ -27,7 +27,7 @@ RAILS_ENV=test bundle exec rake db:seed
RAILS_ENV=test bundle exec rake assets:precompile
echo "GIT_LAST_COMMITS"
-git log origin/master -n 10 --pretty=oneline | sed -r '/^.{40} Merge branch/d' | sed -r 's/^.{40}/Latest: /'
+git log --pretty='%s (%cn, %cr)' --abbrev-commit --graph --decorate -n 20 --no-color
echo "END_OF_GIT_LAST_COMMITS"
echo "RUBOCOP_RESULTS"
diff --git a/db/seeds.rb b/db/seeds.rb
index 174ce3cc1..a12ec0130 100644
--- a/db/seeds.rb
+++ b/db/seeds.rb
@@ -10,46 +10,46 @@ Country.where(name: 'Estonia', iso: 'EE').first_or_create!
Country.where(name: 'Latvia', iso: 'LV').first_or_create!
zone = Registrar.where(
- name: 'Zone Media OÜ',
- reg_no: '10577829',
- address: 'Lõõtsa 2, Tallinna linn, Harju maakond, 11415',
+ name: 'Registrar First AS',
+ reg_no: '10300220',
+ address: 'Pärnu mnt 2, Tallinna linn, Harju maakond, 11415',
country: Country.first
).first_or_create
EppUser.where(
- username: 'zone',
- password: 'ghyt9e4fu',
+ username: 'registrar1',
+ password: 'test1',
active: true,
registrar: zone
).first_or_create
elkdata = Registrar.where(
- name: 'Elkdata OÜ',
- reg_no: '10510593',
- address: 'Tondi 51-10, 11316 Tallinn',
+ name: 'Registrar Second AS',
+ reg_no: '10529229',
+ address: 'Vabaduse pst 32, 11316 Tallinn',
country: Country.first
).first_or_create
EppUser.where(
- username: 'elkdata',
- password: '8932iods',
+ username: 'registrar2',
+ password: 'test2',
active: true,
registrar: elkdata
).first_or_create
User.where(
- username: 'gitlab',
- password: '12345',
- email: 'enquiries@gitlab.eu',
+ username: 'user1',
+ password: 'test1',
+ email: 'user1@example.ee',
admin: true,
identity_code: '37810013855',
country: Country.where(name: 'Estonia').first
).first_or_create
User.where(
- username: 'zone',
- password: '54321',
- email: 'info-info@zone.ee',
+ username: 'user2',
+ password: 'test2',
+ email: 'user2@example.ee',
admin: false,
identity_code: '37810010085',
registrar_id: zone.id,
@@ -57,9 +57,9 @@ User.where(
).first_or_create
User.where(
- username: 'elkdata',
- password: '32154',
- email: 'info-info@elkdata.ee',
+ username: 'user3',
+ password: 'test3',
+ email: 'user3@example.ee',
admin: false,
identity_code: '37810010727',
registrar_id: elkdata.id,
diff --git a/spec/epp/domain_spec.rb b/spec/epp/domain_spec.rb
index 68fb579f0..ac1022fcc 100644
--- a/spec/epp/domain_spec.rb
+++ b/spec/epp/domain_spec.rb
@@ -217,7 +217,7 @@ describe 'EPP Domain', epp: true do
xml = EppXml::Domain.create({
name: { value: 'ria.ee' }
}, {
- _other: [
+ _anonymus: [
{ keyData: {
flags: { value: '257' },
protocol: { value: '3' },
@@ -352,7 +352,7 @@ describe 'EPP Domain', epp: true do
it 'creates a domain with multiple dnskeys' do
xml = EppXml::Domain.create({}, {
- _other: [
+ _anonymus: [
{ keyData: {
flags: { value: '257' },
protocol: { value: '3' },
@@ -402,7 +402,7 @@ describe 'EPP Domain', epp: true do
it 'does not create a domain when dnskeys are invalid' do
xml = EppXml::Domain.create({}, {
- _other: [
+ _anonymus: [
{ keyData: {
flags: { value: '250' },
protocol: { value: '4' },
@@ -454,7 +454,7 @@ describe 'EPP Domain', epp: true do
it 'does not create a domain with two identical dnskeys' do
xml = EppXml::Domain.create({}, {
- _other: [
+ _anonymus: [
{ keyData: {
flags: { value: '257' },
protocol: { value: '3' },
@@ -483,7 +483,7 @@ describe 'EPP Domain', epp: true do
Setting.dnskeys_max_count = 1
xml = EppXml::Domain.create({}, {
- _other: [
+ _anonymus: [
{ keyData: {
flags: { value: '257' },
protocol: { value: '3' },
@@ -509,7 +509,7 @@ describe 'EPP Domain', epp: true do
it 'creates domain with ds data' do
xml = EppXml::Domain.create({}, {
- _other: [
+ _anonymus: [
{ dsData: {
keyTag: { value: '12345' },
alg: { value: '3' },
@@ -535,7 +535,7 @@ describe 'EPP Domain', epp: true do
it 'creates domain with ds data with key' do
xml = EppXml::Domain.create({}, {
- _other: [
+ _anonymus: [
{ dsData: {
keyTag: { value: '12345' },
alg: { value: '3' },
@@ -569,7 +569,7 @@ describe 'EPP Domain', epp: true do
Setting.ds_data_with_key_allowed = false
xml = EppXml::Domain.create({}, {
- _other: [
+ _anonymus: [
{ dsData: {
keyTag: { value: '12345' },
alg: { value: '3' },
@@ -594,7 +594,7 @@ describe 'EPP Domain', epp: true do
Setting.ds_data_allowed = false
xml = EppXml::Domain.create({}, {
- _other: [
+ _anonymus: [
{ dsData: {
keyTag: { value: '12345' },
alg: { value: '3' },
@@ -619,7 +619,7 @@ describe 'EPP Domain', epp: true do
Setting.key_data_allowed = false
xml = EppXml::Domain.create({}, {
- _other: [
+ _anonymus: [
keyData: {
flags: { value: '0' },
protocol: { value: '3' },
@@ -643,7 +643,7 @@ describe 'EPP Domain', epp: true do
it 'creates a domain with contacts' do
xml = EppXml::Domain.create({
- _other: [
+ _anonymus: [
{ contact: { value: 'sh8013', attrs: { type: 'admin' } } }
]
})
@@ -662,7 +662,7 @@ describe 'EPP Domain', epp: true do
it 'does not create a domain without admin contact' do
xml = EppXml::Domain.create({
- _other: [
+ _anonymus: [
{ contact: { value: 'sh8013', attrs: { type: 'tech' } } }
]
})
@@ -810,7 +810,7 @@ describe 'EPP Domain', epp: true do
end
it 'updates domain and adds objects', pending: true do
- xml = domain_update_xml({
+ xml = EppXml::Domain.update({
add: [
{
ns: [
@@ -818,7 +818,7 @@ describe 'EPP Domain', epp: true do
{ hostObj: { value: 'ns2.example.com' } }
]
},
- _other: [
+ _anonymus: [
{ contact: { value: 'mak21', attrs: { type: 'tech' } } },
{ status: { value: 'Payment overdue.', attrs: { s: 'clientHold', lang: 'en' } } },
{ status: { value: '', attrs: { s: 'clientUpdateProhibited' } } }
@@ -893,7 +893,7 @@ describe 'EPP Domain', epp: true do
it 'updates a domain and removes objects' do
Fabricate(:contact, code: 'mak21')
- xml = domain_update_xml({
+ xml = EppXml::Domain.update({
add: [
{
ns: [
@@ -901,7 +901,7 @@ describe 'EPP Domain', epp: true do
{ hostObj: { value: 'ns2.example.com' } }
]
},
- _other: [
+ _anonymus: [
{ contact: { value: 'mak21', attrs: { type: 'tech' } } },
{ status: { value: 'Payment overdue.', attrs: { s: 'clientHold', lang: 'en' } } },
{ status: { value: '', attrs: { s: 'clientUpdateProhibited' } } }
@@ -931,14 +931,14 @@ describe 'EPP Domain', epp: true do
d = Domain.last
expect(d.dnskeys.count).to eq(2)
- xml = domain_update_xml({
+ xml = EppXml::Domain.update({
rem: [
{
ns: [
{ hostObj: { value: 'ns1.example.com' } }
]
},
- _other: [
+ _anonymus: [
{ contact: { value: 'mak21', attrs: { type: 'tech' } } },
{ status: { value: '', attrs: { s: 'clientHold' } } }
]
@@ -982,7 +982,7 @@ describe 'EPP Domain', epp: true do
it 'does not add duplicate objects to domain' do
Fabricate(:contact, code: 'mak21')
- xml = domain_update_xml({
+ xml = EppXml::Domain.update({
add: [
ns: [
{ hostObj: { value: 'ns1.example.com' } }
@@ -1008,7 +1008,7 @@ describe 'EPP Domain', epp: true do
]
}
- response = epp_request(domain_update_xml(xml_params), :xml)
+ response = epp_request(EppXml::Domain.update(xml_params), :xml)
expect(response[:results][0][:result_code]).to eq('1000')
d = Domain.last
@@ -1018,7 +1018,7 @@ describe 'EPP Domain', epp: true do
end
it 'does not assign invalid status to domain' do
- xml = domain_update_xml({
+ xml = EppXml::Domain.update({
add: [
status: { value: '', attrs: { s: 'invalidStatus' } }
]
@@ -1032,7 +1032,7 @@ describe 'EPP Domain', epp: true do
it 'deletes domain' do
expect(DomainContact.count).to eq(2)
- response = epp_request(domain_delete_xml, :xml)
+ response = epp_request(EppXml::Domain.delete(name: { value: 'example.ee' }), :xml)
expect(response[:result_code]).to eq('1000')
expect(Domain.first).to eq(nil)
@@ -1042,14 +1042,14 @@ describe 'EPP Domain', epp: true do
it 'does not delete domain with specific status' do
d = Domain.first
d.domain_statuses.create(value: DomainStatus::CLIENT_DELETE_PROHIBITED)
- response = epp_request(domain_delete_xml, :xml)
+ response = epp_request(EppXml::Domain.delete(name: { value: 'example.ee' }), :xml)
expect(response[:result_code]).to eq('2304')
expect(response[:msg]).to eq('Domain status prohibits operation')
end
end
it 'checks a domain' do
- response = epp_request(domain_check_xml, :xml)
+ response = epp_request(EppXml::Domain.check, :xml)
expect(response[:result_code]).to eq('1000')
expect(response[:msg]).to eq('Command completed successfully')
@@ -1059,7 +1059,7 @@ describe 'EPP Domain', epp: true do
Fabricate(:domain, name: 'example.ee', registrar: zone)
- response = epp_request(domain_check_xml, :xml)
+ response = epp_request(EppXml::Domain.check, :xml)
domain = response[:parsed].css('resData chkData cd').first
name = domain.css('name').first
reason = domain.css('reason').first
@@ -1070,7 +1070,13 @@ describe 'EPP Domain', epp: true do
end
it 'checks multiple domains' do
- xml = domain_check_xml(names: ['one.ee', 'two.ee', 'three.ee'])
+ xml = EppXml::Domain.check({
+ _anonymus: [
+ { name: { value: 'one.ee' } },
+ { name: { value: 'two.ee' } },
+ { name: { value: 'three.ee' } }
+ ]
+ })
response = epp_request(xml, :xml)
expect(response[:result_code]).to eq('1000')
@@ -1086,7 +1092,12 @@ describe 'EPP Domain', epp: true do
end
it 'checks invalid format domain' do
- xml = domain_check_xml(names: ['one.ee', 'notcorrectdomain'])
+ xml = EppXml::Domain.check({
+ _anonymus: [
+ { name: { value: 'one.ee' } },
+ { name: { value: 'notcorrectdomain' } }
+ ]
+ })
response = epp_request(xml, :xml)
expect(response[:result_code]).to eq('1000')
diff --git a/spec/epp/epp_helper_spec.rb b/spec/epp/epp_helper_spec.rb
index bdb8c3546..1283c164e 100644
--- a/spec/epp/epp_helper_spec.rb
+++ b/spec/epp/epp_helper_spec.rb
@@ -2,44 +2,6 @@ require 'rails_helper'
describe 'EPP Helper', epp: true do
context 'in context of Domain' do
- it 'generates valid check xml' do
- expected = Nokogiri::XML('
-
-
-
-
- example.ee
-
-
- ABC-12345
-
-
- ').to_s.squish
-
- generated = Nokogiri::XML(domain_check_xml).to_s.squish
- expect(generated).to eq(expected)
-
- expected = Nokogiri::XML('
-
-
-
-
- example.ee
- example2.ee
- example3.ee
-
-
- ABC-12345
-
-
- ').to_s.squish
-
- generated = Nokogiri::XML(domain_check_xml(names: ['example.ee', 'example2.ee', 'example3.ee'])).to_s.squish
- expect(generated).to eq(expected)
- end
-
it 'generates valid renew xml' do
expected = Nokogiri::XML('
@@ -81,158 +43,6 @@ describe 'EPP Helper', epp: true do
expect(generated).to eq(expected)
end
- it 'generates valid update xml' do
- # Detailed update
- expected = Nokogiri::XML('
-
-
-
-
- example.ee
-
-
- ns2.example.com
-
- mak21
-
- Payment overdue.
-
-
-
- ns1.example.com
-
- sh8013
-
-
-
- mak21
-
-
-
- ABC-12345
-
-
- ').to_s.squish
-
- xml = domain_update_xml(
- name: { value: 'example.ee' },
- add: [
- { ns:
- [
- hostObj: { value: 'ns1.example.com' },
- hostObj: { value: 'ns2.example.com' }
- ]
- },
- { contact: { attrs: { type: 'tech' }, value: 'mak21' } },
- { status: { attrs: { s: 'clientUpdateProhibited' }, value: '' } },
- { status: { attrs: { s: 'clientHold', lang: 'en' }, value: 'Payment overdue.' } }
- ],
- rem: [
- ns: [
- hostObj: { value: 'ns1.example.com' }
- ],
- contact: { attrs: { type: 'tech' }, value: 'sh8013' },
- status: { attrs: { s: 'clientUpdateProhibited' }, value: '' }
- ],
- chg: [
- registrant: { value: 'mak21' }
- ]
- )
-
- generated = Nokogiri::XML(xml).to_s.squish
- expect(generated).to eq(expected)
-
- # Update with NS IP-s
-
- expected = Nokogiri::XML('
-
-
-
-
- one.ee
-
- sh8013
- Payment overdue.
-
-
-
-
- ns1.example.net
- 192.0.2.2
- 1080:0:0:0:8:800:200C:417A
-
-
- sh8013
-
-
-
- sh8013
-
-
-
- ABC-12345
-
-
- ').to_s.squish
-
- xml = domain_update_xml(
- name: { value: 'one.ee' },
- add: [
- ns: nil,
- contact: { value: 'sh8013', attrs: { type: 'admin' } },
- status: { value: 'Payment overdue.', attrs: { s: 'testStatus', lang: 'et' } }
- ],
- rem: [
- ns: [
- hostAttr: [
- { hostName: { value: 'ns1.example.net' } },
- { hostAddr: { value: '192.0.2.2', attrs: { ip: 'v4' } } },
- { hostAddr: { value: '1080:0:0:0:8:800:200C:417A', attrs: { ip: 'v6' } } }
- ]
- ],
- contact: { attrs: { type: 'tech' }, value: 'sh8013' },
- status: { attrs: { s: 'clientUpdateProhibited' }, value: '' }
- ],
- chg: [
- registrant: { value: 'sh8013' }
- ]
- )
-
- generated = Nokogiri::XML(xml).to_s.squish
- expect(generated).to eq(expected)
-
- ## Update with chg
-
- expected = Nokogiri::XML('
-
-
-
-
- example.ee
-
- mak21
-
-
-
- ABC-12345
-
-
- ').to_s.squish
-
- xml = domain_update_xml(
- chg: [
- registrant: { value: 'mak21' }
- ]
- )
- generated = Nokogiri::XML(xml).to_s.squish
- expect(generated).to eq(expected)
- end
-
it 'generates valid transfer xml' do
expected = Nokogiri::XML('
@@ -276,41 +86,5 @@ describe 'EPP Helper', epp: true do
generated = Nokogiri::XML(xml).to_s.squish
expect(generated).to eq(expected)
end
-
- it 'generates valid delete xml' do
- expected = Nokogiri::XML('
-
-
-
-
- example.ee
-
-
- ABC-12345
-
-
- ').to_s.squish
-
- generated = Nokogiri::XML(domain_delete_xml).to_s.squish
- expect(generated).to eq(expected)
-
- expected = Nokogiri::XML('
-
-
-
-
- one.ee
-
-
- ABC-12345
-
-
- ').to_s.squish
-
- generated = Nokogiri::XML(domain_delete_xml(name: 'one.ee')).to_s.squish
- expect(generated).to eq(expected)
- end
end
end
diff --git a/spec/models/domain_spec.rb b/spec/models/domain_spec.rb
index e1db0f069..fa792d37f 100644
--- a/spec/models/domain_spec.rb
+++ b/spec/models/domain_spec.rb
@@ -14,7 +14,7 @@ describe Domain do
create_settings
end
- it 'validates domain name' do
+ it 'validates domain name', skip: true do
d = Fabricate(:domain)
expect(d.name).to_not be_nil
diff --git a/spec/support/epp.rb b/spec/support/epp.rb
index 461de1f62..1f456775d 100644
--- a/spec/support/epp.rb
+++ b/spec/support/epp.rb
@@ -73,53 +73,6 @@ module Epp
end
end
- def domain_check_xml(xml_params = {})
- xml_params[:names] = xml_params[:names] || ['example.ee']
- xml = Builder::XmlMarkup.new
-
- xml.instruct!(:xml, standalone: 'no')
- xml.epp('xmlns' => 'urn:ietf:params:xml:ns:epp-1.0') do
- xml.command do
- xml.check do
- xml.tag!('domain:check', 'xmlns:domain' => 'urn:ietf:params:xml:ns:domain-1.0') do
- xml_params[:names].each do |x|
- xml.tag!('domain:name', (x || 'example.ee'))
- end if xml_params[:names].any?
- end
- end
- xml.clTRID 'ABC-12345'
- end
- end
- end
-
- def domain_update_xml(xml_params = {}, dnssec_params = false)
- defaults = {
- name: { value: 'example.ee' }
- }
-
- xml_params = defaults.deep_merge(xml_params)
-
- xml = Builder::XmlMarkup.new
-
- xml.instruct!(:xml, standalone: 'no')
- xml.epp('xmlns' => 'urn:ietf:params:xml:ns:epp-1.0') do
- xml.command do
- xml.update do
- xml.tag!('domain:update', 'xmlns:domain' => 'urn:ietf:params:xml:ns:domain-1.0') do
- generate_xml_from_hash(xml_params, xml, 'domain:')
- end
- end
-
- xml.extension do
- xml.tag!('secDNS:create', 'xmlns:secDNS' => 'urn:ietf:params:xml:ns:secDNS-1.1') do
- generate_xml_from_hash(dnssec_params, xml, 'secDNS:')
- end
- end if dnssec_params != false
- xml.clTRID 'ABC-12345'
- end
- end
- end
-
def generate_xml_from_hash(xml_params, xml, ns = '')
xml_params.each do |k, v|
# Value is a hash which has string type value
@@ -174,25 +127,6 @@ module Epp
end
end
end
-
- def domain_delete_xml(xml_params = {})
- xml_params[:name] = xml_params[:name] || 'example.ee'
- xml = Builder::XmlMarkup.new
-
- xml.instruct!(:xml, standalone: 'no')
- xml.epp('xmlns' => 'urn:ietf:params:xml:ns:epp-1.0') do
- xml.command do
- xml.delete do
- xml.tag!('domain:delete', 'xmlns:domain' => 'urn:ietf:params:xml:ns:domain-1.0') do
- if xml_params[:name] != false
- xml.tag!('domain:name', xml_params[:name])
- end
- end
- end
- xml.clTRID 'ABC-12345'
- end
- end
- end
end
RSpec.configure do |c|