lib/specinfra/command/windows/base/file.rb in specinfra-2.0.0.beta15 vs lib/specinfra/command/windows/base/file.rb in specinfra-2.0.0.beta16
- old
+ new
@@ -1,98 +1,99 @@
class Specinfra::Command::Windows::Base::File < Specinfra::Command::Windows::Base
- def check_is_file(file)
- cmd = item_has_attribute file, 'Archive'
- Backend::PowerShell::Command.new do
- exec cmd
+ class << self
+ def check_is_file(file)
+ cmd = item_has_attribute file, 'Archive'
+ Backend::PowerShell::Command.new do
+ exec cmd
+ end
end
- end
- def check_is_directory(dir)
- cmd = item_has_attribute dir, 'Directory'
- Backend::PowerShell::Command.new do
- exec cmd
+ def check_is_directory(dir)
+ cmd = item_has_attribute dir, 'Directory'
+ Backend::PowerShell::Command.new do
+ exec cmd
+ end
end
- end
- def check_is_hidden(file)
- cmd = item_has_attribute file, 'Hidden'
- Backend::PowerShell::Command.new do
- exec cmd
+ def check_is_hidden(file)
+ cmd = item_has_attribute file, 'Hidden'
+ Backend::PowerShell::Command.new do
+ exec cmd
+ end
end
- end
- def check_is_readonly(file)
- cmd = item_has_attribute file, 'ReadOnly'
- Backend::PowerShell::Command.new do
- exec cmd
+ def check_is_readonly(file)
+ cmd = item_has_attribute file, 'ReadOnly'
+ Backend::PowerShell::Command.new do
+ exec cmd
+ end
end
- end
- def check_is_system(file)
- cmd = item_has_attribute file, 'System'
- Backend::PowerShell::Command.new do
- exec cmd
+ def check_is_system(file)
+ cmd = item_has_attribute file, 'System'
+ Backend::PowerShell::Command.new do
+ exec cmd
+ end
end
- end
- def get_content(file)
- "[Io.File]::ReadAllText('#{file}')"
- end
+ def get_content(file)
+ "[Io.File]::ReadAllText('#{file}')"
+ end
- def check_is_accessible_by_user(file, user, access)
- case access
- when 'r'
- check_is_readable(file, user)
- when 'w'
- check_is_writable(file, user)
- when 'x'
- check_is_executable(file, user)
+ def check_is_accessible_by_user(file, user, access)
+ case access
+ when 'r'
+ check_is_readable(file, user)
+ when 'w'
+ check_is_writable(file, user)
+ when 'x'
+ check_is_executable(file, user)
+ end
end
- end
- def check_is_readable(file, by_whom)
- Backend::PowerShell::Command.new do
- using 'check_file_access_rules.ps1'
- exec "CheckFileAccessRules -path '#{file}' -identity '#{get_identity by_whom}' -rules @('FullControl', 'Modify', 'ReadAndExecute', 'Read', 'ListDirectory')"
+ def check_is_readable(file, by_whom)
+ Backend::PowerShell::Command.new do
+ using 'check_file_access_rules.ps1'
+ exec "CheckFileAccessRules -path '#{file}' -identity '#{get_identity by_whom}' -rules @('FullControl', 'Modify', 'ReadAndExecute', 'Read', 'ListDirectory')"
+ end
end
- end
- def check_is_writable(file, by_whom)
- Backend::PowerShell::Command.new do
- using 'check_file_access_rules.ps1'
- exec "CheckFileAccessRules -path '#{file}' -identity '#{get_identity by_whom}' -rules @('FullControl', 'Modify', 'Write')"
+ def check_is_writable(file, by_whom)
+ Backend::PowerShell::Command.new do
+ using 'check_file_access_rules.ps1'
+ exec "CheckFileAccessRules -path '#{file}' -identity '#{get_identity by_whom}' -rules @('FullControl', 'Modify', 'Write')"
+ end
end
- end
- def check_is_executable(file, by_whom)
- Backend::PowerShell::Command.new do
- using 'check_file_access_rules.ps1'
- exec "CheckFileAccessRules -path '#{file}' -identity '#{get_identity by_whom}' -rules @('FullControl', 'Modify', 'ReadAndExecute', 'ExecuteFile')"
+ def check_is_executable(file, by_whom)
+ Backend::PowerShell::Command.new do
+ using 'check_file_access_rules.ps1'
+ exec "CheckFileAccessRules -path '#{file}' -identity '#{get_identity by_whom}' -rules @('FullControl', 'Modify', 'ReadAndExecute', 'ExecuteFile')"
+ end
end
- end
- def check_contains(file, pattern)
- Backend::PowerShell::Command.new do
- exec "[Io.File]::ReadAllText('#{file}') -match '#{convert_regexp(pattern)}'"
+ def check_contains(file, pattern)
+ Backend::PowerShell::Command.new do
+ exec "[Io.File]::ReadAllText('#{file}') -match '#{convert_regexp(pattern)}'"
+ end
end
- end
- def check_contains_within file, pattern, from=nil, to=nil
- from ||= '^'
- to ||= '$'
- Backend::PowerShell::Command.new do
- using 'crop_text.ps1'
- exec %Q[(CropText -text ([Io.File]::ReadAllText('#{file}')) -fromPattern '#{convert_regexp(from)}' -toPattern '#{convert_regexp(to)}') -match '#{pattern}']
+ def check_contains_within file, pattern, from=nil, to=nil
+ from ||= '^'
+ to ||= '$'
+ Backend::PowerShell::Command.new do
+ using 'crop_text.ps1'
+ exec %Q[(CropText -text ([Io.File]::ReadAllText('#{file}')) -fromPattern '#{convert_regexp(from)}' -toPattern '#{convert_regexp(to)}') -match '#{pattern}']
+ end
end
- end
- def check_has_version(name,version)
- cmd = "((Get-Command '#{name}').FileVersionInfo.ProductVersion -eq '#{version}') -or ((Get-Command '#{name}').FileVersionInfo.FileVersion -eq '#{version}')"
- Backend::PowerShell::Command.new { exec cmd }
- end
+ def check_has_version(name,version)
+ cmd = "((Get-Command '#{name}').FileVersionInfo.ProductVersion -eq '#{version}') -or ((Get-Command '#{name}').FileVersionInfo.FileVersion -eq '#{version}')"
+ Backend::PowerShell::Command.new { exec cmd }
+ end
- private
- def item_has_attribute item, attribute
- "((Get-Item -Path '#{item}' -Force).attributes.ToString() -Split ', ') -contains '#{attribute}'"
+ private
+ def item_has_attribute item, attribute
+ "((Get-Item -Path '#{item}' -Force).attributes.ToString() -Split ', ') -contains '#{attribute}'"
+ end
end
-
end