utopia 2.1.1 → 2.1.2

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
  SHA1:
3
- metadata.gz: e9b84866dc9a4e796ebaffd27ee38df2cee16696
4
- data.tar.gz: edcd684c8824131adbf28b3c71a80cd71be5280c
3
+ metadata.gz: f3881efaedf6400b258104215042b8030b69ca3e
4
+ data.tar.gz: e59045a36657c40b04bc30331fa0c15acc19b41b
5
5
  SHA512:
6
- metadata.gz: f685a90bf068c361c741fd7dc0b5c5a175498da59f08a2d85278a023a19a1f091df4353807ba4248b19b65906cba4e86a56c717604bea86cf847db0d6d567d8e
7
- data.tar.gz: e4619667aaeb96c6a7b10839aa45c749030ef1571e156accbde3a856e94b9d54b8496c9636aef404e3fea8a5ac04b874b832f0186102c6170856c68602784a2b
6
+ metadata.gz: 20c2d659623389861d7636e79f81f5349c85a039e629c7926e12afa59cd2fe339dd8ae8f279ca81b792c6c39a8a6a6ed263c336f8ac20e8841abd2328ae3de03
7
+ data.tar.gz: 9e7daab38c5752fe5d896dc0466b399a90947f30692b66f7505bb6051537d298ab435d17cefdbb2ee7476a250a6889ecc11ed971d4038a220564a4e1ac61c61b
data/lib/utopia/path.rb CHANGED
@@ -117,11 +117,11 @@ module Utopia
117
117
  return self.new([path])
118
118
  end
119
119
  end
120
-
120
+
121
121
  def replace(other_path)
122
122
  @components = other_path.components.dup
123
123
  end
124
-
124
+
125
125
  def include?(*args)
126
126
  @components.include?(*args)
127
127
  end
@@ -232,7 +232,15 @@ module Utopia
232
232
  end
233
233
 
234
234
  def basename
235
- @components.last
235
+ basename, _ = @components.last.split('.', 2)
236
+
237
+ return basename || ''
238
+ end
239
+
240
+ def extension
241
+ _, extension = @components.last.split('.', 2)
242
+
243
+ return extension
236
244
  end
237
245
 
238
246
  def dirname(count = 1)
@@ -344,10 +352,6 @@ module Utopia
344
352
  end
345
353
  end
346
354
 
347
- def extension
348
- basename(true).extension
349
- end
350
-
351
355
  private
352
356
 
353
357
  # We adjust the index slightly so that indices reference path components rather than the directory markers at the start and end of the path components array.
@@ -19,5 +19,5 @@
19
19
  # THE SOFTWARE.
20
20
 
21
21
  module Utopia
22
- VERSION = "2.1.1"
22
+ VERSION = "2.1.2"
23
23
  end
@@ -72,6 +72,13 @@ RSpec.describe Utopia::Path do
72
72
  expect(path.simplify.components).to be == ['', 'foo', 'baz', '']
73
73
  end
74
74
 
75
+ it "should remove the extension from the basename" do
76
+ path = Utopia::Path["dir/foo.html"]
77
+
78
+ expect(path.basename).to be == 'foo'
79
+ expect(path.extension).to be == 'html'
80
+ end
81
+
75
82
  it "should be able to convert into a directory" do
76
83
  path = Utopia::Path["foo/bar"]
77
84
 
@@ -105,6 +112,18 @@ RSpec.describe Utopia::Path do
105
112
  expect{path[0] = 'bob'}.to raise_exception(RuntimeError)
106
113
  end
107
114
 
115
+ it "should give the correct locale" do
116
+ path = Utopia::Path["foo.en"]
117
+
118
+ expect(path.extension).to be == 'en'
119
+ end
120
+
121
+ it "should give no locale" do
122
+ path = Utopia::Path["foo"]
123
+
124
+ expect(path.extension).to be == nil
125
+ end
126
+
108
127
  it "should expand relative paths" do
109
128
  root = Utopia::Path['/root']
110
129
  path = Utopia::Path["dir/foo.html"]
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: utopia
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.1.1
4
+ version: 2.1.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Samuel Williams
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2017-06-22 00:00:00.000000000 Z
11
+ date: 2017-08-02 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: trenni