inforouter 0.1.0 → 0.2.0

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.
Files changed (55) hide show
  1. checksums.yaml +8 -8
  2. data/.gitignore +1 -0
  3. data/.rubocop.yml +1 -1
  4. data/.travis.yml +5 -0
  5. data/Gemfile +0 -3
  6. data/README.md +102 -2
  7. data/Rakefile +20 -1
  8. data/inforouter.gemspec +12 -8
  9. data/lib/config/locales/en.yml +34 -0
  10. data/lib/inforouter.rb +26 -7
  11. data/lib/inforouter/access_list.rb +25 -27
  12. data/lib/inforouter/access_list_domain_members_item.rb +11 -0
  13. data/lib/inforouter/access_list_user_group_item.rb +17 -0
  14. data/lib/inforouter/access_list_user_item.rb +17 -0
  15. data/lib/inforouter/client.rb +19 -16
  16. data/lib/inforouter/configuration.rb +10 -4
  17. data/lib/inforouter/document.rb +64 -0
  18. data/lib/inforouter/errors.rb +2 -0
  19. data/lib/inforouter/errors/api_error.rb +17 -0
  20. data/lib/inforouter/errors/inforouter_error.rb +77 -1
  21. data/lib/inforouter/errors/missing_config_error.rb +1 -1
  22. data/lib/inforouter/errors/missing_config_option_error.rb +1 -1
  23. data/lib/inforouter/errors/soap_error.rb +2 -1
  24. data/lib/inforouter/errors/unexpected_soap_response_error.rb +18 -0
  25. data/lib/inforouter/folder.rb +139 -0
  26. data/lib/inforouter/record.rb +13 -0
  27. data/lib/inforouter/responses.rb +14 -0
  28. data/lib/inforouter/responses/base.rb +78 -0
  29. data/lib/inforouter/responses/create_folder.rb +10 -0
  30. data/lib/inforouter/responses/delete_folder.rb +10 -0
  31. data/lib/inforouter/responses/document.rb +48 -0
  32. data/lib/inforouter/responses/document_exists.rb +10 -0
  33. data/lib/inforouter/responses/folder.rb +33 -0
  34. data/lib/inforouter/responses/folder_exists.rb +10 -0
  35. data/lib/inforouter/responses/generic.rb +28 -0
  36. data/lib/inforouter/responses/set_access_list.rb +10 -0
  37. data/lib/inforouter/responses/set_folder_rules.rb +10 -0
  38. data/lib/inforouter/responses/update_folder_properties.rb +10 -0
  39. data/lib/inforouter/responses/update_property_set_definition.rb +10 -0
  40. data/lib/inforouter/responses/update_property_set_row.rb +10 -0
  41. data/lib/inforouter/responses/users.rb +38 -0
  42. data/lib/inforouter/rights.rb +18 -0
  43. data/lib/inforouter/rule_item.rb +25 -0
  44. data/lib/inforouter/rules.rb +51 -0
  45. data/lib/inforouter/user.rb +39 -0
  46. data/lib/inforouter/users.rb +25 -0
  47. data/lib/inforouter/version.rb +1 -1
  48. data/test/helper.rb +3 -0
  49. data/test/test_client.rb +4 -0
  50. data/test/test_configuration.rb +31 -0
  51. data/test/test_setup.rb +18 -0
  52. metadata +96 -6
  53. data/.rspec +0 -2
  54. data/lib/inforouter/folder_rule.rb +0 -50
  55. data/spec/spec_helper.rb +0 -29
@@ -0,0 +1,18 @@
1
+ class TestSetup < Test::Unit::TextCase
2
+ def default_test
3
+ # placeholder to avoid error under Ruby 1.8.7
4
+ end
5
+
6
+ def setup
7
+ Inforouter.configure do |config|
8
+ config.wsdl = ENV['INFOROUTER_WSDL'] || 'inforouter.wsdl'
9
+ config.host = ENV['INFOROUTER_HOST'] || 'inforouter_host'
10
+ config.username = ENV['INFOROUTER_USERNAME'] || 'inforouter_username'
11
+ config.password = ENV['INFOROUTER_PASSWORD'] || 'inforouter_password'
12
+ end
13
+ end
14
+
15
+ def teardown
16
+ Inforouter.reset!
17
+ end
18
+ end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: inforouter
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0
4
+ version: 0.2.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Tom Fenton
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-06-11 00:00:00.000000000 Z
11
+ date: 2014-06-23 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: nokogiri
@@ -24,6 +24,20 @@ dependencies:
24
24
  - - ~>
25
25
  - !ruby/object:Gem::Version
26
26
  version: 1.5.9
27
+ - !ruby/object:Gem::Dependency
28
+ name: i18n
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - ! '>='
32
+ - !ruby/object:Gem::Version
33
+ version: '0'
34
+ type: :runtime
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - ! '>='
39
+ - !ruby/object:Gem::Version
40
+ version: '0'
27
41
  - !ruby/object:Gem::Dependency
28
42
  name: savon
29
43
  requirement: !ruby/object:Gem::Requirement
@@ -38,6 +52,48 @@ dependencies:
38
52
  - - ~>
39
53
  - !ruby/object:Gem::Version
40
54
  version: 2.4.0
55
+ - !ruby/object:Gem::Dependency
56
+ name: activesupport
57
+ requirement: !ruby/object:Gem::Requirement
58
+ requirements:
59
+ - - ! '>='
60
+ - !ruby/object:Gem::Version
61
+ version: '3.0'
62
+ type: :runtime
63
+ prerelease: false
64
+ version_requirements: !ruby/object:Gem::Requirement
65
+ requirements:
66
+ - - ! '>='
67
+ - !ruby/object:Gem::Version
68
+ version: '3.0'
69
+ - !ruby/object:Gem::Dependency
70
+ name: bundler
71
+ requirement: !ruby/object:Gem::Requirement
72
+ requirements:
73
+ - - ~>
74
+ - !ruby/object:Gem::Version
75
+ version: '1.0'
76
+ type: :development
77
+ prerelease: false
78
+ version_requirements: !ruby/object:Gem::Requirement
79
+ requirements:
80
+ - - ~>
81
+ - !ruby/object:Gem::Version
82
+ version: '1.0'
83
+ - !ruby/object:Gem::Dependency
84
+ name: rdoc
85
+ requirement: !ruby/object:Gem::Requirement
86
+ requirements:
87
+ - - ~>
88
+ - !ruby/object:Gem::Version
89
+ version: '3.12'
90
+ type: :development
91
+ prerelease: false
92
+ version_requirements: !ruby/object:Gem::Requirement
93
+ requirements:
94
+ - - ~>
95
+ - !ruby/object:Gem::Version
96
+ version: '3.12'
41
97
  - !ruby/object:Gem::Dependency
42
98
  name: rainbow
43
99
  requirement: !ruby/object:Gem::Requirement
@@ -75,25 +131,56 @@ extra_rdoc_files: []
75
131
  files:
76
132
  - .document
77
133
  - .gitignore
78
- - .rspec
79
134
  - .rubocop.yml
135
+ - .travis.yml
80
136
  - Gemfile
81
137
  - LICENSE.md
82
138
  - README.md
83
139
  - Rakefile
84
140
  - inforouter.gemspec
141
+ - lib/config/locales/en.yml
85
142
  - lib/inforouter.rb
86
143
  - lib/inforouter/access_list.rb
144
+ - lib/inforouter/access_list_domain_members_item.rb
145
+ - lib/inforouter/access_list_user_group_item.rb
146
+ - lib/inforouter/access_list_user_item.rb
87
147
  - lib/inforouter/client.rb
88
148
  - lib/inforouter/configuration.rb
149
+ - lib/inforouter/document.rb
89
150
  - lib/inforouter/errors.rb
151
+ - lib/inforouter/errors/api_error.rb
90
152
  - lib/inforouter/errors/inforouter_error.rb
91
153
  - lib/inforouter/errors/missing_config_error.rb
92
154
  - lib/inforouter/errors/missing_config_option_error.rb
93
155
  - lib/inforouter/errors/soap_error.rb
94
- - lib/inforouter/folder_rule.rb
156
+ - lib/inforouter/errors/unexpected_soap_response_error.rb
157
+ - lib/inforouter/folder.rb
158
+ - lib/inforouter/record.rb
159
+ - lib/inforouter/responses.rb
160
+ - lib/inforouter/responses/base.rb
161
+ - lib/inforouter/responses/create_folder.rb
162
+ - lib/inforouter/responses/delete_folder.rb
163
+ - lib/inforouter/responses/document.rb
164
+ - lib/inforouter/responses/document_exists.rb
165
+ - lib/inforouter/responses/folder.rb
166
+ - lib/inforouter/responses/folder_exists.rb
167
+ - lib/inforouter/responses/generic.rb
168
+ - lib/inforouter/responses/set_access_list.rb
169
+ - lib/inforouter/responses/set_folder_rules.rb
170
+ - lib/inforouter/responses/update_folder_properties.rb
171
+ - lib/inforouter/responses/update_property_set_definition.rb
172
+ - lib/inforouter/responses/update_property_set_row.rb
173
+ - lib/inforouter/responses/users.rb
174
+ - lib/inforouter/rights.rb
175
+ - lib/inforouter/rule_item.rb
176
+ - lib/inforouter/rules.rb
177
+ - lib/inforouter/user.rb
178
+ - lib/inforouter/users.rb
95
179
  - lib/inforouter/version.rb
96
- - spec/spec_helper.rb
180
+ - test/helper.rb
181
+ - test/test_client.rb
182
+ - test/test_configuration.rb
183
+ - test/test_setup.rb
97
184
  homepage: https://github.com/ncssoftware/inforouter
98
185
  licenses:
99
186
  - MIT
@@ -119,4 +206,7 @@ signing_key:
119
206
  specification_version: 4
120
207
  summary: A Ruby interface to the infoRouter SOAP API.
121
208
  test_files:
122
- - spec/spec_helper.rb
209
+ - test/helper.rb
210
+ - test/test_client.rb
211
+ - test/test_configuration.rb
212
+ - test/test_setup.rb
data/.rspec DELETED
@@ -1,2 +0,0 @@
1
- --color
2
- --order rand
@@ -1,50 +0,0 @@
1
- require 'nokogiri'
2
-
3
- module Inforouter
4
- class FolderRule
5
- # The Rules XML fragment should be as described below.
6
- # The Rule item that is not specified in the xml structure will not be
7
- # updated.
8
- # For the AllowableFileTypes set value attribute to comman delimited file
9
- # extensions or set value to "*" for allowing all file types.
10
- # <Rules>
11
- # <Rule Name="AllowableFileTypes" Value="BMP,DOC,JPG,XLS" />
12
- # <Rule Name="Checkins" Value="disallows" />
13
- # <Rule Name="Checkouts" Value="disallows" />
14
- # <Rule Name="DocumentDeletes" Value="disallows" />
15
- # <Rule Name="FolderDeletes" Value="disallows" />
16
- # <Rule Name="NewDocuments" Value="disallows" />
17
- # <Rule Name="NewFolders" Value="disallows" />
18
- # <Rule Name="ClassifiedDocuments" Value="allows" />
19
- # </Rules>
20
- def self.rules_xml(options = {})
21
- options = {
22
- :allowable_file_types => nil,
23
- :checkins => 'disallows',
24
- :checkouts => 'disallows',
25
- :document_deletes => 'disallows',
26
- :folder_deletes => 'disallows',
27
- :new_documents => 'disallows',
28
- :new_folders => 'disallows',
29
- :classified_documents => 'disallows'
30
- }.merge(options)
31
- builder = Nokogiri::XML::Builder.new do |xml|
32
- xml.Rules {
33
- rule_item(xml, 'AllowableFileTypes', options[:allowable_file_types])
34
- rule_item(xml, 'Checkins', options[:checkins])
35
- rule_item(xml, 'Checkouts', options[:checkouts])
36
- rule_item(xml, 'DocumentDeletes', options[:document_deletes])
37
- rule_item(xml, 'FolderDeletes', options[:folder_deletes])
38
- rule_item(xml, 'NewDocuments', options[:new_documents])
39
- rule_item(xml, 'NewFolders', options[:new_folders])
40
- rule_item(xml, 'ClassifiedDocuments', options[:classified_documents])
41
- }
42
- end
43
- builder.doc.root.to_xml
44
- end
45
-
46
- def self.rule_itme(xml, name, value)
47
- xml.Rule(:Name => name, :Value => value)
48
- end
49
- end
50
- end
@@ -1,29 +0,0 @@
1
- require 'simplecov'
2
-
3
- module SimpleCov::Configuration
4
- def clean_filters
5
- @filters = []
6
- end
7
- end
8
-
9
- SimpleCov.configure do
10
- clean_filters
11
- load_profile 'test_frameworks'
12
- end
13
-
14
- ENV['COVERAGE'] && SimpleCov.start do
15
- add_filter '/.rvm/'
16
- end
17
- $LOAD_PATH.unshift(File.join(File.dirname(__FILE__), '..', 'lib'))
18
- $LOAD_PATH.unshift(File.dirname(__FILE__))
19
-
20
- require 'rspec'
21
- require 'inforouter'
22
-
23
- # Requires supporting files with custom matchers and macros, etc,
24
- # in ./support/ and its subdirectories.
25
- Dir["#{File.dirname(__FILE__)}/support/**/*.rb"].each { |f| require f }
26
-
27
- RSpec.configure do |config|
28
-
29
- end