onlyoffice_file_helper 0.4.0 → 1.1.0

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: 7a2fce65649f29c5896b478a8b5786d6c850a91e3d4cc13fefd410a14d70f065
4
- data.tar.gz: 47be12b2f7e6e19b2beee6a4cc0afb398827e4559106fc695d8c03a0c77d7693
3
+ metadata.gz: 1912f88662a16d0b908b258a3f95843eb24f20e3c83585905d39a79bcda9d043
4
+ data.tar.gz: 9bea4bca48018dcfd22bfdab65f14b5eb5ee54158bd0b6bd63dfa601e6f3687a
5
5
  SHA512:
6
- metadata.gz: 46ab25b8bf3ce467eca640b777c38cb6ed58aeb6ce9815b68dee6ced19f33fdb3cbf20beb2fccaaec4e19147717d89f275c3f465ad39beccbe4904e8f6bfdeda
7
- data.tar.gz: 741fd7bcc0ee7baf61d9d866a51ea633ff3e4bca08c0804fe8286ca08971e1eca3c83097bb18be2afbeed8229fa6fd2b5af82a4c250ca43dd675367af68f53ca
6
+ metadata.gz: e81341cdd686eac779125def4dfdd94c889d8e6e91268977b41a25039f29a33bdf9974a48536d040cb30db387f21297f8aa04dcb00b5ce2ee1da4b26ee61de3b
7
+ data.tar.gz: 50a806204f8edd4fc0d17eaac89b52fcec3d9f2ab1c0e7392d18c8ee4336d26695e0b6bdbb7b6832bb46664fec9dcb419f36bc1cdc435d1848925bb3bcbb418a
@@ -17,7 +17,7 @@ module OnlyofficeFileHelper
17
17
  # @param [String] content content of file
18
18
  # @return [String] path to created file
19
19
  def create_file_with_content(file_path: '/tmp/temp_file.ext', content: '')
20
- File.open(file_path, 'w') { |f| f.write(content) }
20
+ File.write(file_path, content)
21
21
  OnlyofficeLoggerHelper.log("Created file: #{file_path} with content: #{content}")
22
22
  file_path
23
23
  end
@@ -10,7 +10,7 @@ module OnlyofficeFileHelper
10
10
  # @param path [String] directory to delete
11
11
  # @return [Void]
12
12
  def delete_directory(path)
13
- FileUtils.rm_rf(path) if Dir.exist?(path)
13
+ FileUtils.rm_rf(path)
14
14
  end
15
15
 
16
16
  # List of files in directory as array
@@ -0,0 +1,31 @@
1
+ # frozen_string_literal: true
2
+
3
+ module OnlyofficeFileHelper
4
+ # Methods used to work with files
5
+ module FileMethods
6
+ # Copies a file
7
+ # @param [String] file_path path to file to be copied
8
+ # @param [String] destination path to where to copy file
9
+ def copy_file(file_path, destination)
10
+ FileUtils.mkdir_p(destination) unless File.directory?(destination)
11
+ FileUtils.copy(file_path, destination)
12
+ end
13
+
14
+ # Moves a file
15
+ # @param [String] file_path path to file to be moved
16
+ # @param [String] destination path to where to move file
17
+ def move_file(file_path, destination)
18
+ FileUtils.mkdir_p(destination) unless File.directory?(destination)
19
+ FileUtils.move(file_path, destination)
20
+ end
21
+
22
+ # Get file size in bytes
23
+ # @param [String] file_path path to file
24
+ # @return [Integer] size of file in bytes
25
+ def file_size(file_path)
26
+ size = File.size?(file_path)
27
+ size = 0 if size.nil?
28
+ size
29
+ end
30
+ end
31
+ end
@@ -2,5 +2,5 @@
2
2
 
3
3
  module OnlyofficeFileHelper
4
4
  # @return [String] version of gem
5
- VERSION = '0.4.0'
5
+ VERSION = '1.1.0'
6
6
  end
@@ -7,6 +7,7 @@ require 'onlyoffice_logger_helper'
7
7
  require 'find'
8
8
  require 'onlyoffice_file_helper/create_methods'
9
9
  require 'onlyoffice_file_helper/directory_methods'
10
+ require 'onlyoffice_file_helper/file_methods'
10
11
  require 'onlyoffice_file_helper/read_methods'
11
12
  require 'onlyoffice_file_helper/version'
12
13
  require 'onlyoffice_file_helper/linux_helper'
@@ -20,12 +21,14 @@ module OnlyofficeFileHelper
20
21
  extend CreateMethods
21
22
  extend DirectoryMethods
22
23
  extend ReadMethods
24
+ extend FileMethods
23
25
 
24
26
  class << self
25
27
  # Return name of file from full path
26
- # @param [true, false] keep_extension keep extension in result?
28
+ # @param [String] file_path to get name
29
+ # @param [Boolean] keep_extension keep extension in result?
27
30
  # @return [Sting] name of file, with extension or not
28
- def get_filename(file_path, keep_extension = true)
31
+ def filename_from_path(file_path, keep_extension: true)
29
32
  name = Pathname.new(file_path).basename
30
33
  name = File.basename(name, File.extname(name)) unless keep_extension
31
34
  name.to_s
@@ -34,7 +37,8 @@ module OnlyofficeFileHelper
34
37
  # Wait for downloading file
35
38
  # @param path [String] path to waiting download
36
39
  # @param timeout [Integer] timeout to wait
37
- # @return [True, False] result
40
+ # @raise [StandardError] exception if file not downloaded during timeout
41
+ # @return [True] always successful, if not - raising Exception
38
42
  def wait_file_to_download(path, timeout = 300)
39
43
  timer = 0
40
44
  OnlyofficeLoggerHelper.log("Start waiting to download file: #{path}")
@@ -45,18 +49,16 @@ module OnlyofficeFileHelper
45
49
  raise "Timeout #{timeout} for downloading file #{path} is exceed" if timer > timeout
46
50
  end
47
51
  sleep 1
48
- timer <= timeout
52
+ true
49
53
  end
50
54
 
51
55
  # Extract archive to folder
52
56
  # @param path_to_archive [String] path of file
53
- # @param path_to_extract [String] result path
54
57
  # @return [Void]
55
- def extract_to_folder(path_to_archive,
56
- path_to_extract = path_to_archive.chomp(File.basename(path_to_archive)))
57
- raise "File not found: #{path_to_archive}" unless wait_file_to_download(path_to_archive)
58
+ def extract_to_folder(path_to_archive)
59
+ wait_file_to_download(path_to_archive)
58
60
 
59
- path_to_extract += '/' unless path_to_extract[-1] == '/'
61
+ path_to_extract = path_to_archive.chomp(File.basename(path_to_archive))
60
62
  path_to_file = path_to_extract + File.basename(path_to_archive)
61
63
  Zip::File.open(path_to_file) do |zip_file|
62
64
  zip_file.each do |file|
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: onlyoffice_file_helper
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.4.0
4
+ version: 1.1.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - ONLYOFFICE
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2020-11-28 00:00:00.000000000 Z
12
+ date: 2022-08-12 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: onlyoffice_logger_helper
@@ -39,20 +39,6 @@ dependencies:
39
39
  - - "~>"
40
40
  - !ruby/object:Gem::Version
41
41
  version: '2'
42
- - !ruby/object:Gem::Dependency
43
- name: codecov
44
- requirement: !ruby/object:Gem::Requirement
45
- requirements:
46
- - - "~>"
47
- - !ruby/object:Gem::Version
48
- version: '0'
49
- type: :development
50
- prerelease: false
51
- version_requirements: !ruby/object:Gem::Requirement
52
- requirements:
53
- - - "~>"
54
- - !ruby/object:Gem::Version
55
- version: '0'
56
42
  - !ruby/object:Gem::Dependency
57
43
  name: overcommit
58
44
  requirement: !ruby/object:Gem::Requirement
@@ -151,6 +137,20 @@ dependencies:
151
137
  - - "~>"
152
138
  - !ruby/object:Gem::Version
153
139
  version: '2'
140
+ - !ruby/object:Gem::Dependency
141
+ name: simplecov
142
+ requirement: !ruby/object:Gem::Requirement
143
+ requirements:
144
+ - - "~>"
145
+ - !ruby/object:Gem::Version
146
+ version: '0'
147
+ type: :development
148
+ prerelease: false
149
+ version_requirements: !ruby/object:Gem::Requirement
150
+ requirements:
151
+ - - "~>"
152
+ - !ruby/object:Gem::Version
153
+ version: '0'
154
154
  - !ruby/object:Gem::Dependency
155
155
  name: yard
156
156
  requirement: !ruby/object:Gem::Requirement
@@ -181,6 +181,7 @@ files:
181
181
  - lib/onlyoffice_file_helper.rb
182
182
  - lib/onlyoffice_file_helper/create_methods.rb
183
183
  - lib/onlyoffice_file_helper/directory_methods.rb
184
+ - lib/onlyoffice_file_helper/file_methods.rb
184
185
  - lib/onlyoffice_file_helper/linux_helper.rb
185
186
  - lib/onlyoffice_file_helper/linux_helper/xdotool_helper.rb
186
187
  - lib/onlyoffice_file_helper/name.rb
@@ -197,6 +198,7 @@ metadata:
197
198
  documentation_uri: https://www.rubydoc.info/gems/onlyoffice_file_helper
198
199
  homepage_uri: https://github.com/ONLYOFFICE-QA/onlyoffice_file_helper
199
200
  source_code_uri: https://github.com/ONLYOFFICE-QA/onlyoffice_file_helper
201
+ rubygems_mfa_required: 'true'
200
202
  post_install_message:
201
203
  rdoc_options: []
202
204
  require_paths:
@@ -205,14 +207,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
205
207
  requirements:
206
208
  - - ">="
207
209
  - !ruby/object:Gem::Version
208
- version: '2.5'
210
+ version: '2.7'
209
211
  required_rubygems_version: !ruby/object:Gem::Requirement
210
212
  requirements:
211
213
  - - ">="
212
214
  - !ruby/object:Gem::Version
213
215
  version: '0'
214
216
  requirements: []
215
- rubygems_version: 3.1.4
217
+ rubygems_version: 3.3.20
216
218
  signing_key:
217
219
  specification_version: 4
218
220
  summary: ONLYOFFICE Helper Gem for File operation