mailroute 0.0.1 → 0.0.2

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.
@@ -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