p4_web_api_client 2014.2.0.pre4 → 2014.2.0.pre5

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: 60acdd9017591dd155ba2281a6988ccf8361883c
4
- data.tar.gz: f80d7306763682389c7f2cafbcaf1ba7f6ff14ae
3
+ metadata.gz: 1865649522c3cf982419f28b23982f2e6ab36e95
4
+ data.tar.gz: 88478edd7842b51d2ab40aaea81ff79f6b7d88d6
5
5
  SHA512:
6
- metadata.gz: addb3741478456b6d31c3b4781adc19aff205586b871c9482097a024ce8e4d54d2831904fd0d0d61697f18d0f83b12e9ab68307e2cadcc5de513a1654921717a
7
- data.tar.gz: 6c7e932d2b9faab856624505fc5a478f89860fb516464343374dff3c39c0638adf606b04f3e9b833dae815081530461bdd83e8f4cf85044cb971aeeeb9d2600f
6
+ metadata.gz: f462dcbea12ec953b90ae2ecf55b5cbbc02ef3fa6ac0226f2a7ef8d58ad08bb65353d3a0a6610993d12d277df9588db810901ceee3e83b139ee4f9ede5f3120b
7
+ data.tar.gz: 26985bda44cec092bb4032e7136c8a21f803d412ca1169ec291c00e87802168d2c542dd4d240f777b15f4366e4fd0a6a0e19027d8670088b4a8035733f27b658
@@ -14,11 +14,22 @@ module P4WebApiClient
14
14
  #
15
15
  # Note: if path happens to be a file, instead of a directory, this is
16
16
  # a synonym with the file() method.
17
+ #
18
+ # If the path contains wildcards, the return will only be the list of
19
+ # P4WebApiClient::Models::File instances.
20
+ #
21
+ # See also the P4WebApiClient::Models::File, P4WebApiClient::Models::Dir,
22
+ # and P4WebApiClient::Models::Depot for the output types.
17
23
  def files(path = '')
18
24
  unless path.empty?
19
25
  path = path.split('/').map { |p| URI.encode(p) }.join('/')
20
26
  end
21
- arr = execute_method_no_body(:get, "/files/#{path}")
27
+ arr = nil
28
+ if wildcards?(path)
29
+ arr = execute_method_no_body(:get, '/files', path: path)
30
+ else
31
+ arr = execute_method_no_body(:get, "/files/#{path}")
32
+ end
22
33
  if arr.is_a?(Array)
23
34
  arr.map do |obj|
24
35
  if obj.key?('DepotFile')
@@ -91,5 +102,10 @@ module P4WebApiClient
91
102
  def encode_path(path)
92
103
  path.split('/').map { |p| URI.encode(p) }.join('/')
93
104
  end
105
+
106
+ def wildcards?(path)
107
+ return !(path =~ /\.\.\./ || path =~ /\*/).nil? if path
108
+ false
109
+ end
94
110
  end
95
111
  end
@@ -1,3 +1,3 @@
1
1
  module P4WebApiClient
2
- VERSION = '2014.2.0.pre4'
2
+ VERSION = '2014.2.0.pre5'
3
3
  end
@@ -31,6 +31,14 @@ RSpec.describe P4WebApiClient::Client, '#files' do
31
31
  expect(names).to include('README')
32
32
  end
33
33
  end
34
+
35
+ it "should list 'README' at the depot/dev/.../README path" do
36
+ client_as_jdoe do |c|
37
+ paths = c.files('depot/dev/.../README')
38
+ names = paths.map(&:name)
39
+ expect(names).to include('README')
40
+ end
41
+ end
34
42
  end
35
43
 
36
44
  RSpec.describe P4WebApiClient::Client, '#upload_file' do
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: p4_web_api_client
3
3
  version: !ruby/object:Gem::Version
4
- version: 2014.2.0.pre4
4
+ version: 2014.2.0.pre5
5
5
  platform: ruby
6
6
  authors:
7
7
  - Tristan Juricek
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-12-18 00:00:00.000000000 Z
11
+ date: 2015-01-07 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -72,14 +72,14 @@ dependencies:
72
72
  requirements:
73
73
  - - "~>"
74
74
  - !ruby/object:Gem::Version
75
- version: 2014.2.0.pre4
75
+ version: 2014.2.0.pre5
76
76
  type: :development
77
77
  prerelease: false
78
78
  version_requirements: !ruby/object:Gem::Requirement
79
79
  requirements:
80
80
  - - "~>"
81
81
  - !ruby/object:Gem::Version
82
- version: 2014.2.0.pre4
82
+ version: 2014.2.0.pre5
83
83
  - !ruby/object:Gem::Dependency
84
84
  name: puma
85
85
  requirement: !ruby/object:Gem::Requirement