one-email_direct 0.6.4 → 0.6.8

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,28 @@
1
+ # Class to encapsulate EmailDirect web service errors.
2
+ #
3
+ class One::EmailDirect::EmailDirectException < StandardError
4
+
5
+ attr_reader :code, :message
6
+
7
+
8
+
9
+ # Constructs an EmailDirectException instance.
10
+ #
11
+ # @param code [Fixnum] the webservice error status.
12
+ # @param message [String] the webservice error message.
13
+ #
14
+ def initialize(code, message)
15
+ @code = code
16
+ @message = message
17
+ end
18
+
19
+
20
+
21
+ # Returns a string representation of this object.
22
+ #
23
+ # @return [String] string representation of this object.
24
+ def to_s()
25
+ '[%s] %s' % [@code, @message]
26
+ end
27
+
28
+ end
@@ -29,7 +29,7 @@ module One::EmailDirect::Mixins::EmailFacade
29
29
  :force => force
30
30
  }
31
31
  )
32
- raise StandardError, '[%s] %s' % [response[:code], response[:message]] if response[:code] != '0'
32
+ raise One::EmailDirect::EmailDirectException.new(response[:code], response[:message]) if response[:code] != '0'
33
33
  end
34
34
 
35
35
 
@@ -68,7 +68,7 @@ module One::EmailDirect::Mixins::EmailFacade
68
68
  :custom_fields => custom_fields
69
69
  }
70
70
  )
71
- raise StandardError, '[%s] %s' % [response[:code], response[:message]] if response[:code] != '0'
71
+ raise One::EmailDirect::EmailDirectException.new(response[:code], response[:message]) if response[:code] != '0'
72
72
  end
73
73
 
74
74
 
@@ -92,7 +92,7 @@ module One::EmailDirect::Mixins::EmailFacade
92
92
  :force => force
93
93
  }
94
94
  )
95
- raise StandardError, '[%s] %s' % [response[:code], response[:message]] if response[:code] != '0'
95
+ raise One::EmailDirect::EmailDirectException.new(response[:code], response[:message]) if response[:code] != '0'
96
96
  end
97
97
 
98
98
 
@@ -16,7 +16,7 @@ module One::EmailDirect::Mixins::ListFacade
16
16
  :list_name => name,
17
17
  :list_description => description}
18
18
  )
19
- raise StandardError, '[%s] %s' % [response[:code], response[:message]] if response[:code] != '0'
19
+ raise One::EmailDirect::EmailDirectException.new(response[:code], response[:message]) if response[:code] != '0'
20
20
  end
21
21
 
22
22
 
@@ -35,7 +35,7 @@ module One::EmailDirect::Mixins::ListFacade
35
35
  :credentials => credentials,
36
36
  :list_id => list_id}
37
37
  )
38
- raise StandardError, '[%s] %s' % [response[:code], response[:message]] if response[:code] != '0'
38
+ raise One::EmailDirect::EmailDirectException.new(response[:code], response[:message]) if response[:code] != '0'
39
39
  end
40
40
 
41
41
 
@@ -16,7 +16,7 @@ module One::EmailDirect::Mixins::PublicationFacade
16
16
  :publication_name => name,
17
17
  :publication_description => description}
18
18
  )
19
- raise StandardError, '[%s] %s' % [response[:code], response[:message]] if response[:code] != '0'
19
+ raise One::EmailDirect::EmailDirectException.new(response[:code], response[:message]) if response[:code] != '0'
20
20
  end
21
21
 
22
22
 
@@ -35,7 +35,7 @@ module One::EmailDirect::Mixins::PublicationFacade
35
35
  :credentials => credentials,
36
36
  :publication_id => publication_id}
37
37
  )
38
- raise StandardError, '[%s] %s' % [response[:code], response[:message]] if response[:code] != '0'
38
+ raise One::EmailDirect::EmailDirectException.new(response[:code], response[:message]) if response[:code] != '0'
39
39
  end
40
40
 
41
41
 
@@ -16,7 +16,7 @@ module One::EmailDirect::Mixins::SourceFacade
16
16
  :source_name => name,
17
17
  :source_description => description}
18
18
  )
19
- raise StandardError, '[%s] %s' % [response[:code], response[:message]] if response[:code] != '0'
19
+ raise One::EmailDirect::EmailDirectException.new(response[:code], response[:message]) if response[:code] != '0'
20
20
  end
21
21
 
22
22
 
@@ -35,7 +35,7 @@ module One::EmailDirect::Mixins::SourceFacade
35
35
  :credentials => credentials,
36
36
  :source_id => source_id}
37
37
  )
38
- raise StandardError, '[%s] %s' % [response[:code], response[:message]] if response[:code] != '0'
38
+ raise One::EmailDirect::EmailDirectException.new(response[:code], response[:message]) if response[:code] != '0'
39
39
  end
40
40
 
41
41
 
@@ -17,6 +17,7 @@ module One
17
17
 
18
18
  autoload :Client, "#{File.dirname(__FILE__)}/one/email_direct/client"
19
19
  autoload :Credentials, "#{File.dirname(__FILE__)}/one/email_direct/credentials"
20
+ autoload :EmailDirectException, "#{File.dirname(__FILE__)}/one/email_direct/exception"
20
21
  autoload :Facade, "#{File.dirname(__FILE__)}/one/email_direct/facade"
21
22
 
22
23
  end
@@ -28,10 +29,4 @@ end
28
29
  configuration_file = 'config/development.yaml' # default
29
30
  configuration_file = ENV['ONE_CONFIG'] if ENV.has_key? 'ONE_CONFIG'
30
31
 
31
- Steenzout::ConfigurationManager.load configuration_file
32
-
33
- Savon.configure do |config|
34
- # config.log = false # disable logging
35
- # config.log_level = :info # changing the log level
36
- # config.logger = Rails.logger # using the Rails logger
37
- end
32
+ Steenzout::ConfigurationManager.load configuration_file
@@ -56,23 +56,23 @@ class TestEmailFacade < Test::Unit::TestCase
56
56
  @custom_fields1 = {
57
57
  'FirstName' => 'John',
58
58
  'LastName' => 'Doe',
59
- 'Age' => 30
59
+ 'Birthyear' => 1981
60
60
  }
61
61
  @custom_fields2 = {
62
62
  'FirstName' => 'Johny',
63
63
  'LastName' => 'Doey',
64
- 'Age' => 31
64
+ 'Birthyear' => 1980
65
65
  }
66
66
 
67
67
  @expected_custom_fields1 = [
68
68
  {:value => 'John', :field_name => 'FirstName'},
69
69
  {:value => 'Doe', :field_name => 'LastName'},
70
- {:value => '30', :field_name => 'Age'}
70
+ {:value => '1981', :field_name => 'Birthyear'}
71
71
  ]
72
72
  @expected_custom_fields2 = [
73
73
  {:value => 'Johny', :field_name => 'FirstName'},
74
74
  {:value => 'Doey', :field_name => 'LastName'},
75
- {:value => '31', :field_name => 'Age'}
75
+ {:value => '1980', :field_name => 'Birthyear'}
76
76
  ]
77
77
  end
78
78
 
@@ -91,6 +91,28 @@ class TestEmailFacade < Test::Unit::TestCase
91
91
  }
92
92
  end
93
93
 
94
+
95
+
96
+ # Removes dynamic properties for a Email_GetProperties output.
97
+ #
98
+ # @param result [Hash] the output to be cleaned.
99
+ # @return [Hash] filtered output.
100
+ #
101
+ def clean_email_getproperties(result)
102
+ result.delete(:create_date)
103
+ result.delete(:date_stamp)
104
+ result.delete(:ip_address)
105
+ result.delete(:email_id)
106
+ cleaned_custom_fields = []
107
+ result[:custom_fields][:custom_field].each { |element|
108
+ cleaned_custom_fields << element if !element[:field_name].eql? 'DateStamp' and !element[:field_name].eql? 'IPAddress'
109
+ }
110
+ result[:custom_fields][:custom_field] = cleaned_custom_fields
111
+ result
112
+ end
113
+
114
+
115
+
94
116
  # Tests for One::EmailDirect::Facade.email_add.
95
117
  #
96
118
  # 1. create a new email
@@ -154,7 +176,7 @@ class TestEmailFacade < Test::Unit::TestCase
154
176
 
155
177
 
156
178
  # 1.6
157
- assert_raises StandardError do
179
+ assert_raises One::EmailDirect::EmailDirectException do
158
180
  One::EmailDirect::Facade.email_add(
159
181
  @credentials, nil,
160
182
  @source1[:element_id], [@publication1[:element_id]], [@list1[:element_id]],
@@ -171,18 +193,6 @@ class TestEmailFacade < Test::Unit::TestCase
171
193
  )
172
194
  end
173
195
 
174
- def clean_email_getproperties(result)
175
- result.delete(:create_date)
176
- result.delete(:date_stamp)
177
- result.delete(:ip_address)
178
- result.delete(:email_id)
179
- cleaned_custom_fields = []
180
- result[:custom_fields][:custom_field].each { |element|
181
- cleaned_custom_fields << element if !element[:field_name].eql? 'DateStamp' and !element[:field_name].eql? 'IPAddress'
182
- }
183
- result[:custom_fields][:custom_field] = cleaned_custom_fields
184
- return result
185
- end
186
196
 
187
197
 
188
198
  # Tests for One::EmailDirect::Facade.email_add_with_fields.
@@ -351,7 +361,7 @@ class TestEmailFacade < Test::Unit::TestCase
351
361
 
352
362
 
353
363
  # 1.5
354
- assert_raises StandardError do
364
+ assert_raises One::EmailDirect::EmailDirectException do
355
365
  One::EmailDirect::Facade.email_addwithfields(
356
366
  @credentials, nil,
357
367
  @source1[:element_id], [@publication1[:element_id]], [@list1[:element_id]],
@@ -62,7 +62,7 @@ class TestListFacade < Test::Unit::TestCase
62
62
 
63
63
 
64
64
  # 2. create a new list with a previously used name
65
- assert_raises StandardError do
65
+ assert_raises One::EmailDirect::EmailDirectException do
66
66
  One::EmailDirect::Facade.list_add(@credentials, @list_add[:name], @list_add[:description])
67
67
  end
68
68
  end
@@ -60,7 +60,7 @@ class TestPublicationFacade < Test::Unit::TestCase
60
60
 
61
61
 
62
62
  # 2. create a new publication with a previously used name
63
- assert_raises StandardError do
63
+ assert_raises One::EmailDirect::EmailDirectException do
64
64
  One::EmailDirect::Facade.publication_add(@credentials, @publication_add[:name], @publication_add[:description])
65
65
  end
66
66
  end
@@ -61,7 +61,7 @@ class TestSourceFacade < Test::Unit::TestCase
61
61
 
62
62
 
63
63
  # 2. create a new source with a previously used name
64
- assert_raises StandardError do
64
+ assert_raises One::EmailDirect::EmailDirectException do
65
65
  One::EmailDirect::Facade.source_add(@credentials, @source_add[:name], @source_add[:description])
66
66
  end
67
67
  end
metadata CHANGED
@@ -1,13 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: one-email_direct
3
3
  version: !ruby/object:Gem::Version
4
- hash: 15
4
+ hash: 23
5
5
  prerelease:
6
6
  segments:
7
7
  - 0
8
8
  - 6
9
- - 4
10
- version: 0.6.4
9
+ - 8
10
+ version: 0.6.8
11
11
  platform: ruby
12
12
  authors:
13
13
  - Pedro Salgado
@@ -15,7 +15,7 @@ autorequire:
15
15
  bindir: bin
16
16
  cert_chain: []
17
17
 
18
- date: 2011-05-24 00:00:00 -06:00
18
+ date: 2011-05-26 00:00:00 -06:00
19
19
  default_executable:
20
20
  dependencies:
21
21
  - !ruby/object:Gem::Dependency
@@ -82,6 +82,7 @@ files:
82
82
  - lib/emaildirect.wsdl
83
83
  - lib/one/email_direct/client.rb
84
84
  - lib/one/email_direct/credentials.rb
85
+ - lib/one/email_direct/exception.rb
85
86
  - lib/one/email_direct/facade.rb
86
87
  - lib/one/email_direct/mixins/email.rb
87
88
  - lib/one/email_direct/mixins/list.rb