iri 0.5.0 → 0.5.1

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: e104227c43194a812146100020f7eaf541095b684ee10b710f00e0446de088a9
4
- data.tar.gz: 436424739e4e28f484f8608f913c10d0f589cd75b5788a0f2a3bc3f1cd46c1a5
3
+ metadata.gz: db8863ed27f231ba61cdff169239ea612436272a7150f036c9796fc2d90c0834
4
+ data.tar.gz: e67d192cf430e94f64c3aab87f4f064b6c4915e28c8c6d2dba82afda8aeaaeba
5
5
  SHA512:
6
- metadata.gz: 8b5cc60c6e2c3741c3f02d29f76ab36998200efb49726eb68221453fd0f4680f0d9a09331d0cf0ef05dc28139fdf17e18cc8d0295bdee243c302696f1ba91652
7
- data.tar.gz: bf29b9215bf96c608fccb223003d2f3f4c31f0f2a4d60db3da3e69ceda6fe05d1fc41d0e45afa17316abe80b127161c987157ab2c99a77f9e424685c0f5bce27
6
+ metadata.gz: d9be16a1579273c5796c63a121eb39d03061bfaae5e1fad217c76fe13699cb46f64d0c59c568227a6853cccec41f45b880a4c2ecc3f2e957516c38d5b6f05215
7
+ data.tar.gz: 1330a503f87585553fb4e507d7c81f3f0ef8c02583838b136110dfcc243cfa5da14a9b91bd8360a6e0df43f4bd719fdb63b4c1804a49cd5dcc798db161e7a813
data/Gemfile CHANGED
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # Copyright (c) 2019 Yegor Bugayenko
3
+ # Copyright (c) 2019-2021 Yegor Bugayenko
4
4
  #
5
5
  # Permission is hereby granted, free of charge, to any person obtaining a copy
6
6
  # of this software and associated documentation files (the 'Software'), to deal
data/LICENSE.txt CHANGED
@@ -1,6 +1,6 @@
1
1
  The MIT License (MIT)
2
2
 
3
- Copyright (c) 2019 Yegor Bugayenko
3
+ Copyright (c) 2019-2021 Yegor Bugayenko
4
4
 
5
5
  Permission is hereby granted, free of charge, to any person obtaining a copy
6
6
  of this software and associated documentation files (the "Software"), to deal
data/README.md CHANGED
@@ -29,6 +29,8 @@ url = Iri.new('http://google.com/')
29
29
  .scheme('https') # replace 'http' with 'https'
30
30
  .host('localhost') # replace the host name
31
31
  .port('443') # replace the port
32
+ .fragment('page-4') # replaces the fragment part of the URI, after the '#'
33
+ .query('a=1&b=2') # replaces the entire query part of the URI
32
34
  .path('/new/path') # replace the path of the URI, leaving the query untouched
33
35
  .cut('/q') # replace everything after the host and port
34
36
  .to_s # convert it to a string
data/Rakefile CHANGED
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # Copyright (c) 2019 Yegor Bugayenko
3
+ # Copyright (c) 2019-2021 Yegor Bugayenko
4
4
  #
5
5
  # Permission is hereby granted, free of charge, to any person obtaining a copy
6
6
  # of this software and associated documentation files (the 'Software'), to deal
data/iri.gemspec CHANGED
@@ -2,7 +2,7 @@
2
2
 
3
3
  # (The MIT License)
4
4
  #
5
- # Copyright (c) 2019 Yegor Bugayenko
5
+ # Copyright (c) 2019-2021 Yegor Bugayenko
6
6
  #
7
7
  # Permission is hereby granted, free of charge, to any person obtaining a copy
8
8
  # of this software and associated documentation files (the 'Software'), to deal
@@ -31,22 +31,22 @@ Gem::Specification.new do |s|
31
31
  s.rubygems_version = '2.5'
32
32
  s.required_ruby_version = '>=2.2'
33
33
  s.name = 'iri'
34
- s.version = '0.5.0'
34
+ s.version = '0.5.1'
35
35
  s.license = 'MIT'
36
36
  s.summary = 'Simple Immutable Ruby URI Builder'
37
37
  s.description = 'Class Iri helps you build a URI and then modify its \
38
38
  parts via a simple fluent interface.'
39
39
  s.authors = ['Yegor Bugayenko']
40
40
  s.email = 'yegor256@gmail.com'
41
- s.homepage = 'http://github.com/yegor256/iri'
41
+ s.homepage = 'https://github.com/yegor256/iri'
42
42
  s.files = `git ls-files`.split($RS)
43
43
  s.test_files = s.files.grep(%r{^(test)/})
44
44
  s.rdoc_options = ['--charset=UTF-8']
45
45
  s.extra_rdoc_files = ['README.md']
46
- s.add_development_dependency 'codecov', '0.1.10'
46
+ s.add_development_dependency 'codecov', '0.2.11'
47
47
  s.add_development_dependency 'minitest', '5.11.3'
48
- s.add_development_dependency 'rake', '12.3.1'
49
- s.add_development_dependency 'rdoc', '4.3.0'
48
+ s.add_development_dependency 'rake', '12.3.3'
49
+ s.add_development_dependency 'rdoc', '6.3.1'
50
50
  s.add_development_dependency 'rubocop', '0.62.0'
51
51
  s.add_development_dependency 'rubocop-rspec', '1.31.0'
52
52
  end
data/lib/iri.rb CHANGED
@@ -2,7 +2,7 @@
2
2
 
3
3
  # (The MIT License)
4
4
  #
5
- # Copyright (c) 2019 Yegor Bugayenko
5
+ # Copyright (c) 2019-2021 Yegor Bugayenko
6
6
  #
7
7
  # Permission is hereby granted, free of charge, to any person obtaining a copy
8
8
  # of this software and associated documentation files (the 'Software'), to deal
@@ -42,7 +42,7 @@ require 'cgi'
42
42
  # {README}[https://github.com/yegor256/iri/blob/master/README.md] file.
43
43
  #
44
44
  # Author:: Yegor Bugayenko (yegor256@gmail.com)
45
- # Copyright:: Copyright (c) 2019 Yegor Bugayenko
45
+ # Copyright:: Copyright (c) 2019-2021 Yegor Bugayenko
46
46
  # License:: MIT
47
47
  class Iri
48
48
  # When URI is not valid.
@@ -70,7 +70,9 @@ class Iri
70
70
  the_uri.clone
71
71
  end
72
72
 
73
- # Add a few query arguments. For example:
73
+ # Add a few query arguments.
74
+ #
75
+ # For example:
74
76
  #
75
77
  # Iri.new('https://google.com').add(q: 'test', limit: 10)
76
78
  #
@@ -89,7 +91,9 @@ class Iri
89
91
  end
90
92
  end
91
93
 
92
- # Delete a few query arguments. For example:
94
+ # Delete a few query arguments.
95
+ #
96
+ # For example:
93
97
  #
94
98
  # Iri.new('https://google.com?q=test').del(:q)
95
99
  #
@@ -156,7 +160,9 @@ class Iri
156
160
  end
157
161
  end
158
162
 
159
- # Remove the entire path+query+fragment part. For example:
163
+ # Remove the entire path+query+fragment part.
164
+ #
165
+ # For example:
160
166
  #
161
167
  # Iri.new('https://google.com/a/b?q=test').cut('/hello')
162
168
  #
@@ -169,7 +175,9 @@ class Iri
169
175
  end
170
176
  end
171
177
 
172
- # Append something new to the path:
178
+ # Append something new to the path.
179
+ #
180
+ # For example:
173
181
  #
174
182
  # Iri.new('https://google.com/a/b?q=test').append('/hello')
175
183
  #
data/test/test__helper.rb CHANGED
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # Copyright (c) 2019 Yegor Bugayenko
3
+ # Copyright (c) 2019-2021 Yegor Bugayenko
4
4
  #
5
5
  # Permission is hereby granted, free of charge, to any person obtaining a copy
6
6
  # of this software and associated documentation files (the 'Software'), to deal
data/test/test_iri.rb CHANGED
@@ -2,7 +2,7 @@
2
2
 
3
3
  # (The MIT License)
4
4
  #
5
- # Copyright (c) 2019 Yegor Bugayenko
5
+ # Copyright (c) 2019-2021 Yegor Bugayenko
6
6
  #
7
7
  # Permission is hereby granted, free of charge, to any person obtaining a copy
8
8
  # of this software and associated documentation files (the 'Software'), to deal
@@ -27,7 +27,7 @@ require_relative '../lib/iri'
27
27
 
28
28
  # Iri test.
29
29
  # Author:: Yegor Bugayenko (yegor256@gmail.com)
30
- # Copyright:: Copyright (c) 2019 Yegor Bugayenko
30
+ # Copyright:: Copyright (c) 2019-2021 Yegor Bugayenko
31
31
  # License:: MIT
32
32
  class IriTest < Minitest::Test
33
33
  def test_builds_uri
@@ -138,6 +138,13 @@ class IriTest < Minitest::Test
138
138
  )
139
139
  end
140
140
 
141
+ def test_appends_to_empty_ending
142
+ assert_equal(
143
+ 'http://google.com/hello',
144
+ Iri.new('http://google.com/').append('hello').to_s
145
+ )
146
+ end
147
+
141
148
  def test_appends_empty_path
142
149
  assert_equal(
143
150
  'http://google.com/hello/',
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: iri
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.5.0
4
+ version: 0.5.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Yegor Bugayenko
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2019-10-10 00:00:00.000000000 Z
11
+ date: 2021-09-13 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: codecov
@@ -16,14 +16,14 @@ dependencies:
16
16
  requirements:
17
17
  - - '='
18
18
  - !ruby/object:Gem::Version
19
- version: 0.1.10
19
+ version: 0.2.11
20
20
  type: :development
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - '='
25
25
  - !ruby/object:Gem::Version
26
- version: 0.1.10
26
+ version: 0.2.11
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: minitest
29
29
  requirement: !ruby/object:Gem::Requirement
@@ -44,28 +44,28 @@ dependencies:
44
44
  requirements:
45
45
  - - '='
46
46
  - !ruby/object:Gem::Version
47
- version: 12.3.1
47
+ version: 12.3.3
48
48
  type: :development
49
49
  prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
52
  - - '='
53
53
  - !ruby/object:Gem::Version
54
- version: 12.3.1
54
+ version: 12.3.3
55
55
  - !ruby/object:Gem::Dependency
56
56
  name: rdoc
57
57
  requirement: !ruby/object:Gem::Requirement
58
58
  requirements:
59
59
  - - '='
60
60
  - !ruby/object:Gem::Version
61
- version: 4.3.0
61
+ version: 6.3.1
62
62
  type: :development
63
63
  prerelease: false
64
64
  version_requirements: !ruby/object:Gem::Requirement
65
65
  requirements:
66
66
  - - '='
67
67
  - !ruby/object:Gem::Version
68
- version: 4.3.0
68
+ version: 6.3.1
69
69
  - !ruby/object:Gem::Dependency
70
70
  name: rubocop
71
71
  requirement: !ruby/object:Gem::Requirement
@@ -119,7 +119,7 @@ files:
119
119
  - logo.svg
120
120
  - test/test__helper.rb
121
121
  - test/test_iri.rb
122
- homepage: http://github.com/yegor256/iri
122
+ homepage: https://github.com/yegor256/iri
123
123
  licenses:
124
124
  - MIT
125
125
  metadata: {}
@@ -139,7 +139,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
139
139
  - !ruby/object:Gem::Version
140
140
  version: '0'
141
141
  requirements: []
142
- rubygems_version: 3.0.1
142
+ rubygems_version: 3.1.2
143
143
  signing_key:
144
144
  specification_version: 2
145
145
  summary: Simple Immutable Ruby URI Builder