def add_comparison_field()

in data_validation/validation_builder.py [0:0]


    def add_comparison_field(self, comparison_field):
        """Add ComparionField to Queries

        Args:
            comparison_field (Dict): An object with source, target, and cast info
        """
        source_field_name = comparison_field[consts.CONFIG_SOURCE_COLUMN]
        target_field_name = comparison_field[consts.CONFIG_TARGET_COLUMN]
        # grab calc field metadata
        alias = comparison_field[consts.CONFIG_FIELD_ALIAS]
        cast = comparison_field.get(consts.CONFIG_CAST)
        source_field = ComparisonField(
            field_name=source_field_name, alias=alias, cast=cast
        )
        target_field = ComparisonField(
            field_name=target_field_name, alias=alias, cast=cast
        )
        # check if valid calc field and return correct object
        self.source_builder.add_comparison_field(source_field)
        self.target_builder.add_comparison_field(target_field)
        self._metadata[alias] = metadata.ValidationMetadata(
            aggregation_type=None,
            validation_type=self.validation_type,
            source_table_schema=self.config_manager.source_schema,
            source_table_name=self.config_manager.source_table,
            target_table_schema=self.config_manager.target_schema,
            target_table_name=self.config_manager.target_table,
            source_column_name=source_field_name,
            target_column_name=target_field_name,
            primary_keys=self.config_manager.get_primary_keys_list(),
            num_random_rows=self.config_manager.get_random_row_batch_size(),
            threshold=self.config_manager.threshold,
        )