mailroute 0.0.1 → 0.0.2

Sign up to get free protection for your applications and to get access to all the features.
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- mailroute (0.0.1)
4
+ mailroute (0.0.2)
5
5
  activeresource
6
6
  json_pure
7
7
  rest-client
data/README.md CHANGED
@@ -1,6 +1,10 @@
1
1
  # Mailroute [![Build Status](https://secure.travis-ci.org/MailRoute/mailroute_ruby.png)](http://travis-ci.org/MailRoute/mailroute_ruby)
2
2
 
3
- TODO: Write a gem description
3
+ Mailroute is a Ruby client for [mailroute.net](http://mailroute.net).
4
+
5
+ ## Requirements
6
+
7
+ Ruby 1.8.7, 1.9.3 or 2.0.0.
4
8
 
5
9
  ## Installation
6
10
 
@@ -12,23 +16,82 @@ And then execute:
12
16
 
13
17
  $ bundle
14
18
 
15
- Or install it yourself as:
19
+ Or install it by yourself as:
16
20
 
17
21
  $ gem install mailroute
18
22
 
19
23
  ## Usage
20
24
 
25
+ # Configuration
26
+
21
27
  Mailroute.configure(
22
28
  :username => '<username here>',
23
29
  :apikey => '0d1a...a33'
24
30
  )
25
31
 
26
- # Make sure that Mailroute configured properly
27
- Mailroute.check_connection #=> true
28
32
 
29
- Mailroute::Reseller.all #=> [...]
33
+ # Reseller
34
+
35
+ # A list of resellers
36
+ Mailroute::Reseller.list #=> [...]
37
+
38
+ # You can specify limit and offset
39
+ Mailroute::Reseller.list.offset(20).limit(30) #=> [...]
40
+
41
+ reseller = Mailroute::Reseller.get(12) #=> Reseller<...>
42
+ reseller.name #=> "John Doe"
43
+ reseller.name = 'Jane Doe'
44
+ reseller.save
45
+
46
+ Mailroute::Reseller.get(12).name #=> 'Jane Doe'
47
+
48
+ reseller.delete
49
+
50
+ Mailroute::Reseller.get(12) #=> ActiveResource::ResourceNotFound
51
+
52
+ reseller = Mailroute::Reseller.get(name: 'John Smith') #=> Reseller<...>
53
+
54
+ resellers = Mailroute::Reseller.search('Smith') #=> [Reseller<...>, ...]
55
+ resellers.include?(reseller) #=> true
56
+
57
+ Mailroute::Reseller.filter(name: 'Smith') #=> [...]
58
+ Mailroute::Reseller.filter(name__exact: 'John Smith') #=> [...]
59
+ Mailroute::Reseller.filter(name__starts_with: 'Jo') #=> [...]
60
+
61
+ Mailroute::Reseller.list.order_by('-name')
62
+ Mailroute::Reseller.list.order_by('name')
63
+ Mailroute::Reseller.list.order_by('created_at')
64
+
65
+ new_reseller = Mailroute::Reseller.create(name: 'New Guy') #=> Reseller<...>
66
+ new_reseller.id #=> 11111
67
+
68
+ new_resellers = Mailroute::Reseller.bulk_create(
69
+ { name: 'R2D2' },
70
+ { name: '3PO' },
71
+ { name: 'Luke Skywalker' }
72
+ )
73
+ new_resellers.count #=> 3
74
+
75
+ # mass deletion
76
+ # by ids:
77
+ Mailroute::Reseller.delete([10, 12, 13])
78
+ # by instances:
79
+ Mailroute::Reseller.delete(new_resellers)
80
+
81
+ # Associations:
82
+ reseller.customers #=> [Customer<...>, ...]
83
+ reseller.admins #=> [Admin<...>, ...]
84
+ reseller.contacts #=> [ResellerContact<...>, ...]
85
+ reseller.branding_info #=> BrandingInfo<...>
30
86
 
31
- Mailroute::Reseller.get(249) #=> Reseller<...>
87
+ send_welcome = true
88
+ reseller.create_admin('admin@example.com', send_welcome) #=> Admin<...>
89
+ reseller.delete_admin('admin@example.com')
90
+ reseller.create_contact(params) #=> ResellerContact<...>
91
+ reseller.create_customer(params) #=> Customer<...>
92
+
93
+ # All list operations allow chaining
94
+ Mailroute::Reseller.limit(10).offset(30).filter(name: 'Fox').order('created_at') #=> [Reseller<...>, ...]
32
95
 
33
96
  ## Contributing
34
97
 
@@ -38,7 +101,6 @@ Or install it yourself as:
38
101
  4. Push to the branch (`git push origin my-new-feature`)
39
102
  5. Create new Pull Request
40
103
 
41
-
42
104
  ## TODO
43
105
 
44
106
  1. clean up vcr cassettes
@@ -48,6 +48,18 @@ module Mailroute
48
48
  end
49
49
  end
50
50
  end
51
+
52
+ alias_method :create_by_attributes, :create
53
+ def create(*args)
54
+ if args.size == 1 && args.first.is_a?(String)
55
+ localpart, domain_name = *args.first.split('@')
56
+ domain = Domain.get(domain_name)
57
+ raise ActiveResource::ResourceNotFound, "Domain with name #{domain_name} not found" unless domain
58
+ create_by_attributes(:localpart => localpart, :domain => domain, :create_opt => 'generate_pwd')
59
+ else
60
+ create_by_attributes(*args)
61
+ end
62
+ end
51
63
  end
52
64
  end
53
65
  end
@@ -1,3 +1,3 @@
1
1
  module Mailroute
2
- VERSION = "0.0.1"
2
+ VERSION = "0.0.2"
3
3
  end
@@ -10,7 +10,7 @@ Gem::Specification.new do |spec|
10
10
  spec.email = ["Viktar.Basharymau@gmail.com"]
11
11
  spec.description = %q{MailRoute API}
12
12
  spec.summary = %q{An API for http://mailroute.net}
13
- spec.homepage = "http://github.com/DNNX/mailroute"
13
+ spec.homepage = "http://github.com/MailRoute/mailroute"
14
14
  spec.license = "MIT"
15
15
 
16
16
  spec.files = `git ls-files`.split($/)
@@ -36,6 +36,33 @@ describe Mailroute::EmailAccount, :vcr => true do
36
36
  end
37
37
  end
38
38
 
39
+ describe '#create' do
40
+ context 'when domain exists' do
41
+ let(:existing_domain) { Mailroute::Domain.get('example.com') }
42
+
43
+ context 'creating an email account by email address' do
44
+ subject(:email_account) { Mailroute::EmailAccount.create('admin@example.com') }
45
+
46
+ it 'should be created successfully' do
47
+ email_account.id.should_not be_nil
48
+ end
49
+
50
+ its(:domain) { should == existing_domain }
51
+ its(:localpart) { should == 'admin' }
52
+ end
53
+ end
54
+
55
+ context "when domain doesn't exist" do
56
+ context 'creating an email account by email address' do
57
+ let(:email_account) { Mailroute::EmailAccount.create('admin@do.not.exist.example.net') }
58
+
59
+ it 'should raise ResourceNotFound error' do
60
+ expect { email_account }.to raise_error ActiveResource::ResourceNotFound
61
+ end
62
+ end
63
+ end
64
+ end
65
+
39
66
  it 'should be possible to create, read, update and delete email accounts' do
40
67
  domain = Mailroute::Domain.get(4555)
41
68
  new_account = nil
@@ -0,0 +1,37 @@
1
+ ---
2
+ recorded_with: VCR 2.4.0
3
+ http_interactions:
4
+ - request:
5
+ method: get
6
+ uri: https://admin-dev.mailroute.net/api/v1/domain/?name=do.not.exist.example.net
7
+ body:
8
+ string: ""
9
+ headers:
10
+ Authorization:
11
+ - ApiKey test_ruby:93ec480a01deb532ffb592ba711013e14422c4f1
12
+ Accept:
13
+ - application/json
14
+ response:
15
+ status:
16
+ code: 200
17
+ message: OK
18
+ headers:
19
+ Connection:
20
+ - keep-alive
21
+ Transfer-Encoding:
22
+ - chunked
23
+ Cache-Control:
24
+ - no-cache
25
+ Vary:
26
+ - Accept, Cookie
27
+ - Accept-Encoding
28
+ Content-Type:
29
+ - application/json; charset=utf-8
30
+ Date:
31
+ - Tue, 30 Apr 2013 19:58:09 GMT
32
+ Server:
33
+ - nginx/1.2.6
34
+ body:
35
+ string: "{\"meta\": {\"limit\": 20, \"next\": null, \"offset\": 0, \"previous\": null, \"total_count\": 0}, \"objects\": []}"
36
+ http_version:
37
+ recorded_at: Tue, 30 Apr 2013 19:58:09 GMT
@@ -0,0 +1,106 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: get
5
+ uri: https://admin-dev.mailroute.net/api/v1/domain/?name=example.com
6
+ body:
7
+ string: ""
8
+ headers:
9
+ Accept:
10
+ - application/json
11
+ Authorization:
12
+ - ApiKey test_ruby:93ec480a01deb532ffb592ba711013e14422c4f1
13
+ response:
14
+ status:
15
+ code: 200
16
+ message: OK
17
+ headers:
18
+ Cache-Control:
19
+ - no-cache
20
+ Content-Type:
21
+ - application/json; charset=utf-8
22
+ Connection:
23
+ - keep-alive
24
+ Date:
25
+ - Tue, 30 Apr 2013 19:37:33 GMT
26
+ Server:
27
+ - nginx/1.2.6
28
+ Transfer-Encoding:
29
+ - chunked
30
+ Vary:
31
+ - Accept, Cookie
32
+ - Accept-Encoding
33
+ body:
34
+ string: "{\"meta\": {\"limit\": 20, \"next\": null, \"offset\": 0, \"previous\": null, \"total_count\": 1}, \"objects\": [{\"absolute_url\": \"/domain/8372/\", \"active\": true, \"created_at\": \"Tue, 30 Apr 2013 12:02:15 -0700\", \"customer\": \"/api/v1/customer/11371/\", \"deliveryport\": 25, \"hold_email\": false, \"id\": 8372, \"name\": \"example.com\", \"notification_tasks\": [\"/api/v1/notification_domain_task/16919/\"], \"outbound_enabled\": false, \"policy\": \"/api/v1/policy_domain/16390/\", \"resource_uri\": \"/api/v1/domain/8372/\", \"updated_at\": \"Tue, 30 Apr 2013 12:02:15 -0700\", \"userlist_complete\": false}]}"
35
+ http_version:
36
+ recorded_at: Tue, 30 Apr 2013 19:37:34 GMT
37
+ - request:
38
+ method: post
39
+ uri: https://admin-dev.mailroute.net/api/v1/email_account/
40
+ body:
41
+ string: "{\"localpart\":\"admin\",\"domain\":\"/api/v1/domain/8372/\",\"create_opt\":\"generate_pwd\"}"
42
+ headers:
43
+ Content-Type:
44
+ - application/json
45
+ Accept:
46
+ - "*/*"
47
+ Authorization:
48
+ - ApiKey test_ruby:93ec480a01deb532ffb592ba711013e14422c4f1
49
+ response:
50
+ status:
51
+ code: 201
52
+ message: CREATED
53
+ headers:
54
+ Content-Type:
55
+ - application/json; charset=utf-8
56
+ Connection:
57
+ - keep-alive
58
+ Location:
59
+ - https://admin-dev.mailroute.net/api/v1/email_account/7716/
60
+ Date:
61
+ - Tue, 30 Apr 2013 19:37:35 GMT
62
+ Server:
63
+ - nginx/1.2.6
64
+ Transfer-Encoding:
65
+ - chunked
66
+ Vary:
67
+ - Accept, Cookie
68
+ body:
69
+ string: "{\"absolute_url\": \"/user/7716/\", \"aliases\": \"\", \"change_pwd\": null, \"contact\": null, \"create_opt\": null, \"created_at\": \"Tue, 30 Apr 2013 12:37:35 -0700\", \"domain\": \"/api/v1/domain/8372/\", \"domain_name\": \"example.com\", \"id\": 7716, \"localpart\": \"admin\", \"notification_tasks\": [\"/api/v1/notification_account_task/16922/\"], \"policy\": \"/api/v1/policy_user/16393/\", \"priority\": 8, \"resource_uri\": \"/api/v1/email_account/7716/\", \"updated_at\": \"Tue, 30 Apr 2013 12:37:35 -0700\", \"use_domain_notifications\": true}"
70
+ http_version:
71
+ recorded_at: Tue, 30 Apr 2013 19:37:35 GMT
72
+ - request:
73
+ method: get
74
+ uri: https://admin-dev.mailroute.net/api/v1/domain/?name=example.com
75
+ body:
76
+ string: ""
77
+ headers:
78
+ Accept:
79
+ - application/json
80
+ Authorization:
81
+ - ApiKey test_ruby:93ec480a01deb532ffb592ba711013e14422c4f1
82
+ response:
83
+ status:
84
+ code: 200
85
+ message: OK
86
+ headers:
87
+ Cache-Control:
88
+ - no-cache
89
+ Content-Type:
90
+ - application/json; charset=utf-8
91
+ Connection:
92
+ - keep-alive
93
+ Date:
94
+ - Tue, 30 Apr 2013 19:37:37 GMT
95
+ Server:
96
+ - nginx/1.2.6
97
+ Transfer-Encoding:
98
+ - chunked
99
+ Vary:
100
+ - Accept, Cookie
101
+ - Accept-Encoding
102
+ body:
103
+ string: "{\"meta\": {\"limit\": 20, \"next\": null, \"offset\": 0, \"previous\": null, \"total_count\": 1}, \"objects\": [{\"absolute_url\": \"/domain/8372/\", \"active\": true, \"created_at\": \"Tue, 30 Apr 2013 12:02:15 -0700\", \"customer\": \"/api/v1/customer/11371/\", \"deliveryport\": 25, \"hold_email\": false, \"id\": 8372, \"name\": \"example.com\", \"notification_tasks\": [\"/api/v1/notification_domain_task/16919/\"], \"outbound_enabled\": false, \"policy\": \"/api/v1/policy_domain/16390/\", \"resource_uri\": \"/api/v1/domain/8372/\", \"updated_at\": \"Tue, 30 Apr 2013 12:02:15 -0700\", \"userlist_complete\": false}]}"
104
+ http_version:
105
+ recorded_at: Tue, 30 Apr 2013 19:37:37 GMT
106
+ recorded_with: VCR 2.4.0
@@ -0,0 +1,72 @@
1
+ ---
2
+ recorded_with: VCR 2.4.0
3
+ http_interactions:
4
+ - request:
5
+ method: get
6
+ uri: https://admin-dev.mailroute.net/api/v1/domain/?name=example.com
7
+ body:
8
+ string: ""
9
+ headers:
10
+ Accept:
11
+ - application/json
12
+ Authorization:
13
+ - ApiKey test_ruby:93ec480a01deb532ffb592ba711013e14422c4f1
14
+ response:
15
+ status:
16
+ code: 200
17
+ message: OK
18
+ headers:
19
+ Connection:
20
+ - keep-alive
21
+ Transfer-Encoding:
22
+ - chunked
23
+ Server:
24
+ - nginx/1.2.6
25
+ Vary:
26
+ - Accept, Cookie
27
+ - Accept-Encoding
28
+ Date:
29
+ - Tue, 30 Apr 2013 19:38:43 GMT
30
+ Content-Type:
31
+ - application/json; charset=utf-8
32
+ Cache-Control:
33
+ - no-cache
34
+ body:
35
+ string: "{\"meta\": {\"limit\": 20, \"next\": null, \"offset\": 0, \"previous\": null, \"total_count\": 1}, \"objects\": [{\"absolute_url\": \"/domain/8372/\", \"active\": true, \"created_at\": \"Tue, 30 Apr 2013 12:02:15 -0700\", \"customer\": \"/api/v1/customer/11371/\", \"deliveryport\": 25, \"hold_email\": false, \"id\": 8372, \"name\": \"example.com\", \"notification_tasks\": [\"/api/v1/notification_domain_task/16919/\"], \"outbound_enabled\": false, \"policy\": \"/api/v1/policy_domain/16390/\", \"resource_uri\": \"/api/v1/domain/8372/\", \"updated_at\": \"Tue, 30 Apr 2013 12:02:15 -0700\", \"userlist_complete\": false}]}"
36
+ http_version:
37
+ recorded_at: Tue, 30 Apr 2013 19:38:43 GMT
38
+ - request:
39
+ method: post
40
+ uri: https://admin-dev.mailroute.net/api/v1/email_account/
41
+ body:
42
+ string: "{\"domain\":\"/api/v1/domain/8372/\",\"create_opt\":\"generate_pwd\",\"localpart\":\"admin\"}"
43
+ headers:
44
+ Accept:
45
+ - "*/*"
46
+ Authorization:
47
+ - ApiKey test_ruby:93ec480a01deb532ffb592ba711013e14422c4f1
48
+ Content-Type:
49
+ - application/json
50
+ response:
51
+ status:
52
+ code: 201
53
+ message: CREATED
54
+ headers:
55
+ Connection:
56
+ - keep-alive
57
+ Transfer-Encoding:
58
+ - chunked
59
+ Server:
60
+ - nginx/1.2.6
61
+ Vary:
62
+ - Accept, Cookie
63
+ Date:
64
+ - Tue, 30 Apr 2013 19:38:45 GMT
65
+ Content-Type:
66
+ - application/json; charset=utf-8
67
+ Location:
68
+ - https://admin-dev.mailroute.net/api/v1/email_account/7717/
69
+ body:
70
+ string: "{\"absolute_url\": \"/user/7717/\", \"aliases\": \"\", \"change_pwd\": null, \"contact\": null, \"create_opt\": null, \"created_at\": \"Tue, 30 Apr 2013 12:38:45 -0700\", \"domain\": \"/api/v1/domain/8372/\", \"domain_name\": \"example.com\", \"id\": 7717, \"localpart\": \"admin\", \"notification_tasks\": [\"/api/v1/notification_account_task/16923/\"], \"policy\": \"/api/v1/policy_user/16394/\", \"priority\": 8, \"resource_uri\": \"/api/v1/email_account/7717/\", \"updated_at\": \"Tue, 30 Apr 2013 12:38:45 -0700\", \"use_domain_notifications\": true}"
71
+ http_version:
72
+ recorded_at: Tue, 30 Apr 2013 19:38:45 GMT
@@ -0,0 +1,72 @@
1
+ ---
2
+ recorded_with: VCR 2.4.0
3
+ http_interactions:
4
+ - request:
5
+ method: get
6
+ uri: https://admin-dev.mailroute.net/api/v1/domain/?name=example.com
7
+ body:
8
+ string: ""
9
+ headers:
10
+ Authorization:
11
+ - ApiKey test_ruby:93ec480a01deb532ffb592ba711013e14422c4f1
12
+ Accept:
13
+ - application/json
14
+ response:
15
+ status:
16
+ code: 200
17
+ message: OK
18
+ headers:
19
+ Connection:
20
+ - keep-alive
21
+ Content-Type:
22
+ - application/json; charset=utf-8
23
+ Cache-Control:
24
+ - no-cache
25
+ Date:
26
+ - Tue, 30 Apr 2013 19:32:32 GMT
27
+ Server:
28
+ - nginx/1.2.6
29
+ Transfer-Encoding:
30
+ - chunked
31
+ Vary:
32
+ - Accept, Cookie
33
+ - Accept-Encoding
34
+ body:
35
+ string: "{\"meta\": {\"limit\": 20, \"next\": null, \"offset\": 0, \"previous\": null, \"total_count\": 1}, \"objects\": [{\"absolute_url\": \"/domain/8372/\", \"active\": true, \"created_at\": \"Tue, 30 Apr 2013 12:02:15 -0700\", \"customer\": \"/api/v1/customer/11371/\", \"deliveryport\": 25, \"hold_email\": false, \"id\": 8372, \"name\": \"example.com\", \"notification_tasks\": [\"/api/v1/notification_domain_task/16919/\"], \"outbound_enabled\": false, \"policy\": \"/api/v1/policy_domain/16390/\", \"resource_uri\": \"/api/v1/domain/8372/\", \"updated_at\": \"Tue, 30 Apr 2013 12:02:15 -0700\", \"userlist_complete\": false}]}"
36
+ http_version:
37
+ recorded_at: Tue, 30 Apr 2013 19:32:34 GMT
38
+ - request:
39
+ method: post
40
+ uri: https://admin-dev.mailroute.net/api/v1/email_account/
41
+ body:
42
+ string: "{\"localpart\":\"admin\",\"create_opt\":\"generate_pwd\",\"domain\":\"/api/v1/domain/8372/\"}"
43
+ headers:
44
+ Content-Type:
45
+ - application/json
46
+ Authorization:
47
+ - ApiKey test_ruby:93ec480a01deb532ffb592ba711013e14422c4f1
48
+ Accept:
49
+ - "*/*"
50
+ response:
51
+ status:
52
+ code: 201
53
+ message: CREATED
54
+ headers:
55
+ Connection:
56
+ - keep-alive
57
+ Content-Type:
58
+ - application/json; charset=utf-8
59
+ Location:
60
+ - https://admin-dev.mailroute.net/api/v1/email_account/7715/
61
+ Date:
62
+ - Tue, 30 Apr 2013 19:32:36 GMT
63
+ Server:
64
+ - nginx/1.2.6
65
+ Transfer-Encoding:
66
+ - chunked
67
+ Vary:
68
+ - Accept, Cookie
69
+ body:
70
+ string: "{\"absolute_url\": \"/user/7715/\", \"aliases\": \"\", \"change_pwd\": null, \"contact\": null, \"create_opt\": null, \"created_at\": \"Tue, 30 Apr 2013 12:32:35 -0700\", \"domain\": \"/api/v1/domain/8372/\", \"domain_name\": \"example.com\", \"id\": 7715, \"localpart\": \"admin\", \"notification_tasks\": [\"/api/v1/notification_account_task/16921/\"], \"policy\": \"/api/v1/policy_user/16392/\", \"priority\": 8, \"resource_uri\": \"/api/v1/email_account/7715/\", \"updated_at\": \"Tue, 30 Apr 2013 12:32:36 -0700\", \"use_domain_notifications\": true}"
71
+ http_version:
72
+ recorded_at: Tue, 30 Apr 2013 19:32:36 GMT
@@ -34,7 +34,7 @@ http_interactions:
34
34
  Transfer-Encoding:
35
35
  - chunked
36
36
  body:
37
- string: "{\"error_message\": \"No Reseller matches the given query.\", \"traceback\": \"Traceback (most recent call last):\\n\\n File \\\"/home/mroute/venv/admin-dev/lib/python2.7/site-packages/tastypie/resources.py\\\", line 202, in wrapper\\n response = callback(request, *args, **kwargs)\\n\\n File \\\"/home/mroute/venv/admin-dev/lib/python2.7/site-packages/tastypie/resources.py\\\", line 441, in dispatch_list\\n return self.dispatch('list', request, **kwargs)\\n\\n File \\\"apps/amavisd/api/resources.py\\\", line 1245, in dispatch\\n self._extract_owner(kwargs, request)\\n\\n File \\\"apps/amavisd/api/resources.py\\\", line 1238, in _extract_owner\\n self.owner_obj = get_object_or_404(Reseller, pk=self.obj_id)\\n\\n File \\\"/home/mroute/venv/admin-dev/lib/python2.7/site-packages/django/shortcuts/__init__.py\\\", line 115, in get_object_or_404\\n raise Http404('No %s matches the given query.' % queryset.model._meta.object_name)\\n\\nHttp404: No Reseller matches the given query.\\n\"}"
37
+ string: "{\"error_message\": \"No Reseller matches the given query.\", \"traceback\": \"Traceback (most recent call last):\\n\\n File \\\"/home/mroute/venv/ci/lib/python2.7/site-packages/tastypie/resources.py\\\", line 202, in wrapper\\n response = callback(request, *args, **kwargs)\\n\\n File \\\"/home/mroute/venv/ci/lib/python2.7/site-packages/tastypie/resources.py\\\", line 441, in dispatch_list\\n return self.dispatch('list', request, **kwargs)\\n\\n File \\\"apps/amavisd/api/resources.py\\\", line 1245, in dispatch\\n self._extract_owner(kwargs, request)\\n\\n File \\\"apps/amavisd/api/resources.py\\\", line 1238, in _extract_owner\\n self.owner_obj = get_object_or_404(Reseller, pk=self.obj_id)\\n\\n File \\\"/home/mroute/venv/ci/lib/python2.7/site-packages/django/shortcuts/__init__.py\\\", line 115, in get_object_or_404\\n raise Http404('No %s matches the given query.' % queryset.model._meta.object_name)\\n\\nHttp404: No Reseller matches the given query.\\n\"}"
38
38
  http_version:
39
39
  recorded_at: Mon, 11 Mar 2013 20:09:24 GMT
40
40
  - request:
metadata CHANGED
@@ -1,13 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: mailroute
3
3
  version: !ruby/object:Gem::Version
4
- hash: 29
4
+ hash: 27
5
5
  prerelease:
6
6
  segments:
7
7
  - 0
8
8
  - 0
9
- - 1
10
- version: 0.0.1
9
+ - 2
10
+ version: 0.0.2
11
11
  platform: ruby
12
12
  authors:
13
13
  - Viktar Basharymau
@@ -15,11 +15,10 @@ autorequire:
15
15
  bindir: bin
16
16
  cert_chain: []
17
17
 
18
- date: 2013-04-24 00:00:00 Z
18
+ date: 2013-04-30 00:00:00 Z
19
19
  dependencies:
20
20
  - !ruby/object:Gem::Dependency
21
21
  name: rest-client
22
- prerelease: false
23
22
  version_requirements: &id001 !ruby/object:Gem::Requirement
24
23
  none: false
25
24
  requirements:
@@ -29,11 +28,11 @@ dependencies:
29
28
  segments:
30
29
  - 0
31
30
  version: "0"
31
+ prerelease: false
32
32
  type: :runtime
33
33
  requirement: *id001
34
34
  - !ruby/object:Gem::Dependency
35
35
  name: json_pure
36
- prerelease: false
37
36
  version_requirements: &id002 !ruby/object:Gem::Requirement
38
37
  none: false
39
38
  requirements:
@@ -43,11 +42,11 @@ dependencies:
43
42
  segments:
44
43
  - 0
45
44
  version: "0"
45
+ prerelease: false
46
46
  type: :runtime
47
47
  requirement: *id002
48
48
  - !ruby/object:Gem::Dependency
49
49
  name: activeresource
50
- prerelease: false
51
50
  version_requirements: &id003 !ruby/object:Gem::Requirement
52
51
  none: false
53
52
  requirements:
@@ -57,11 +56,11 @@ dependencies:
57
56
  segments:
58
57
  - 0
59
58
  version: "0"
59
+ prerelease: false
60
60
  type: :runtime
61
61
  requirement: *id003
62
62
  - !ruby/object:Gem::Dependency
63
63
  name: bundler
64
- prerelease: false
65
64
  version_requirements: &id004 !ruby/object:Gem::Requirement
66
65
  none: false
67
66
  requirements:
@@ -71,11 +70,11 @@ dependencies:
71
70
  segments:
72
71
  - 0
73
72
  version: "0"
73
+ prerelease: false
74
74
  type: :development
75
75
  requirement: *id004
76
76
  - !ruby/object:Gem::Dependency
77
77
  name: rake
78
- prerelease: false
79
78
  version_requirements: &id005 !ruby/object:Gem::Requirement
80
79
  none: false
81
80
  requirements:
@@ -85,11 +84,11 @@ dependencies:
85
84
  segments:
86
85
  - 0
87
86
  version: "0"
87
+ prerelease: false
88
88
  type: :development
89
89
  requirement: *id005
90
90
  - !ruby/object:Gem::Dependency
91
91
  name: guard-rspec
92
- prerelease: false
93
92
  version_requirements: &id006 !ruby/object:Gem::Requirement
94
93
  none: false
95
94
  requirements:
@@ -99,11 +98,11 @@ dependencies:
99
98
  segments:
100
99
  - 0
101
100
  version: "0"
101
+ prerelease: false
102
102
  type: :development
103
103
  requirement: *id006
104
104
  - !ruby/object:Gem::Dependency
105
105
  name: rb-inotify
106
- prerelease: false
107
106
  version_requirements: &id007 !ruby/object:Gem::Requirement
108
107
  none: false
109
108
  requirements:
@@ -113,11 +112,11 @@ dependencies:
113
112
  segments:
114
113
  - 0
115
114
  version: "0"
115
+ prerelease: false
116
116
  type: :development
117
117
  requirement: *id007
118
118
  - !ruby/object:Gem::Dependency
119
119
  name: rb-fsevent
120
- prerelease: false
121
120
  version_requirements: &id008 !ruby/object:Gem::Requirement
122
121
  none: false
123
122
  requirements:
@@ -127,11 +126,11 @@ dependencies:
127
126
  segments:
128
127
  - 0
129
128
  version: "0"
129
+ prerelease: false
130
130
  type: :development
131
131
  requirement: *id008
132
132
  - !ruby/object:Gem::Dependency
133
133
  name: vcr
134
- prerelease: false
135
134
  version_requirements: &id009 !ruby/object:Gem::Requirement
136
135
  none: false
137
136
  requirements:
@@ -141,11 +140,11 @@ dependencies:
141
140
  segments:
142
141
  - 0
143
142
  version: "0"
143
+ prerelease: false
144
144
  type: :development
145
145
  requirement: *id009
146
146
  - !ruby/object:Gem::Dependency
147
147
  name: webmock
148
- prerelease: false
149
148
  version_requirements: &id010 !ruby/object:Gem::Requirement
150
149
  none: false
151
150
  requirements:
@@ -155,11 +154,11 @@ dependencies:
155
154
  segments:
156
155
  - 0
157
156
  version: "0"
157
+ prerelease: false
158
158
  type: :development
159
159
  requirement: *id010
160
160
  - !ruby/object:Gem::Dependency
161
161
  name: awesome_print
162
- prerelease: false
163
162
  version_requirements: &id011 !ruby/object:Gem::Requirement
164
163
  none: false
165
164
  requirements:
@@ -169,6 +168,7 @@ dependencies:
169
168
  segments:
170
169
  - 0
171
170
  version: "0"
171
+ prerelease: false
172
172
  type: :development
173
173
  requirement: *id011
174
174
  description: MailRoute API
@@ -297,6 +297,10 @@ files:
297
297
  - spec/vcr_cassettes/Mailroute_Domain/move_to_customer/should_move_domain_to_another_customer.yml
298
298
  - spec/vcr_cassettes/Mailroute_DomainAlias/should_be_possible_to_create_read_update_and_delete_domain_aliases.yml
299
299
  - spec/vcr_cassettes/Mailroute_DomainContact/CRUD/should_create_read_update_and_delete_domain_contacts.yml
300
+ - spec/vcr_cassettes/Mailroute_EmailAccount/_create/when_domain_doesn_t_exist/creating_an_email_account_by_email_address/should_raise_ResourceNotFound_error.yml
301
+ - spec/vcr_cassettes/Mailroute_EmailAccount/_create/when_domain_exists/creating_an_email_account_by_email_address/domain/.yml
302
+ - spec/vcr_cassettes/Mailroute_EmailAccount/_create/when_domain_exists/creating_an_email_account_by_email_address/localpart/.yml
303
+ - spec/vcr_cassettes/Mailroute_EmailAccount/_create/when_domain_exists/creating_an_email_account_by_email_address/should_be_created_successfully.yml
300
304
  - spec/vcr_cassettes/Mailroute_EmailAccount/_get/by_id/should_return_an_account.yml
301
305
  - spec/vcr_cassettes/Mailroute_EmailAccount/_get/by_localpart_and_domain/should_return_an_account.yml
302
306
  - spec/vcr_cassettes/Mailroute_EmailAccount/_get/by_localpart_and_domain_id/should_return_an_account.yml
@@ -370,7 +374,7 @@ files:
370
374
  - spec/vcr_cassettes/Valid_Reseller.yml
371
375
  - spec/vcr_cassettes/Valid_Reseller_.yml
372
376
  - spec/vcr_cassettes/Valid_Reseller_with_Branding_Info.yml
373
- homepage: http://github.com/DNNX/mailroute
377
+ homepage: http://github.com/MailRoute/mailroute
374
378
  licenses:
375
379
  - MIT
376
380
  post_install_message:
@@ -399,7 +403,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
399
403
  requirements: []
400
404
 
401
405
  rubyforge_project:
402
- rubygems_version: 1.8.24
406
+ rubygems_version: 1.8.25
403
407
  signing_key:
404
408
  specification_version: 3
405
409
  summary: An API for http://mailroute.net
@@ -478,6 +482,10 @@ test_files:
478
482
  - spec/vcr_cassettes/Mailroute_Domain/move_to_customer/should_move_domain_to_another_customer.yml
479
483
  - spec/vcr_cassettes/Mailroute_DomainAlias/should_be_possible_to_create_read_update_and_delete_domain_aliases.yml
480
484
  - spec/vcr_cassettes/Mailroute_DomainContact/CRUD/should_create_read_update_and_delete_domain_contacts.yml
485
+ - spec/vcr_cassettes/Mailroute_EmailAccount/_create/when_domain_doesn_t_exist/creating_an_email_account_by_email_address/should_raise_ResourceNotFound_error.yml
486
+ - spec/vcr_cassettes/Mailroute_EmailAccount/_create/when_domain_exists/creating_an_email_account_by_email_address/domain/.yml
487
+ - spec/vcr_cassettes/Mailroute_EmailAccount/_create/when_domain_exists/creating_an_email_account_by_email_address/localpart/.yml
488
+ - spec/vcr_cassettes/Mailroute_EmailAccount/_create/when_domain_exists/creating_an_email_account_by_email_address/should_be_created_successfully.yml
481
489
  - spec/vcr_cassettes/Mailroute_EmailAccount/_get/by_id/should_return_an_account.yml
482
490
  - spec/vcr_cassettes/Mailroute_EmailAccount/_get/by_localpart_and_domain/should_return_an_account.yml
483
491
  - spec/vcr_cassettes/Mailroute_EmailAccount/_get/by_localpart_and_domain_id/should_return_an_account.yml