class Table

Attributes

dirty[W]

Public Class Methods

new(db_name,schema,name) click to toggle source
# File lib/dbexpect/table.rb, line 24
def initialize(db_name,schema,name)
  @schema = schema
  @name = name
  @db_name = db_name

  @expected_row_factory = DefaultingRowSet.new
  @fixture_rows = DefaultingRowSet.new

  @dirty = false
end

Public Instance Methods

add_expected_row(column_values) click to toggle source
# File lib/dbexpect/table.rb, line 47
def add_expected_row(column_values)
  new_expectation(@expected_row_factory.add_row(column_values))
end
add_fixture_row(column_values) click to toggle source
# File lib/dbexpect/table.rb, line 43
def add_fixture_row(column_values)
  @fixture_rows.add_row(column_values)
end
new_expectation(row) click to toggle source
# File lib/dbexpect/table.rb, line 51
def new_expectation(row)
  RowExpectation.new(@db_name,@schema,@name,row)
end
row_count_check(count) click to toggle source
# File lib/dbexpect/table.rb, line 67
def row_count_check(count)
  RowCountExpectation.new(@db_name,@schema,@name,count)
end
set_default(column,value) click to toggle source
# File lib/dbexpect/table.rb, line 35
def set_default(column,value)
  @fixture_rows.set_default(column, value)
end
set_expected_default(column,value) click to toggle source
# File lib/dbexpect/table.rb, line 39
def set_expected_default(column,value)
  @expected_row_factory.set_default(column,value)
end
set_up_for_test(databases) click to toggle source
# File lib/dbexpect/table.rb, line 56
def set_up_for_test(databases)
  database = databases[@db_name]

  raise "Could not find #{@db_name} in #{databases.inspect}" unless database

  unless @dirty
    database.truncate_table(@schema,@name)
  end
  database.insert_rows(@fixture_rows.insert_statements(@schema,@name))
end