Class: Dbsketch::Comparison::ProcedureComparator

Inherits:
Object
  • Object
show all
Defined in:
lib/dbsketch/comparison/procedure_comparator.rb

Instance Method Summary collapse

Instance Method Details

#are_equivalent?(old_procedure, new_procedure) ⇒ Boolean

Returns:

  • (Boolean)

Raises:

  • (ArgumentError)


33
34
35
36
37
38
39
40
41
# File 'lib/dbsketch/comparison/procedure_comparator.rb', line 33

def are_equivalent? old_procedure, new_procedure
	### Preconditions
	raise ArgumentError, "old_procedure is not a Dbsketch::Model::Procedure" unless nil == old_procedure or old_procedure.is_a? Dbsketch::Model::Procedure
	raise ArgumentError, "new_procedure is not a Dbsketch::Model::Procedure" unless nil == new_procedure or new_procedure.is_a? Dbsketch::Model::Procedure
	###
	(nil != old_procedure and nil != new_procedure) and
		old_procedure.arguments == new_procedure.arguments and
		old_procedure.algo == new_procedure.algo
end

#compare(old_procedure, new_procedure) ⇒ Object

Raises:

  • (ArgumentError)


43
44
45
46
47
48
49
# File 'lib/dbsketch/comparison/procedure_comparator.rb', line 43

def compare old_procedure, new_procedure
	### Preconditions
	raise ArgumentError, "old_procedure is not a Dbsketch::Model::Procedure" unless nil == old_procedure or old_procedure.is_a? Dbsketch::Model::Procedure
	raise ArgumentError, "new_procedure is not a Dbsketch::Model::Procedure" unless nil == new_procedure or new_procedure.is_a? Dbsketch::Model::Procedure
	###
	ProcedureDiff.new(old_procedure, new_procedure) if not are_equivalent? old_procedure, new_procedure
end