Sha256: 98d93dbfd77b32248247b8485fb0fe89d752886ea86854d6f36962b0916c6599
Contents?: true
Size: 1.14 KB
Versions: 15
Compression:
Stored size: 1.14 KB
Contents
RSpec::Matchers.define :invalidate do match do |actual| DB.transaction do expect{ actual.save }.to raise_error actual.errors.on(:base)[0].starts_with?("Access denied to").should == true raise Sequel::Rollback end true end end RSpec::Matchers.define :validate do match do |actual| DB.transaction do expect{ actual.save }.to_not raise_error raise Sequel::Rollback end true end end RSpec::Matchers.define :destroy do match do |actual| DB.transaction do expect{ actual.destroy.should }.to_not raise_error raise Sequel::Rollback end actual.class.where(id: actual.id).delete true end end RSpec::Matchers.define :survive do match do |actual| DB.transaction do expect{ actual.destroy.should }.to raise_error raise Sequel::Rollback end actual.class.where(id: actual.id).delete true end end def log! around(:each) do |e| DB.loggers << Logger.new(STDOUT) e.run DB.loggers = [] end end def assign!(model, fields) model.set_all(fields) end def read_attribute(model, field) model.instance_variable_get("@values")[field] end
Version data entries
15 entries across 15 versions & 1 rubygems