Class: Dbsketch::Comparison::TypeComparator

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

Instance Method Summary collapse

Instance Method Details

#are_equivalent?(old_type, new_type) ⇒ Boolean

Returns:

  • (Boolean)

Raises:

  • (ArgumentError)


32
33
34
35
36
37
38
# File 'lib/dbsketch/comparison/type_comparator.rb', line 32

def are_equivalent? old_type, new_type
	### Preconditions
	raise ArgumentError, "old_type is not a Dbsketch::Model::Type" unless old_type.is_a? Dbsketch::Model::Type
	raise ArgumentError, "new_type is not a Dbsketch::Model::Type" unless new_type.is_a? Dbsketch::Model::Type
	###
	(old_type.sql_type == new_type.sql_type) and (old_type.sizes == new_type.sizes)
end

#compare(old_type, new_type) ⇒ Object

Raises:

  • (ArgumentError)


40
41
42
43
44
45
46
# File 'lib/dbsketch/comparison/type_comparator.rb', line 40

def compare old_type, new_type
	### Preconditions
	raise ArgumentError, "old_type is not a Dbsketch::Model::Type" unless old_type.is_a? Dbsketch::Model::Type
	raise ArgumentError, "new_type is not a Dbsketch::Model::Type" unless new_type.is_a? Dbsketch::Model::Type
	###
	TypeDiff.new(old_type, new_type) if not are_equivalent? old_type, new_type
end