serverspec 0.5.3 → 0.5.4

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.
Files changed (59) hide show
  1. data/lib/serverspec.rb +13 -0
  2. data/lib/serverspec/backend/exec.rb +18 -19
  3. data/lib/serverspec/backend/ssh.rb +3 -1
  4. data/lib/serverspec/helper/exec.rb +3 -1
  5. data/lib/serverspec/helper/ssh.rb +3 -1
  6. data/lib/serverspec/matchers/be_default_gateway.rb +0 -1
  7. data/lib/serverspec/matchers/be_directory.rb +1 -1
  8. data/lib/serverspec/matchers/be_disabled.rb +1 -1
  9. data/lib/serverspec/matchers/be_enabled.rb +1 -1
  10. data/lib/serverspec/matchers/be_enforcing.rb +1 -1
  11. data/lib/serverspec/matchers/be_executable.rb +2 -2
  12. data/lib/serverspec/matchers/be_file.rb +1 -1
  13. data/lib/serverspec/matchers/be_group.rb +1 -1
  14. data/lib/serverspec/matchers/be_grouped_into.rb +1 -1
  15. data/lib/serverspec/matchers/be_installed.rb +2 -2
  16. data/lib/serverspec/matchers/be_linked_to.rb +1 -1
  17. data/lib/serverspec/matchers/be_listening.rb +1 -1
  18. data/lib/serverspec/matchers/be_mode.rb +1 -1
  19. data/lib/serverspec/matchers/be_mounted.rb +1 -1
  20. data/lib/serverspec/matchers/be_owned_by.rb +1 -1
  21. data/lib/serverspec/matchers/be_permissive.rb +1 -1
  22. data/lib/serverspec/matchers/be_reachable.rb +1 -1
  23. data/lib/serverspec/matchers/be_readable.rb +2 -2
  24. data/lib/serverspec/matchers/be_resolvable.rb +1 -1
  25. data/lib/serverspec/matchers/be_running.rb +2 -2
  26. data/lib/serverspec/matchers/be_user.rb +1 -1
  27. data/lib/serverspec/matchers/be_writable.rb +2 -2
  28. data/lib/serverspec/matchers/be_zfs.rb +1 -1
  29. data/lib/serverspec/matchers/belong_to_group.rb +1 -1
  30. data/lib/serverspec/matchers/have_authorized_key.rb +1 -1
  31. data/lib/serverspec/matchers/have_cron_entry.rb +1 -1
  32. data/lib/serverspec/matchers/have_entry.rb +1 -1
  33. data/lib/serverspec/matchers/have_gid.rb +1 -1
  34. data/lib/serverspec/matchers/have_home_directory.rb +1 -1
  35. data/lib/serverspec/matchers/have_ipfilter_rule.rb +1 -1
  36. data/lib/serverspec/matchers/have_ipnat_rule.rb +1 -1
  37. data/lib/serverspec/matchers/have_iptables_rule.rb +1 -1
  38. data/lib/serverspec/matchers/have_login_shell.rb +1 -1
  39. data/lib/serverspec/matchers/have_svcprop.rb +1 -1
  40. data/lib/serverspec/matchers/have_svcprops.rb +1 -1
  41. data/lib/serverspec/matchers/have_uid.rb +1 -1
  42. data/lib/serverspec/matchers/match_md5checksum.rb +1 -1
  43. data/lib/serverspec/type/cron.rb +1 -1
  44. data/lib/serverspec/type/file.rb +16 -16
  45. data/lib/serverspec/type/group.rb +2 -2
  46. data/lib/serverspec/type/host.rb +2 -2
  47. data/lib/serverspec/type/ipfilter.rb +1 -1
  48. data/lib/serverspec/type/ipnat.rb +1 -1
  49. data/lib/serverspec/type/iptables.rb +1 -1
  50. data/lib/serverspec/type/package.rb +2 -2
  51. data/lib/serverspec/type/port.rb +1 -1
  52. data/lib/serverspec/type/routing_table.rb +1 -1
  53. data/lib/serverspec/type/selinux.rb +3 -3
  54. data/lib/serverspec/type/service.rb +4 -4
  55. data/lib/serverspec/type/user.rb +6 -6
  56. data/lib/serverspec/type/zfs.rb +2 -2
  57. data/lib/serverspec/version.rb +1 -1
  58. data/spec/helpers/attributes_spec.rb +2 -0
  59. metadata +2 -2
data/lib/serverspec.rb CHANGED
@@ -39,6 +39,7 @@ RSpec.configure do |c|
39
39
  c.add_setting :sudo_password, :default => nil
40
40
  Serverspec.configuration.defaults.each { |k, v| c.add_setting k, :default => v }
41
41
  c.before :each do
42
+ backend.set_example(example)
42
43
  if described_class.nil?
43
44
  puts
44
45
  puts "*****************************************"
@@ -72,6 +73,18 @@ module RSpec
72
73
  message
73
74
  end
74
75
  end
76
+ def failure_message_for_should_not(&block)
77
+ if block.to_s =~ /serverspec\/matchers\/.+\.rb/
78
+ @custom = true
79
+ end
80
+ if @custom
81
+ cache_or_call_cached(:failure_message_for_should, &block)
82
+ else
83
+ message = "#{example.metadata[:command]}\n"
84
+ message += "#{example.metadata[:stdout]}"
85
+ message
86
+ end
87
+ end
75
88
  end
76
89
  end
77
90
  end
@@ -1,8 +1,16 @@
1
+ require 'singleton'
2
+
1
3
  module Serverspec
2
4
  module Backend
3
5
  class Exec
4
- def initialize(commands)
5
- @commands ||= commands
6
+ include Singleton
7
+
8
+ def set_commands(c)
9
+ @commands = c
10
+ end
11
+
12
+ def set_example(e)
13
+ @example = e
6
14
  end
7
15
 
8
16
  def commands
@@ -16,7 +24,7 @@ module Serverspec
16
24
  # In ruby 1.9, it is possible to use Open3.capture3, but not in 1.8
17
25
  #stdout, stderr, status = Open3.capture3(cmd)
18
26
 
19
- if ! @example.nil?
27
+ if @example
20
28
  @example.metadata[:command] = cmd
21
29
  @example.metadata[:stdout] = stdout
22
30
  end
@@ -49,13 +57,10 @@ module Serverspec
49
57
 
50
58
  # Default action is to call check_zero with args
51
59
  def method_missing(meth, *args, &block)
52
- # Remove example object from *args
53
- @example = args.shift
54
60
  check_zero(meth, *args)
55
61
  end
56
62
 
57
- def check_running(example, process)
58
- @example = example
63
+ def check_running(process)
59
64
  ret = run_command(commands.check_running(process))
60
65
  if ret[:exit_status] == 1 || ret[:stdout] =~ /stopped/
61
66
  ret = run_command(commands.check_process(process))
@@ -63,14 +68,12 @@ module Serverspec
63
68
  ret[:exit_status] == 0
64
69
  end
65
70
 
66
- def check_running_under_supervisor(example, process)
67
- @example = example
71
+ def check_running_under_supervisor(process)
68
72
  ret = run_command(commands.check_running_under_supervisor(process))
69
73
  ret[:exit_status] == 0 && ret[:stdout] =~ /RUNNING/
70
74
  end
71
75
 
72
- def check_readable(example, file, by_whom)
73
- @example = example
76
+ def check_readable(file, by_whom)
74
77
  mode = sprintf('%04s',run_command(commands.get_mode(file))[:stdout].strip)
75
78
  mode = mode.split('')
76
79
  mode_octal = mode[0].to_i * 512 + mode[1].to_i * 64 + mode[2].to_i * 8 + mode[3].to_i * 1
@@ -86,8 +89,7 @@ module Serverspec
86
89
  end
87
90
  end
88
91
 
89
- def check_writable(example, file, by_whom)
90
- @example = example
92
+ def check_writable(file, by_whom)
91
93
  mode = sprintf('%04s',run_command(commands.get_mode(file))[:stdout].strip)
92
94
  mode = mode.split('')
93
95
  mode_octal = mode[0].to_i * 512 + mode[1].to_i * 64 + mode[2].to_i * 8 + mode[3].to_i * 1
@@ -103,8 +105,7 @@ module Serverspec
103
105
  end
104
106
  end
105
107
 
106
- def check_executable(example, file, by_whom)
107
- @example = example
108
+ def check_executable(file, by_whom)
108
109
  mode = sprintf('%04s',run_command(commands.get_mode(file))[:stdout].strip)
109
110
  mode = mode.split('')
110
111
  mode_octal = mode[0].to_i * 512 + mode[1].to_i * 64 + mode[2].to_i * 8 + mode[3].to_i * 1
@@ -120,8 +121,7 @@ module Serverspec
120
121
  end
121
122
  end
122
123
 
123
- def check_mounted(example, path, expected_attr, only_with)
124
- @example = example
124
+ def check_mounted(path, expected_attr, only_with)
125
125
  ret = run_command(commands.check_mounted(path))
126
126
  if expected_attr.nil? || ret[:exit_status] != 0
127
127
  return ret[:exit_status] == 0
@@ -154,8 +154,7 @@ module Serverspec
154
154
  end
155
155
  end
156
156
 
157
- def check_routing_table(example, expected_attr)
158
- @example = example
157
+ def check_routing_table(expected_attr)
159
158
  return false if ! expected_attr[:destination]
160
159
  ret = run_command(commands.check_routing_table(expected_attr[:destination]))
161
160
  return false if ret[:exit_status] != 0
@@ -7,10 +7,12 @@ module Serverspec
7
7
  cmd = build_command(cmd)
8
8
  cmd = add_pre_command(cmd)
9
9
  ret = ssh_exec!(cmd)
10
- if ! @example.nil?
10
+
11
+ if @example
11
12
  @example.metadata[:command] = cmd
12
13
  @example.metadata[:stdout] = ret[:stdout]
13
14
  end
15
+
14
16
  ret
15
17
  end
16
18
 
@@ -2,7 +2,9 @@ module Serverspec
2
2
  module Helper
3
3
  module Exec
4
4
  def backend(commands_object=nil)
5
- Serverspec::Backend::Exec.new(commands_object || commands)
5
+ instance = Serverspec::Backend::Exec.instance
6
+ instance.set_commands(commands_object || commands)
7
+ instance
6
8
  end
7
9
  end
8
10
  end
@@ -2,7 +2,9 @@ module Serverspec
2
2
  module Helper
3
3
  module Ssh
4
4
  def backend(commands_object=nil)
5
- Serverspec::Backend::Ssh.new(commands_object || commands)
5
+ instance = Serverspec::Backend::Ssh.instance
6
+ instance.set_commands(commands_object || commands)
7
+ instance
6
8
  end
7
9
  end
8
10
  end
@@ -1,7 +1,6 @@
1
1
  RSpec::Matchers.define :be_default_gateway do
2
2
  match do |ip_address|
3
3
  backend.check_routing_table(
4
- example,
5
4
  {
6
5
  :destination => 'default',
7
6
  :gateway => ip_address,
@@ -3,7 +3,7 @@ RSpec::Matchers.define :be_directory do
3
3
  if actual.respond_to?(:directory?)
4
4
  actual.directory?
5
5
  else
6
- backend.check_directory(example, actual)
6
+ backend.check_directory(actual)
7
7
  end
8
8
  end
9
9
  end
@@ -3,7 +3,7 @@ RSpec::Matchers.define :be_disabled do
3
3
  if subject.respond_to?(:disabled?)
4
4
  subject.disabled?
5
5
  else
6
- backend.check_selinux(example, 'disabled')
6
+ backend.check_selinux('disabled')
7
7
  end
8
8
  end
9
9
  end
@@ -3,7 +3,7 @@ RSpec::Matchers.define :be_enabled do
3
3
  if name.respond_to?(:enabled?)
4
4
  name.enabled?
5
5
  else
6
- backend.check_enabled(example, name)
6
+ backend.check_enabled(name)
7
7
  end
8
8
  end
9
9
  end
@@ -3,7 +3,7 @@ RSpec::Matchers.define :be_enforcing do
3
3
  if subject.respond_to?(:enforcing?)
4
4
  subject.enforcing?
5
5
  else
6
- backend.check_selinux(example, 'enforcing')
6
+ backend.check_selinux('enforcing')
7
7
  end
8
8
  end
9
9
  end
@@ -4,9 +4,9 @@ RSpec::Matchers.define :be_executable do
4
4
  file.executable?(@by_whom, @by_user)
5
5
  else
6
6
  if @by_user != nil
7
- backend.check_access_by_user(example, file, @by_user, 'x')
7
+ backend.check_access_by_user(file, @by_user, 'x')
8
8
  else
9
- backend.check_executable(example, file, @by_whom)
9
+ backend.check_executable(file, @by_whom)
10
10
  end
11
11
  end
12
12
  end
@@ -3,7 +3,7 @@ RSpec::Matchers.define :be_file do
3
3
  if actual.respond_to?(:file?)
4
4
  actual.file?
5
5
  else
6
- backend.check_file(example, actual)
6
+ backend.check_file(actual)
7
7
  end
8
8
  end
9
9
  end
@@ -1,5 +1,5 @@
1
1
  RSpec::Matchers.define :be_group do
2
2
  match do |actual|
3
- backend.check_group(example, actual)
3
+ backend.check_group(actual)
4
4
  end
5
5
  end
@@ -3,7 +3,7 @@ RSpec::Matchers.define :be_grouped_into do |group|
3
3
  if file.respond_to?(:grouped_into?)
4
4
  file.grouped_into?(group)
5
5
  else
6
- backend.check_grouped(example, file, group)
6
+ backend.check_grouped(file, group)
7
7
  end
8
8
  end
9
9
  end
@@ -4,7 +4,7 @@ RSpec::Matchers.define :be_installed do
4
4
  name.installed?(@provider, @version)
5
5
  else
6
6
  if @provider.nil?
7
- backend.check_installed(example, name)
7
+ backend.check_installed(name)
8
8
  else
9
9
  check_method = "check_installed_by_#{@provider}".to_sym
10
10
 
@@ -12,7 +12,7 @@ RSpec::Matchers.define :be_installed do
12
12
  raise ArgumentError.new("`be_installed` matcher doesn't support #{@under}")
13
13
  end
14
14
 
15
- backend.send(check_method, example, name, @version)
15
+ backend.send(check_method, name, @version)
16
16
  end
17
17
  end
18
18
  end
@@ -3,7 +3,7 @@ RSpec::Matchers.define :be_linked_to do |target|
3
3
  if link.respond_to?(:linked_to?)
4
4
  link.linked_to?(target)
5
5
  else
6
- backend.check_link(example, link, target)
6
+ backend.check_link(link, target)
7
7
  end
8
8
  end
9
9
  end
@@ -4,7 +4,7 @@ RSpec::Matchers.define :be_listening do
4
4
  actual.listening?
5
5
  else
6
6
  port = actual.gsub(/port\s+/, '')
7
- backend.check_listening(example, port)
7
+ backend.check_listening(port)
8
8
  end
9
9
  end
10
10
  end
@@ -3,7 +3,7 @@ RSpec::Matchers.define :be_mode do |mode|
3
3
  if file.respond_to?(:mode?)
4
4
  file.mode?(mode)
5
5
  else
6
- backend.check_mode(example, file, mode)
6
+ backend.check_mode(file, mode)
7
7
  end
8
8
  end
9
9
  end
@@ -3,7 +3,7 @@ RSpec::Matchers.define :be_mounted do
3
3
  if path.respond_to?(:mounted?)
4
4
  path.mounted?(@attr, @only_with)
5
5
  else
6
- backend.check_mounted(example, path, @attr, @only_with)
6
+ backend.check_mounted(path, @attr, @only_with)
7
7
  end
8
8
  end
9
9
  chain :with do |attr|
@@ -3,7 +3,7 @@ RSpec::Matchers.define :be_owned_by do |owner|
3
3
  if file.respond_to?(:owned_by?)
4
4
  file.owned_by?(owner)
5
5
  else
6
- backend.check_owner(example, file, owner)
6
+ backend.check_owner(file, owner)
7
7
  end
8
8
  end
9
9
  end
@@ -3,7 +3,7 @@ RSpec::Matchers.define :be_permissive do
3
3
  if subject.respond_to?(:permissive?)
4
4
  subject.permissive?
5
5
  else
6
- backend.check_selinux(example, 'permissive')
6
+ backend.check_selinux('permissive')
7
7
  end
8
8
  end
9
9
  end
@@ -11,7 +11,7 @@ RSpec::Matchers.define :be_reachable do
11
11
  if host.respond_to?(:reachable?)
12
12
  host.reachable?(port, proto, timeout)
13
13
  else
14
- backend.check_reachable(example, host, port, proto, timeout)
14
+ backend.check_reachable(host, port, proto, timeout)
15
15
  end
16
16
  end
17
17
 
@@ -4,9 +4,9 @@ RSpec::Matchers.define :be_readable do
4
4
  file.readable?(@by_whom, @by_user)
5
5
  else
6
6
  if @by_user != nil
7
- backend.check_access_by_user(example, file, @by_user, 'r')
7
+ backend.check_access_by_user(file, @by_user, 'r')
8
8
  else
9
- backend.check_readable(example, file, @by_whom)
9
+ backend.check_readable(file, @by_whom)
10
10
  end
11
11
  end
12
12
  end
@@ -3,7 +3,7 @@ RSpec::Matchers.define :be_resolvable do
3
3
  if name.respond_to?(:resolvable?)
4
4
  name.resolvable?(@type)
5
5
  else
6
- backend.check_resolvable(example, name, @type)
6
+ backend.check_resolvable(name, @type)
7
7
  end
8
8
  end
9
9
  chain :by do |type|
@@ -10,9 +10,9 @@ RSpec::Matchers.define :be_running do
10
10
  raise ArgumentError.new("`be_running` matcher doesn't support #{@under}")
11
11
  end
12
12
 
13
- backend.send(check_method, example, process)
13
+ backend.send(check_method, process)
14
14
  else
15
- backend.check_running(example, process)
15
+ backend.check_running(process)
16
16
  end
17
17
  end
18
18
  end
@@ -1,5 +1,5 @@
1
1
  RSpec::Matchers.define :be_user do
2
2
  match do |actual|
3
- backend.check_user(example, actual)
3
+ backend.check_user(actual)
4
4
  end
5
5
  end
@@ -4,9 +4,9 @@ RSpec::Matchers.define :be_writable do
4
4
  file.writable?(@by_whom, @by_user)
5
5
  else
6
6
  if @by_user != nil
7
- backend.check_access_by_user(example, file, @by_user, 'w')
7
+ backend.check_access_by_user(file, @by_user, 'w')
8
8
  else
9
- backend.check_writable(example, file, @by_whom)
9
+ backend.check_writable(file, @by_whom)
10
10
  end
11
11
  end
12
12
  end
@@ -1,6 +1,6 @@
1
1
  RSpec::Matchers.define :be_zfs do
2
2
  match do |zfs|
3
- backend.check_zfs(example, zfs, @property)
3
+ backend.check_zfs(zfs, @property)
4
4
  end
5
5
 
6
6
  chain :with do |property|
@@ -3,7 +3,7 @@ RSpec::Matchers.define :belong_to_group do |group|
3
3
  if user.respond_to?(:belongs_to_group?)
4
4
  user.belongs_to_group?(group)
5
5
  else
6
- backend.check_belonging_group(example, user, group)
6
+ backend.check_belonging_group(user, group)
7
7
  end
8
8
  end
9
9
  end
@@ -3,7 +3,7 @@ RSpec::Matchers.define :have_authorized_key do |key|
3
3
  if user.respond_to?(:has_authorized_key?)
4
4
  user.has_authorized_key?(key)
5
5
  else
6
- backend.check_authorized_key(example, user, key)
6
+ backend.check_authorized_key(user, key)
7
7
  end
8
8
  end
9
9
  end
@@ -1,7 +1,7 @@
1
1
  RSpec::Matchers.define :have_cron_entry do |entry|
2
2
  match do |actual|
3
3
  @user ||= 'root'
4
- backend.check_cron_entry(example, @user, entry)
4
+ backend.check_cron_entry(@user, entry)
5
5
  end
6
6
  chain :with_user do |user|
7
7
  @user = user
@@ -5,7 +5,7 @@ RSpec::Matchers.define :have_entry do |entry|
5
5
  elsif subject.respond_to?(:has_entry?)
6
6
  subject.has_entry?(entry)
7
7
  else
8
- backend.check_routing_table(example, entry)
8
+ backend.check_routing_table(entry)
9
9
  end
10
10
  end
11
11
  # For cron type
@@ -3,7 +3,7 @@ RSpec::Matchers.define :have_gid do |gid|
3
3
  if group.respond_to?(:has_gid?)
4
4
  group.has_gid?(gid)
5
5
  else
6
- backend.check_gid(example, group, gid)
6
+ backend.check_gid(group, gid)
7
7
  end
8
8
  end
9
9
  end
@@ -3,7 +3,7 @@ RSpec::Matchers.define :have_home_directory do |path_to_home|
3
3
  if user.respond_to?(:has_home_directory?)
4
4
  user.has_home_directory?(path_to_home)
5
5
  else
6
- backend.check_home_directory(example, user, path_to_home)
6
+ backend.check_home_directory(user, path_to_home)
7
7
  end
8
8
  end
9
9
  end
@@ -1,5 +1,5 @@
1
1
  RSpec::Matchers.define :have_ipfilter_rule do |rule|
2
2
  match do |iptables|
3
- backend.check_ipfilter_rule(example, rule)
3
+ backend.check_ipfilter_rule(rule)
4
4
  end
5
5
  end
@@ -1,5 +1,5 @@
1
1
  RSpec::Matchers.define :have_ipnat_rule do |rule|
2
2
  match do |ipnat|
3
- backend.check_ipnat_rule(example, rule)
3
+ backend.check_ipnat_rule(rule)
4
4
  end
5
5
  end
@@ -1,6 +1,6 @@
1
1
  RSpec::Matchers.define :have_iptables_rule do |rule|
2
2
  match do |iptables|
3
- backend.check_iptables_rule(example, rule, @table, @chain)
3
+ backend.check_iptables_rule(rule, @table, @chain)
4
4
  end
5
5
  chain :with_table do |table|
6
6
  @table = table
@@ -3,7 +3,7 @@ RSpec::Matchers.define :have_login_shell do |path_to_shell|
3
3
  if user.respond_to?(:has_login_shell?)
4
4
  user.has_login_shell?(path_to_shell)
5
5
  else
6
- backend.check_login_shell(example, user, path_to_shell)
6
+ backend.check_login_shell(user, path_to_shell)
7
7
  end
8
8
  end
9
9
  end
@@ -1,6 +1,6 @@
1
1
  RSpec::Matchers.define :have_svcprop do |property|
2
2
  match do |svc|
3
- backend.check_svcprop(example, svc, property, @value)
3
+ backend.check_svcprop(svc, property, @value)
4
4
  end
5
5
 
6
6
  chain :with_value do |value|
@@ -1,5 +1,5 @@
1
1
  RSpec::Matchers.define :have_svcprops do |property|
2
2
  match do |svc|
3
- backend.check_svcprops(example, svc, property)
3
+ backend.check_svcprops(svc, property)
4
4
  end
5
5
  end
@@ -3,7 +3,7 @@ RSpec::Matchers.define :have_uid do |uid|
3
3
  if user.respond_to?(:has_uid?)
4
4
  user.has_uid?(uid)
5
5
  else
6
- backend.check_uid(example, user, uid)
6
+ backend.check_uid(user, uid)
7
7
  end
8
8
  end
9
9
  end
@@ -3,7 +3,7 @@ RSpec::Matchers.define :match_md5checksum do |pattern|
3
3
  if file.respond_to?(:match_md5checksum)
4
4
  file.match_md5checksum(pattern)
5
5
  else
6
- backend.check_file_md5checksum(example, file, pattern)
6
+ backend.check_file_md5checksum(file, pattern)
7
7
  end
8
8
  end
9
9
  end
@@ -2,7 +2,7 @@ module Serverspec
2
2
  module Type
3
3
  class Cron < Base
4
4
  def has_entry?(user, entry)
5
- backend.check_cron_entry(nil, user, entry)
5
+ backend.check_cron_entry(user, entry)
6
6
  end
7
7
  def to_s
8
8
  'Cron'
@@ -2,67 +2,67 @@ module Serverspec
2
2
  module Type
3
3
  class File < Base
4
4
  def file?
5
- backend.check_file(nil, @name)
5
+ backend.check_file(@name)
6
6
  end
7
7
 
8
8
  def directory?
9
- backend.check_directory(nil, @name)
9
+ backend.check_directory(@name)
10
10
  end
11
11
 
12
12
  def contain(pattern, from, to)
13
13
  if (@from || @to).nil?
14
- cmd = backend.check_file_contain(nil, @name, pattern)
14
+ cmd = backend.check_file_contain(@name, pattern)
15
15
  else
16
- cmd = backend.check_file_contain_within(nil, @name, pattern, from, to)
16
+ cmd = backend.check_file_contain_within(@name, pattern, from, to)
17
17
  end
18
18
  end
19
19
 
20
20
  def mode?(mode)
21
- backend.check_mode(nil, @name, mode)
21
+ backend.check_mode(@name, mode)
22
22
  end
23
23
 
24
24
  def owned_by?(owner)
25
- backend.check_owner(nil, @name, owner)
25
+ backend.check_owner(@name, owner)
26
26
  end
27
27
 
28
28
  def grouped_into?(group)
29
- backend.check_grouped(nil, @name, group)
29
+ backend.check_grouped(@name, group)
30
30
  end
31
31
 
32
32
  def linked_to?(target)
33
- backend.check_link(nil, @name, target)
33
+ backend.check_link(@name, target)
34
34
  end
35
35
 
36
36
  def readable?(by_whom, by_user)
37
37
  if by_user != nil
38
- backend.check_access_by_user(nil, @name, by_user, 'r')
38
+ backend.check_access_by_user(@name, by_user, 'r')
39
39
  else
40
- backend.check_readable(nil, @name, by_whom)
40
+ backend.check_readable(@name, by_whom)
41
41
  end
42
42
  end
43
43
 
44
44
  def writable?(by_whom, by_user)
45
45
  if by_user != nil
46
- backend.check_access_by_user(nil, @name, by_user, 'w')
46
+ backend.check_access_by_user(@name, by_user, 'w')
47
47
  else
48
- backend.check_writable(nil, @name, by_whom)
48
+ backend.check_writable(@name, by_whom)
49
49
  end
50
50
  end
51
51
 
52
52
  def executable?(by_whom, by_user)
53
53
  if by_user != nil
54
- backend.check_access_by_user(nil, @name, by_user, 'x')
54
+ backend.check_access_by_user(@name, by_user, 'x')
55
55
  else
56
- backend.check_executable(nil, @name, by_whom)
56
+ backend.check_executable(@name, by_whom)
57
57
  end
58
58
  end
59
59
 
60
60
  def mounted?(attr, only_with)
61
- backend.check_mounted(nil, @name, attr, only_with)
61
+ backend.check_mounted(@name, attr, only_with)
62
62
  end
63
63
 
64
64
  def match_md5checksum(md5sum)
65
- backend.check_file_md5checksum(nil, @name, md5sum)
65
+ backend.check_file_md5checksum(@name, md5sum)
66
66
  end
67
67
 
68
68
  end
@@ -2,11 +2,11 @@ module Serverspec
2
2
  module Type
3
3
  class Group < Base
4
4
  def exists?
5
- backend.check_group(nil, @name)
5
+ backend.check_group(@name)
6
6
  end
7
7
 
8
8
  def has_gid?(gid)
9
- backend.check_gid(nil, @name, gid)
9
+ backend.check_gid(@name, gid)
10
10
  end
11
11
  end
12
12
  end
@@ -2,11 +2,11 @@ module Serverspec
2
2
  module Type
3
3
  class Host < Base
4
4
  def resolvable?(type)
5
- backend.check_resolvable(nil, @name, type)
5
+ backend.check_resolvable(@name, type)
6
6
  end
7
7
 
8
8
  def reachable?(port, proto, timeout)
9
- backend.check_reachable(nil, @name, port, proto, timeout)
9
+ backend.check_reachable(@name, port, proto, timeout)
10
10
  end
11
11
  end
12
12
  end
@@ -2,7 +2,7 @@ module Serverspec
2
2
  module Type
3
3
  class Ipfilter < Base
4
4
  def has_rule?(rule)
5
- backend.check_ipfilter_rule(nil, rule)
5
+ backend.check_ipfilter_rule(rule)
6
6
  end
7
7
 
8
8
  def to_s
@@ -2,7 +2,7 @@ module Serverspec
2
2
  module Type
3
3
  class Ipnat < Base
4
4
  def has_rule?(rule)
5
- backend.check_ipnat_rule(nil, rule)
5
+ backend.check_ipnat_rule(rule)
6
6
  end
7
7
 
8
8
  def to_s
@@ -2,7 +2,7 @@ module Serverspec
2
2
  module Type
3
3
  class Iptables < Base
4
4
  def has_rule?(rule, table, chain)
5
- backend.check_iptables_rule(nil, rule, table, chain)
5
+ backend.check_iptables_rule(rule, table, chain)
6
6
  end
7
7
  def to_s
8
8
  'iptables'
@@ -3,7 +3,7 @@ module Serverspec
3
3
  class Package < Base
4
4
  def installed?(provider, version)
5
5
  if provider.nil?
6
- backend.check_installed(nil, @name)
6
+ backend.check_installed(@name)
7
7
  else
8
8
  check_method = "check_installed_by_#{provider}".to_sym
9
9
 
@@ -11,7 +11,7 @@ module Serverspec
11
11
  raise ArgumentError.new("`be_installed` matcher doesn't support #{provider}")
12
12
  end
13
13
 
14
- backend.send(check_method, nil, @name, version)
14
+ backend.send(check_method, @name, version)
15
15
  end
16
16
  end
17
17
  end
@@ -2,7 +2,7 @@ module Serverspec
2
2
  module Type
3
3
  class Port < Base
4
4
  def listening?
5
- backend.check_listening(nil, @name)
5
+ backend.check_listening(@name)
6
6
  end
7
7
  end
8
8
  end
@@ -2,7 +2,7 @@ module Serverspec
2
2
  module Type
3
3
  class RoutingTable < Base
4
4
  def has_entry?(entry)
5
- backend.check_routing_table(nil, entry)
5
+ backend.check_routing_table(entry)
6
6
  end
7
7
 
8
8
  def to_s
@@ -2,15 +2,15 @@ module Serverspec
2
2
  module Type
3
3
  class Selinux < Base
4
4
  def disabled?
5
- backend.check_selinux(nil, 'disabled')
5
+ backend.check_selinux('disabled')
6
6
  end
7
7
 
8
8
  def enforcing?
9
- backend.check_selinux(nil, 'enforcing')
9
+ backend.check_selinux('enforcing')
10
10
  end
11
11
 
12
12
  def permissive?
13
- backend.check_selinux(nil, 'permissive')
13
+ backend.check_selinux('permissive')
14
14
  end
15
15
 
16
16
  def to_s
@@ -2,7 +2,7 @@ module Serverspec
2
2
  module Type
3
3
  class Service < Base
4
4
  def enabled?
5
- backend.check_enabled(nil, @name)
5
+ backend.check_enabled(@name)
6
6
  end
7
7
 
8
8
  def running? under
@@ -13,14 +13,14 @@ module Serverspec
13
13
  raise ArgumentError.new("`be_running` matcher doesn't support #{@under}")
14
14
  end
15
15
 
16
- backend.send(check_method, nil, @name)
16
+ backend.send(check_method, @name)
17
17
  else
18
- backend.check_running(nil, @name)
18
+ backend.check_running(@name)
19
19
  end
20
20
  end
21
21
 
22
22
  def has_property?(property)
23
- backend.check_svcprops(nil, @name, property)
23
+ backend.check_svcprops(@name, property)
24
24
  end
25
25
  end
26
26
  end
@@ -2,27 +2,27 @@ module Serverspec
2
2
  module Type
3
3
  class User < Base
4
4
  def exists?
5
- backend.check_user(nil, @name)
5
+ backend.check_user(@name)
6
6
  end
7
7
 
8
8
  def belongs_to_group?(group)
9
- backend.check_belonging_group(nil, @name, group)
9
+ backend.check_belonging_group(@name, group)
10
10
  end
11
11
 
12
12
  def has_uid?(uid)
13
- backend.check_uid(nil, @name, uid)
13
+ backend.check_uid(@name, uid)
14
14
  end
15
15
 
16
16
  def has_home_directory?(path)
17
- backend.check_home_directory(nil, @name, path)
17
+ backend.check_home_directory(@name, path)
18
18
  end
19
19
 
20
20
  def has_login_shell?(shell)
21
- backend.check_login_shell(nil, @name, shell)
21
+ backend.check_login_shell(@name, shell)
22
22
  end
23
23
 
24
24
  def has_authorized_key?(key)
25
- backend.check_authorized_key(nil, @name, key)
25
+ backend.check_authorized_key(@name, key)
26
26
  end
27
27
  end
28
28
  end
@@ -2,11 +2,11 @@ module Serverspec
2
2
  module Type
3
3
  class Zfs < Base
4
4
  def exists?
5
- backend.check_zfs(nil, @name)
5
+ backend.check_zfs(@name)
6
6
  end
7
7
 
8
8
  def has_property?(property)
9
- backend.check_zfs(nil, @name, property)
9
+ backend.check_zfs(@name, property)
10
10
  end
11
11
 
12
12
  def to_s
@@ -1,3 +1,3 @@
1
1
  module Serverspec
2
- VERSION = "0.5.3"
2
+ VERSION = "0.5.4"
3
3
  end
@@ -1,5 +1,7 @@
1
1
  require 'spec_helper'
2
+ require 'serverspec/helper/base'
2
3
 
4
+ include Serverspec::Helper::Base
3
5
  include Serverspec::Helper::Attributes
4
6
 
5
7
  describe 'Attributes Helper' do
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: serverspec
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.5.3
4
+ version: 0.5.4
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2013-06-07 00:00:00.000000000 Z
12
+ date: 2013-06-09 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: net-ssh