sparqcode-dnsimple-ruby 1.2.6

Sign up to get free protection for your applications and to get access to all the features.
Files changed (118) hide show
  1. data/.bundle/config +3 -0
  2. data/.rvmrc +1 -0
  3. data/Gemfile +16 -0
  4. data/Gemfile.lock +71 -0
  5. data/LICENSE +22 -0
  6. data/README +125 -0
  7. data/README.rdoc +125 -0
  8. data/README.textile +161 -0
  9. data/Rakefile +33 -0
  10. data/VERSION +1 -0
  11. data/bin/dnsimple +4 -0
  12. data/bin/dnsimple.rb +153 -0
  13. data/dnsimple-ruby.gemspec +191 -0
  14. data/features/README +12 -0
  15. data/features/cli/certificates/purchase_certificate.feature +10 -0
  16. data/features/cli/contacts/create_contact.feature +10 -0
  17. data/features/cli/domains/check_domain.feature +10 -0
  18. data/features/cli/domains/create_domain.feature +10 -0
  19. data/features/cli/domains/delete_domain.feature +11 -0
  20. data/features/cli/domains/register_domain.feature +10 -0
  21. data/features/cli/records/create_ptr_record.feature +11 -0
  22. data/features/cli/records/create_record.feature +12 -0
  23. data/features/cli/records/delete_record.feature +14 -0
  24. data/features/cli/templates/apply_template.feature +11 -0
  25. data/features/step_definitions/certificate_steps.rb +3 -0
  26. data/features/step_definitions/cli_steps.rb +8 -0
  27. data/features/step_definitions/domain_steps.rb +32 -0
  28. data/features/step_definitions/record_steps.rb +38 -0
  29. data/features/step_definitions/template_steps.rb +9 -0
  30. data/features/support/env.rb +17 -0
  31. data/fixtures/vcr_cassettes/DNSimple_Certificate/_all.yml +44 -0
  32. data/fixtures/vcr_cassettes/DNSimple_Certificate/_purchase.yml +44 -0
  33. data/fixtures/vcr_cassettes/DNSimple_Certificate/_submit.yml +44 -0
  34. data/fixtures/vcr_cassettes/DNSimple_Contact/a_new_contact.yml +42 -0
  35. data/fixtures/vcr_cassettes/DNSimple_Contact/an_existing_contact.yml +42 -0
  36. data/fixtures/vcr_cassettes/DNSimple_Domain/_all.yml +130 -0
  37. data/fixtures/vcr_cassettes/DNSimple_Domain/applying_templates.yml +216 -0
  38. data/fixtures/vcr_cassettes/DNSimple_Domain/creating_a_new_domain.yml +44 -0
  39. data/fixtures/vcr_cassettes/DNSimple_Domain/finding_an_existing_domain/by_id.yml +44 -0
  40. data/fixtures/vcr_cassettes/DNSimple_Domain/finding_an_existing_domain/by_name.yml +44 -0
  41. data/fixtures/vcr_cassettes/DNSimple_Domain/registration/with_a_new_registrant_contact.yml +44 -0
  42. data/fixtures/vcr_cassettes/DNSimple_Domain/registration/with_an_existing_contact.yml +44 -0
  43. data/fixtures/vcr_cassettes/DNSimple_Domain/setting_name_servers.yml +30 -0
  44. data/fixtures/vcr_cassettes/DNSimple_ExtendedAttribute/list_extended_attributes/for_ca.yml +40 -0
  45. data/fixtures/vcr_cassettes/DNSimple_ExtendedAttribute/list_extended_attributes/for_com.yml +40 -0
  46. data/fixtures/vcr_cassettes/DNSimple_Record/_all.yml +173 -0
  47. data/fixtures/vcr_cassettes/DNSimple_Record/creating_a_new_record.yml +44 -0
  48. data/fixtures/vcr_cassettes/DNSimple_Record/find_a_record.yml +44 -0
  49. data/fixtures/vcr_cassettes/DNSimple_Template/a_template.yml +44 -0
  50. data/fixtures/vcr_cassettes/DNSimple_User/_me.yml +42 -0
  51. data/lib/dnsimple.rb +19 -0
  52. data/lib/dnsimple/certificate.rb +158 -0
  53. data/lib/dnsimple/cli.rb +122 -0
  54. data/lib/dnsimple/client.rb +74 -0
  55. data/lib/dnsimple/command.rb +10 -0
  56. data/lib/dnsimple/commands/add_service.rb +16 -0
  57. data/lib/dnsimple/commands/add_template_record.rb +18 -0
  58. data/lib/dnsimple/commands/apply_template.rb +15 -0
  59. data/lib/dnsimple/commands/check_domain.rb +11 -0
  60. data/lib/dnsimple/commands/clear_domain.rb +16 -0
  61. data/lib/dnsimple/commands/create_contact.rb +21 -0
  62. data/lib/dnsimple/commands/create_domain.rb +16 -0
  63. data/lib/dnsimple/commands/create_record.rb +20 -0
  64. data/lib/dnsimple/commands/create_template.rb +14 -0
  65. data/lib/dnsimple/commands/delete_contact.rb +14 -0
  66. data/lib/dnsimple/commands/delete_domain.rb +14 -0
  67. data/lib/dnsimple/commands/delete_record.rb +16 -0
  68. data/lib/dnsimple/commands/delete_template.rb +13 -0
  69. data/lib/dnsimple/commands/delete_template_record.rb +16 -0
  70. data/lib/dnsimple/commands/describe_certificate.rb +34 -0
  71. data/lib/dnsimple/commands/describe_contact.rb +25 -0
  72. data/lib/dnsimple/commands/describe_domain.rb +14 -0
  73. data/lib/dnsimple/commands/describe_record.rb +16 -0
  74. data/lib/dnsimple/commands/describe_service.rb +12 -0
  75. data/lib/dnsimple/commands/describe_user.rb +18 -0
  76. data/lib/dnsimple/commands/list_applied_services.rb +16 -0
  77. data/lib/dnsimple/commands/list_available_services.rb +16 -0
  78. data/lib/dnsimple/commands/list_certificates.rb +15 -0
  79. data/lib/dnsimple/commands/list_contacts.rb +13 -0
  80. data/lib/dnsimple/commands/list_domains.rb +13 -0
  81. data/lib/dnsimple/commands/list_extended_attributes.rb +25 -0
  82. data/lib/dnsimple/commands/list_records.rb +21 -0
  83. data/lib/dnsimple/commands/list_services.rb +14 -0
  84. data/lib/dnsimple/commands/list_template_records.rb +17 -0
  85. data/lib/dnsimple/commands/list_templates.rb +13 -0
  86. data/lib/dnsimple/commands/purchase_certificate.rb +19 -0
  87. data/lib/dnsimple/commands/register_domain.rb +33 -0
  88. data/lib/dnsimple/commands/remove_service.rb +14 -0
  89. data/lib/dnsimple/commands/submit_certificate.rb +19 -0
  90. data/lib/dnsimple/commands/transfer_domain.rb +21 -0
  91. data/lib/dnsimple/commands/update_contact.rb +25 -0
  92. data/lib/dnsimple/commands/update_record.rb +23 -0
  93. data/lib/dnsimple/contact.rb +181 -0
  94. data/lib/dnsimple/domain.rb +246 -0
  95. data/lib/dnsimple/error.rb +32 -0
  96. data/lib/dnsimple/extended_attribute.rb +73 -0
  97. data/lib/dnsimple/record.rb +128 -0
  98. data/lib/dnsimple/service.rb +58 -0
  99. data/lib/dnsimple/template.rb +91 -0
  100. data/lib/dnsimple/template_record.rb +103 -0
  101. data/lib/dnsimple/transfer_order.rb +45 -0
  102. data/lib/dnsimple/user.rb +44 -0
  103. data/spec/README +10 -0
  104. data/spec/certificate_spec.rb +46 -0
  105. data/spec/command_spec.rb +19 -0
  106. data/spec/commands/add_service_spec.rb +29 -0
  107. data/spec/commands/create_record_spec.rb +23 -0
  108. data/spec/commands/list_records_spec.rb +34 -0
  109. data/spec/commands/purchase_certificate_spec.rb +24 -0
  110. data/spec/commands/submit_certificate_spec.rb +19 -0
  111. data/spec/contact_spec.rb +35 -0
  112. data/spec/domain_spec.rb +97 -0
  113. data/spec/extended_attributes_spec.rb +19 -0
  114. data/spec/record_spec.rb +59 -0
  115. data/spec/spec_helper.rb +22 -0
  116. data/spec/template_spec.rb +11 -0
  117. data/spec/user_spec.rb +23 -0
  118. metadata +353 -0
@@ -0,0 +1,33 @@
1
+ require 'rake'
2
+ require 'rake/testtask'
3
+ require 'rake/rdoctask'
4
+
5
+ desc 'Default: run tests.'
6
+ task :default => [:spec]
7
+
8
+ desc 'Generate documentation.'
9
+ Rake::RDocTask.new(:rdoc) do |rdoc|
10
+ rdoc.rdoc_dir = 'rdoc'
11
+ rdoc.title = 'DNSimple Ruby'
12
+ rdoc.options << '--line-numbers' << '--inline-source'
13
+ rdoc.rdoc_files.include('README.rdoc')
14
+ rdoc.rdoc_files.include('lib/*.rb')
15
+ rdoc.rdoc_files.include('lib/**/*.rb')
16
+ end
17
+
18
+ begin
19
+ require 'jeweler'
20
+ Jeweler::Tasks.new do |gemspec|
21
+ gemspec.name = "dnsimple-ruby"
22
+ gemspec.summary = "A ruby wrapper for the DNSimple API"
23
+ gemspec.description = "A ruby wrapper for the DNSimple API that also includes a command-line client."
24
+ gemspec.email = "anthony.eden@dnsimple.com"
25
+ gemspec.homepage = "http://github.com/aetrion/dnsimple-ruby"
26
+ gemspec.authors = ["Anthony Eden"]
27
+ gemspec.add_dependency "httparty"
28
+ gemspec.executables = 'dnsimple'
29
+ end
30
+ rescue LoadError
31
+ puts "Jeweler not available. Install it with: gem install jeweler"
32
+ end
33
+
data/VERSION ADDED
@@ -0,0 +1 @@
1
+ 1.2.6
@@ -0,0 +1,4 @@
1
+ #!/usr/bin/env ruby
2
+
3
+ require 'rubygems'
4
+ require File.dirname(__FILE__) + '/dnsimple'
@@ -0,0 +1,153 @@
1
+ #!/usr/bin/env ruby
2
+
3
+ $:.unshift(File.dirname(__FILE__) + '/../lib')
4
+ require 'dnsimple'
5
+ require 'dnsimple/cli'
6
+
7
+ cli = DNSimple::CLI.new
8
+
9
+ require 'optparse'
10
+
11
+ def usage
12
+ $stderr.puts <<EOF
13
+
14
+ This is a command line tool for DNSimple. More information about DNSimple can
15
+ be found at http://dnsimple.com/
16
+
17
+ Before using this tool you should create a file called .dnsimple in your home
18
+ directory and add the following to that file:
19
+
20
+ username: YOUR_USERNAME
21
+ password: YOUR_PASSWORD
22
+
23
+ Alternatively you can pass the credentials via command-line arguments, as in:
24
+
25
+ dnsimple -u username -p password command
26
+
27
+ == Commands
28
+
29
+ All commands are executed as dnsimple [options] command [command-options] args
30
+
31
+
32
+ The following commands are available:
33
+
34
+ help # Show this usage
35
+
36
+ info # Show your account information
37
+
38
+ check domain.com # Check if a domain is available (for registration)
39
+ create [--template=short_name] domain.com # Add the given domain
40
+ register [--template=short_name] domain.com registrant_id \ # Register the given domain with DNSimple
41
+ [[name:value] [name:value]] # name:value pairs can be given for extended attributes
42
+ transfer domain.com registrant_id [authinfo] \ # Transfer the given domain into DNSimple
43
+ [[name:value] [name:value] ...] # name:value pairs can be given for extended attributes
44
+ describe domain.com # Describe the given domain
45
+ list # List all domains
46
+ delete domain.com # Delete the given domain
47
+ clear domain.com # Remove all records from the domain
48
+ apply domain.com template_short_name # Apply a template to the domain
49
+
50
+ record:describe domain.com record_id # Describe the given record
51
+ record:create [--prio=priority] domain.com name type \\
52
+ content [ttl] # Create the DNS record on the domain
53
+ record:list domain.com # List all records for the domain
54
+ record:update domain.com record_id \ # Update a specific record
55
+ [[name:value] [name:value] ...] # name:value pairs are given for updateable attributes
56
+ record:delete domain.com record_id # Delete the given domain
57
+
58
+ template:create name short_name [description] # Create a template
59
+ template:list # List all templates
60
+ template:delete short_name # Delete the given template
61
+
62
+ template:list_records short_name # List all of the records for a template
63
+ template:add_record [--prio=priority] short_name name \\
64
+ type content [ttl] # Add a template record to the given template
65
+ template:delete_record short_name template_record_id # Delete the given template record
66
+
67
+ contact:create [[name:value [name:value] ...] # Create a contact
68
+ contact:list # List all contacts
69
+ contact:describe contact_id # Describe the given contact
70
+ contact:update contact_id [[name:value] [name:value] ...] # Update the given contact
71
+ contact:delete contact_id # Delete the given contact
72
+
73
+ extended-attributes:list tld # List all extended attributes for the given TLD
74
+
75
+ service:list # List all supported services
76
+ service:describe short_name # Describe a specific service
77
+
78
+ service:applied domain.com # List all of the services applied to the domain
79
+ service:available domain.com # List all of the services available for the domain
80
+ service:add domain.com short_name # Add the service to the domain
81
+ service:remove domain.com short_name # Remove the service from the domain
82
+
83
+ certificate:list domain.com # List all certificates for a domain
84
+ certificate:describe domain.com id # Get a specific certificate for a domain
85
+ certificate:purchase domain.com name contact_id # Purchase a certificate
86
+ certificate:submit domain.com id approver_email # Submit a certificate for processing
87
+
88
+ Please see the DNSimple documentation at https://dnsimple.com/documentation/api for additional
89
+ information on the commands that are available to DNSimple customers.
90
+
91
+ EOF
92
+ end
93
+
94
+ if $0.split("/").last == 'dnsimple'
95
+
96
+ options = {}
97
+
98
+ global = OptionParser.new do |opts|
99
+ opts.on("-s", "--site [ARG]") do |site|
100
+ DNSimple::Client.base_uri = site
101
+ end
102
+ opts.on("-u", "--username [ARG]") do |username|
103
+ DNSimple::Client.username = username
104
+ end
105
+ opts.on("-p", "--password [ARG]") do |password|
106
+ DNSimple::Client.password = password
107
+ end
108
+ opts.on("-c", "--credentials [ARG]") do |credentials|
109
+ DNSimple::Client.load_credentials(credentials)
110
+ end
111
+ opts.on("-d") do
112
+ DNSimple::Client.debug = true
113
+ end
114
+ end
115
+
116
+ subcommands = {
117
+ 'create' => OptionParser.new do |opts|
118
+ opts.on("--template [ARG]") do |opt|
119
+ options[:template] = opt
120
+ end
121
+ end,
122
+ 'register' => OptionParser.new do |opts|
123
+ opts.on("--template [ARG]") do |opt|
124
+ options[:template] = opt
125
+ end
126
+ end,
127
+ 'record:create' => OptionParser.new do |opts|
128
+ opts.on("--prio [ARG]") do |prio|
129
+ options[:prio] = prio
130
+ end
131
+ end,
132
+ 'template:add_record' => OptionParser.new do |opts|
133
+ opts.on("--prio [ARG]") do |prio|
134
+ options[:prio] = prio
135
+ end
136
+ end,
137
+ }
138
+
139
+ global.order!
140
+ command = ARGV.shift
141
+ if command.nil? || command == 'help'
142
+ usage
143
+ else
144
+ options_parser = subcommands[command]
145
+ options_parser.order! if options_parser
146
+ begin
147
+ cli.execute(command, ARGV, options)
148
+ rescue DNSimple::CommandNotFound => e
149
+ puts e.message
150
+ end
151
+ end
152
+
153
+ end
@@ -0,0 +1,191 @@
1
+ # Generated by jeweler
2
+ # DO NOT EDIT THIS FILE DIRECTLY
3
+ # Instead, edit Jeweler::Tasks in Rakefile, and run 'rake gemspec'
4
+ # -*- encoding: utf-8 -*-
5
+
6
+ Gem::Specification.new do |s|
7
+ s.name = "dnsimple-ruby"
8
+ s.version = "1.2.6"
9
+
10
+ s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
+ s.authors = ["Anthony Eden"]
12
+ s.date = "2012-03-10"
13
+ s.description = "A ruby wrapper for the DNSimple API that also includes a command-line client."
14
+ s.email = "anthony.eden@dnsimple.com"
15
+ s.executables = ["dnsimple"]
16
+ s.extra_rdoc_files = [
17
+ "LICENSE",
18
+ "README",
19
+ "README.rdoc",
20
+ "README.textile"
21
+ ]
22
+ s.files = [
23
+ ".bundle/config",
24
+ ".rvmrc",
25
+ "Gemfile",
26
+ "Gemfile.lock",
27
+ "LICENSE",
28
+ "README",
29
+ "README.rdoc",
30
+ "README.textile",
31
+ "Rakefile",
32
+ "VERSION",
33
+ "bin/dnsimple",
34
+ "bin/dnsimple.rb",
35
+ "dnsimple-ruby.gemspec",
36
+ "features/README",
37
+ "features/cli/certificates/purchase_certificate.feature",
38
+ "features/cli/contacts/create_contact.feature",
39
+ "features/cli/domains/check_domain.feature",
40
+ "features/cli/domains/create_domain.feature",
41
+ "features/cli/domains/delete_domain.feature",
42
+ "features/cli/domains/register_domain.feature",
43
+ "features/cli/records/create_ptr_record.feature",
44
+ "features/cli/records/create_record.feature",
45
+ "features/cli/records/delete_record.feature",
46
+ "features/cli/templates/apply_template.feature",
47
+ "features/step_definitions/certificate_steps.rb",
48
+ "features/step_definitions/cli_steps.rb",
49
+ "features/step_definitions/domain_steps.rb",
50
+ "features/step_definitions/record_steps.rb",
51
+ "features/step_definitions/template_steps.rb",
52
+ "features/support/env.rb",
53
+ "fixtures/vcr_cassettes/DNSimple_Certificate/_all.yml",
54
+ "fixtures/vcr_cassettes/DNSimple_Certificate/_purchase.yml",
55
+ "fixtures/vcr_cassettes/DNSimple_Certificate/_submit.yml",
56
+ "fixtures/vcr_cassettes/DNSimple_Contact/a_new_contact.yml",
57
+ "fixtures/vcr_cassettes/DNSimple_Contact/an_existing_contact.yml",
58
+ "fixtures/vcr_cassettes/DNSimple_Domain/_all.yml",
59
+ "fixtures/vcr_cassettes/DNSimple_Domain/applying_templates.yml",
60
+ "fixtures/vcr_cassettes/DNSimple_Domain/creating_a_new_domain.yml",
61
+ "fixtures/vcr_cassettes/DNSimple_Domain/finding_an_existing_domain/by_id.yml",
62
+ "fixtures/vcr_cassettes/DNSimple_Domain/finding_an_existing_domain/by_name.yml",
63
+ "fixtures/vcr_cassettes/DNSimple_Domain/registration/with_a_new_registrant_contact.yml",
64
+ "fixtures/vcr_cassettes/DNSimple_Domain/registration/with_an_existing_contact.yml",
65
+ "fixtures/vcr_cassettes/DNSimple_Domain/setting_name_servers.yml",
66
+ "fixtures/vcr_cassettes/DNSimple_ExtendedAttribute/list_extended_attributes/for_ca.yml",
67
+ "fixtures/vcr_cassettes/DNSimple_ExtendedAttribute/list_extended_attributes/for_com.yml",
68
+ "fixtures/vcr_cassettes/DNSimple_Record/_all.yml",
69
+ "fixtures/vcr_cassettes/DNSimple_Record/creating_a_new_record.yml",
70
+ "fixtures/vcr_cassettes/DNSimple_Record/find_a_record.yml",
71
+ "fixtures/vcr_cassettes/DNSimple_Template/a_template.yml",
72
+ "fixtures/vcr_cassettes/DNSimple_User/_me.yml",
73
+ "lib/dnsimple.rb",
74
+ "lib/dnsimple/certificate.rb",
75
+ "lib/dnsimple/cli.rb",
76
+ "lib/dnsimple/client.rb",
77
+ "lib/dnsimple/command.rb",
78
+ "lib/dnsimple/commands/add_service.rb",
79
+ "lib/dnsimple/commands/add_template_record.rb",
80
+ "lib/dnsimple/commands/apply_template.rb",
81
+ "lib/dnsimple/commands/check_domain.rb",
82
+ "lib/dnsimple/commands/clear_domain.rb",
83
+ "lib/dnsimple/commands/create_contact.rb",
84
+ "lib/dnsimple/commands/create_domain.rb",
85
+ "lib/dnsimple/commands/create_record.rb",
86
+ "lib/dnsimple/commands/create_template.rb",
87
+ "lib/dnsimple/commands/delete_contact.rb",
88
+ "lib/dnsimple/commands/delete_domain.rb",
89
+ "lib/dnsimple/commands/delete_record.rb",
90
+ "lib/dnsimple/commands/delete_template.rb",
91
+ "lib/dnsimple/commands/delete_template_record.rb",
92
+ "lib/dnsimple/commands/describe_certificate.rb",
93
+ "lib/dnsimple/commands/describe_contact.rb",
94
+ "lib/dnsimple/commands/describe_domain.rb",
95
+ "lib/dnsimple/commands/describe_record.rb",
96
+ "lib/dnsimple/commands/describe_service.rb",
97
+ "lib/dnsimple/commands/describe_user.rb",
98
+ "lib/dnsimple/commands/list_applied_services.rb",
99
+ "lib/dnsimple/commands/list_available_services.rb",
100
+ "lib/dnsimple/commands/list_certificates.rb",
101
+ "lib/dnsimple/commands/list_contacts.rb",
102
+ "lib/dnsimple/commands/list_domains.rb",
103
+ "lib/dnsimple/commands/list_extended_attributes.rb",
104
+ "lib/dnsimple/commands/list_records.rb",
105
+ "lib/dnsimple/commands/list_services.rb",
106
+ "lib/dnsimple/commands/list_template_records.rb",
107
+ "lib/dnsimple/commands/list_templates.rb",
108
+ "lib/dnsimple/commands/purchase_certificate.rb",
109
+ "lib/dnsimple/commands/register_domain.rb",
110
+ "lib/dnsimple/commands/remove_service.rb",
111
+ "lib/dnsimple/commands/submit_certificate.rb",
112
+ "lib/dnsimple/commands/transfer_domain.rb",
113
+ "lib/dnsimple/commands/update_contact.rb",
114
+ "lib/dnsimple/commands/update_record.rb",
115
+ "lib/dnsimple/contact.rb",
116
+ "lib/dnsimple/domain.rb",
117
+ "lib/dnsimple/error.rb",
118
+ "lib/dnsimple/extended_attribute.rb",
119
+ "lib/dnsimple/record.rb",
120
+ "lib/dnsimple/service.rb",
121
+ "lib/dnsimple/template.rb",
122
+ "lib/dnsimple/template_record.rb",
123
+ "lib/dnsimple/transfer_order.rb",
124
+ "lib/dnsimple/user.rb",
125
+ "spec/README",
126
+ "spec/certificate_spec.rb",
127
+ "spec/command_spec.rb",
128
+ "spec/commands/add_service_spec.rb",
129
+ "spec/commands/create_record_spec.rb",
130
+ "spec/commands/list_records_spec.rb",
131
+ "spec/commands/purchase_certificate_spec.rb",
132
+ "spec/commands/submit_certificate_spec.rb",
133
+ "spec/contact_spec.rb",
134
+ "spec/domain_spec.rb",
135
+ "spec/extended_attributes_spec.rb",
136
+ "spec/record_spec.rb",
137
+ "spec/spec_helper.rb",
138
+ "spec/template_spec.rb",
139
+ "spec/user_spec.rb"
140
+ ]
141
+ s.homepage = "http://github.com/aetrion/dnsimple-ruby"
142
+ s.require_paths = ["lib"]
143
+ s.rubygems_version = "1.8.15"
144
+ s.summary = "A ruby wrapper for the DNSimple API"
145
+
146
+ if s.respond_to? :specification_version then
147
+ s.specification_version = 3
148
+
149
+ if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
150
+ s.add_runtime_dependency(%q<httparty>, [">= 0"])
151
+ s.add_development_dependency(%q<rake>, [">= 0"])
152
+ s.add_development_dependency(%q<jeweler>, [">= 0"])
153
+ s.add_development_dependency(%q<rspec>, [">= 2.0.0"])
154
+ s.add_development_dependency(%q<mocha>, [">= 0"])
155
+ s.add_development_dependency(%q<ruby-debug>, [">= 0"])
156
+ s.add_development_dependency(%q<cucumber>, [">= 0"])
157
+ s.add_development_dependency(%q<aruba>, [">= 0"])
158
+ s.add_development_dependency(%q<ruby-debug>, [">= 0"])
159
+ s.add_development_dependency(%q<fakeweb>, [">= 0"])
160
+ s.add_development_dependency(%q<vcr>, [">= 0"])
161
+ s.add_runtime_dependency(%q<httparty>, [">= 0"])
162
+ else
163
+ s.add_dependency(%q<httparty>, [">= 0"])
164
+ s.add_dependency(%q<rake>, [">= 0"])
165
+ s.add_dependency(%q<jeweler>, [">= 0"])
166
+ s.add_dependency(%q<rspec>, [">= 2.0.0"])
167
+ s.add_dependency(%q<mocha>, [">= 0"])
168
+ s.add_dependency(%q<ruby-debug>, [">= 0"])
169
+ s.add_dependency(%q<cucumber>, [">= 0"])
170
+ s.add_dependency(%q<aruba>, [">= 0"])
171
+ s.add_dependency(%q<ruby-debug>, [">= 0"])
172
+ s.add_dependency(%q<fakeweb>, [">= 0"])
173
+ s.add_dependency(%q<vcr>, [">= 0"])
174
+ s.add_dependency(%q<httparty>, [">= 0"])
175
+ end
176
+ else
177
+ s.add_dependency(%q<httparty>, [">= 0"])
178
+ s.add_dependency(%q<rake>, [">= 0"])
179
+ s.add_dependency(%q<jeweler>, [">= 0"])
180
+ s.add_dependency(%q<rspec>, [">= 2.0.0"])
181
+ s.add_dependency(%q<mocha>, [">= 0"])
182
+ s.add_dependency(%q<ruby-debug>, [">= 0"])
183
+ s.add_dependency(%q<cucumber>, [">= 0"])
184
+ s.add_dependency(%q<aruba>, [">= 0"])
185
+ s.add_dependency(%q<ruby-debug>, [">= 0"])
186
+ s.add_dependency(%q<fakeweb>, [">= 0"])
187
+ s.add_dependency(%q<vcr>, [">= 0"])
188
+ s.add_dependency(%q<httparty>, [">= 0"])
189
+ end
190
+ end
191
+
@@ -0,0 +1,12 @@
1
+ Before running the DNSimple Ruby Client cucumber feature files, you must do the following:
2
+
3
+ 1.) If you haven't already go to https://test.dnsimple.com and create an account. Activate your account to the Platinum level using the credit card number of "1".
4
+
5
+ 2.) Create a file in your home directory called .dnsimple.test and include the following:
6
+
7
+ username: YOUR_USERNAME
8
+ password: YOUR_PASSWORD
9
+ site: https://test.dnsimple.com
10
+
11
+
12
+
@@ -0,0 +1,10 @@
1
+ Feature: purchase a certificate with the CLI
2
+ As a user
3
+ In order to purchase a certificate
4
+ I should be able to use the CLI for purchasing a certificate
5
+
6
+ @announce-cmd @announce-stdout
7
+ Scenario:
8
+ Given I have set up my credentials
9
+ When I run `dnsimple certificate:purchase` with a domain I created
10
+ Then the output should show that a certificate was purchased
@@ -0,0 +1,10 @@
1
+ Feature: create a contact with the CLI
2
+ As a user
3
+ In order to add a contact to my list of contacts
4
+ I should be able to use the CLI to create a contact
5
+
6
+ @announce-cmd
7
+ Scenario:
8
+ Given I have set up my credentials
9
+ When I run `dnsimple contact:create first:John last:Smith address1:"Example Road" city:Anytown state:Florida postal_code:12345 country:US email:john.smith@example.com phone:12225051122 label:test-contact`
10
+ Then the output should contain "Created contact John Smith"
@@ -0,0 +1,10 @@
1
+ Feature: check a domain with the CLI
2
+ As a user
3
+ In order to check if a domain is available for registration
4
+ I should be able to use the CLI to check domains
5
+
6
+ @announce-cmd
7
+ Scenario:
8
+ Given I have set up my credentials
9
+ When I run `dnsimple check domain.com`
10
+ Then the output should contain "Check domain result for domain.com: registered"
@@ -0,0 +1,10 @@
1
+ Feature: add a domain with the CLI
2
+ As a user
3
+ In order to add a domain to my account
4
+ I should be able to use the CLI to add domains
5
+
6
+ @announce-cmd
7
+ Scenario:
8
+ Given I have set up my credentials
9
+ When I run `dnsimple create` with a new domain
10
+ Then the output should show that the domain was created