module AWS class FakeAutoScaling def initialize end def groups @groups ||= GroupCollection.new end class GroupCollection def initialize @groups = {} end def [](name) @groups[name] end def create(name, options = {}) @groups[name] = Group.new name end end class Group attr_reader :name, :max_size, :desired_capacity def initialize(name) @name = name @suspended_processes = {} @max_size = 2 @desired_capacity = 1 end def suspend_processes(*processes) processes.each do |process| @suspended_processes[process] = 'test' end end def update(options = {}) options.each do |key, value| self.instance_variable_set "@#{key}", value end end end end end