domain_name_validator 0.4.4 → 0.5

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,3 +1,11 @@
1
+ 0.5 (2013-10-24)
2
+ ----------------
3
+
4
+ * By request, the gem now ignores leading/trailing whitespace when validating
5
+ domain names. This includes ignoring newlines at the end of domain names.
6
+
7
+ * Remove timestamp from gemspec so Rubygems will calculate gem dates for us.
8
+
1
9
  0.4 (2013-07-17)
2
10
  ----------------
3
11
 
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- domain_name_validator (0.4.4)
4
+ domain_name_validator (0.5)
5
5
 
6
6
  GEM
7
7
  remote: http://rubygems.org/
@@ -5,7 +5,6 @@ require "domain_name_validator/version"
5
5
  Gem::Specification.new do |gem|
6
6
  gem.name = "domain_name_validator"
7
7
  gem.version = DomainNameValidator::VERSION
8
- gem.date = '2013-08-01'
9
8
  gem.platform = Gem::Platform::RUBY
10
9
  gem.authors = ["David Keener"]
11
10
  gem.email = ["dkeener@keenertech.com"]
@@ -50,7 +50,12 @@ class DomainNameValidator
50
50
  # 6. A domain name cannot begin with a period.
51
51
 
52
52
  def validate(dn, errs = [])
53
- errs << ERRS[:zero_size] if dn.nil? || dn.size == 0
53
+ if dn.nil?
54
+ errs << ERRS[:zero_size]
55
+ else
56
+ dn = dn.strip
57
+ errs << ERRS[:zero_size] if dn.size == 0
58
+ end
54
59
 
55
60
  if errs.size == 0
56
61
  errs << ERRS[:max_domain_size] if dn.size > MAX_DOMAIN_LENGTH
@@ -69,8 +74,8 @@ class DomainNameValidator
69
74
  parts.last == 'aero' ||
70
75
  parts.last == 'asia' ||
71
76
  parts.last == 'coop' ||
72
- parts.last == 'jobs' ||
73
77
  parts.last == 'info' ||
78
+ parts.last == 'jobs' ||
74
79
  parts.last == 'mobi' ||
75
80
  parts.last == 'museum' ||
76
81
  parts.last == 'name' ||
@@ -1,3 +1,3 @@
1
1
  class DomainNameValidator
2
- VERSION = "0.4.4"
2
+ VERSION = "0.5"
3
3
  end
@@ -28,6 +28,11 @@ describe DomainNameValidator do
28
28
  response.should be == false
29
29
  end
30
30
 
31
+ it 'should pass when it finds a domain with leading/trainling whitespace' do
32
+ response = @validator.validate(" www.domain-1.com\n")
33
+ response.should be == true
34
+ end
35
+
31
36
  it 'should fail when it finds a numeric top-level extension' do
32
37
  response = @validator.validate('keenertech.123')
33
38
  response.should be == false
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: domain_name_validator
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.4.4
4
+ version: '0.5'
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,11 +9,11 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2013-08-01 00:00:00.000000000 Z
12
+ date: 2013-10-24 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: rspec
16
- requirement: &30451500 !ruby/object:Gem::Requirement
16
+ requirement: &32161380 !ruby/object:Gem::Requirement
17
17
  none: false
18
18
  requirements:
19
19
  - - ! '>='
@@ -21,7 +21,7 @@ dependencies:
21
21
  version: '0'
22
22
  type: :development
23
23
  prerelease: false
24
- version_requirements: *30451500
24
+ version_requirements: *32161380
25
25
  description: Checks the validity of domain names.
26
26
  email:
27
27
  - dkeener@keenertech.com