dnc 0.1.9 → 1.0.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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 1ebe92a2069c103a0089df4014cbeedc498f934b
4
- data.tar.gz: cf8e597f2094e8d85226d83fd722fbd08a7f4920
3
+ metadata.gz: d37b1c0078b4583fc1393d1c15386e506394e71b
4
+ data.tar.gz: fa1d24afce792778abc8a789f0023733d8bc0f87
5
5
  SHA512:
6
- metadata.gz: 92071b12f003d79ae539273a1e4327185cff4b65334708184e1d3b704e3d585bb78a63f68b05c0dc030a39c7bfc5d73f1e801a5314c2532c5a6259d9539a1546
7
- data.tar.gz: 85561071342a83aef817be71875c79df19805e29d8a2463c0dc95f56b79c71467d62badd8ad66781421388ceae10881acd57c0d7bc72b5ebcf7f16c6601413e0
6
+ metadata.gz: f9798c22332c4d4530e964e330d39f0147397188ce636181d1da0f172261ef3d7bada372ddf7cfd5544653939065187cb20439a986a77987306544b49ff6d107
7
+ data.tar.gz: 0e0f7b52d36e62135d3a05205d21002ec630a29213354ab7b74c44ca69f9b1bf76b445aa21112239f2e6825d6885472370ba594710f85774f0fb33a51754b5b6
Binary file
data.tar.gz.sig CHANGED
@@ -1,4 +1 @@
1
- wD��:�-�R���Lz^�����6W��À97�QqM���c
2
- �Ss�G��7�3SE�i��!<����ҭ���5"�K�5���-��ס���&B�����,�35X�x�qj ��w��xCe;�e\��r��
3
- `G~�sd�Xe����ò���|w�fb�1�`O�`(%@hyU����̤TQ�C�%[B��jӧ� �X��=�b� �0�;����� 2��o��_���<b/�׹�~
4
- %h�Z�2�B �k��|��21��d
1
+ QR���R*@�*'G�{8s� =cn?}��� �81tpK�H��ز����c��,نY||��?���c;�n�r�n����@��� *����6�Zy�N\���{����$J��tZ7�[����������ipE�,��o�?�?��ۼ=�Sk ]�bN��p� ��h��Q����rW+�˯�lc��o|�.��f�.^�\����i;x��+2�1������ ��4~%�k�Aj'�'���O��4L�4
@@ -2,13 +2,13 @@ language: ruby
2
2
  cache: bundler
3
3
 
4
4
  rvm:
5
- - 2.4.1
6
- - 2.3.4
7
- - 2.2.7
8
- - 2.0.0-p648
9
- - 1.9.3-p551
5
+ - ruby-head
6
+ - 2.2.3
7
+ - 2.1.6
8
+ - 2.0.0
9
+ - 1.9.3
10
10
 
11
11
  before_install:
12
12
  - gem install bundler
13
13
 
14
- script: 'bundle exec rake spec'
14
+ script: 'bundle exec rake'
@@ -19,7 +19,7 @@ Gem::Specification.new do |spec|
19
19
  spec.require_paths = ["lib"]
20
20
 
21
21
  spec.required_ruby_version = '>= 1.9.3'
22
- spec.add_dependency 'logging'
22
+ spec.add_dependency 'logging', '>= 1.8', '< 3.0'
23
23
 
24
24
  spec.add_development_dependency 'awesome_print', '~> 1.2'
25
25
  spec.add_development_dependency 'bundler', '~> 1.6'
@@ -27,7 +27,7 @@ Gem::Specification.new do |spec|
27
27
  spec.add_development_dependency 'rack', '~> 1.5'
28
28
  spec.add_development_dependency 'rack-test', '~> 0.6'
29
29
  spec.add_development_dependency 'rake', '~> 10.0'
30
- spec.add_development_dependency 'rubocop', '~> 0.27'
30
+ spec.add_development_dependency 'rubocop', '= 0.41.2'
31
31
  spec.add_development_dependency 'rspec', '~> 3.1'
32
32
  spec.add_development_dependency 'yard', '~> 0.8'
33
33
 
@@ -54,7 +54,7 @@ class DN
54
54
  end
55
55
  end
56
56
 
57
- return_string.send(@transformation.to_sym)
57
+ return_string
58
58
  end
59
59
 
60
60
  # Split passed DN by identified delimiter
@@ -129,13 +129,7 @@ class DN
129
129
 
130
130
  # Verify DN starts with 'CN='
131
131
  def dn_begins_properly?(dn_str)
132
- if dn_str.nil?
133
- false
134
- else
135
- with_delim = "#{delimiter}/CN=".send(@transformation.to_sym)
136
- without_delim = 'CN='.send(@transformation.to_sym)
137
- dn_str.start_with?(without_delim, with_delim)
138
- end
132
+ dn_str.nil? ? false : /^#{Regexp.escape(delimiter)}?CN/i.match(dn_str)
139
133
  end
140
134
 
141
135
  # Regex to match the DN delimiter by getting the 2nd key non-word predecessor
@@ -179,7 +173,7 @@ class DN
179
173
  value = send(getter_method.to_sym)
180
174
  value.each do |el|
181
175
  tmp_str += ',' unless tmp_str.empty?
182
- tmp_str += "#{getter_method.to_s.send(@transformation.to_sym)}=#{el}"
176
+ tmp_str += "#{getter_method.to_s.upcase}=#{el}"
183
177
  end
184
178
 
185
179
  tmp_str
@@ -191,7 +185,7 @@ class DN
191
185
  value = send(getter_method.to_sym)
192
186
  value.each do |key, string|
193
187
  return_string += '+' unless return_string.empty?
194
- return_string += "#{key}=#{string}"
188
+ return_string += "#{key.upcase}=#{string}"
195
189
  end
196
190
 
197
191
  return_string
@@ -1,3 +1,3 @@
1
1
  module Dnc
2
- VERSION = "0.1.9"
2
+ VERSION = "1.0.0"
3
3
  end
@@ -84,5 +84,22 @@ describe DN do
84
84
  expect(DN.new(dn_string: dn_in).to_s).to eq(dn_out)
85
85
  end
86
86
  end
87
+
88
+ it "should support simple string transformation" do
89
+ dn_string = 'CN=Last First M (initial),O=rb,OU=people,C=us,DC=org,DC=example'
90
+ expect(DN.new(dn_string: dn_string, transformation: 'to_s').to_s).to eq(dn_string)
91
+ end
92
+
93
+ it "should support different case cn" do
94
+ dn_string = 'cn=Last First M (initial),O=rb,OU=people,C=us,DC=org,DC=example'
95
+ dn_out = dn_string.gsub(/([^,]*)=/) { |i| i.upcase }
96
+ expect(DN.new(dn_string: dn_string, transformation: 'to_s').to_s).to eq(dn_out)
97
+ end
98
+
99
+ it "should support not just idempotent transformation functions" do
100
+ dn_string = 'CN=Last First M (initial),O=rb,OU=people,C=us,DC=org,DC=example'
101
+ dn_out = dn_string.swapcase.gsub(/([^,]*)=/) { |i| i.upcase }
102
+ expect(DN.new(dn_string: dn_string, transformation: 'swapcase').to_s).to eq(dn_out)
103
+ end
87
104
  end
88
105
  end
@@ -1,4 +1,4 @@
1
- require 'simplecov'
1
+ require "simplecov"
2
2
  SimpleCov.start
3
3
 
4
4
  require_relative '../lib/dnc'
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: dnc
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.9
4
+ version: 1.0.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Steven Haddox
@@ -30,7 +30,7 @@ cert_chain:
30
30
  NwdGc+LFuu/Xv5FBDYMFyfLSPhncqwXHSzF4OKSqEckawuqN+5eA/C0MsGDplVF4
31
31
  eksh9s9/x2f0t0J05xQBWzmmSR6dJRi21G6VUquyVOWHggfRqs3UAZg=
32
32
  -----END CERTIFICATE-----
33
- date: 2017-06-14 00:00:00.000000000 Z
33
+ date: 2017-06-13 00:00:00.000000000 Z
34
34
  dependencies:
35
35
  - !ruby/object:Gem::Dependency
36
36
  name: logging
@@ -38,14 +38,20 @@ dependencies:
38
38
  requirements:
39
39
  - - ">="
40
40
  - !ruby/object:Gem::Version
41
- version: '0'
41
+ version: '1.8'
42
+ - - "<"
43
+ - !ruby/object:Gem::Version
44
+ version: '3.0'
42
45
  type: :runtime
43
46
  prerelease: false
44
47
  version_requirements: !ruby/object:Gem::Requirement
45
48
  requirements:
46
49
  - - ">="
47
50
  - !ruby/object:Gem::Version
48
- version: '0'
51
+ version: '1.8'
52
+ - - "<"
53
+ - !ruby/object:Gem::Version
54
+ version: '3.0'
49
55
  - !ruby/object:Gem::Dependency
50
56
  name: awesome_print
51
57
  requirement: !ruby/object:Gem::Requirement
@@ -134,16 +140,16 @@ dependencies:
134
140
  name: rubocop
135
141
  requirement: !ruby/object:Gem::Requirement
136
142
  requirements:
137
- - - "~>"
143
+ - - '='
138
144
  - !ruby/object:Gem::Version
139
- version: '0.27'
145
+ version: 0.41.2
140
146
  type: :development
141
147
  prerelease: false
142
148
  version_requirements: !ruby/object:Gem::Requirement
143
149
  requirements:
144
- - - "~>"
150
+ - - '='
145
151
  - !ruby/object:Gem::Version
146
- version: '0.27'
152
+ version: 0.41.2
147
153
  - !ruby/object:Gem::Dependency
148
154
  name: rspec
149
155
  requirement: !ruby/object:Gem::Requirement
@@ -223,7 +229,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
223
229
  version: '0'
224
230
  requirements: []
225
231
  rubyforge_project:
226
- rubygems_version: 2.4.5.2
232
+ rubygems_version: 2.6.11
227
233
  signing_key:
228
234
  specification_version: 4
229
235
  summary: Distinguished Name Converter
metadata.gz.sig CHANGED
Binary file