NoMethodError: неопределенный метод `empty? 'для 20: целое число - PullRequest
0 голосов
/ 02 мая 2019

Я новичок в рубине. Когда я использую .empty? это дает мне ошибку NoMethodError: неопределенный метод `empty? ' для 20: целое число, но если я использую .nil? /. blank? мой тест пройден. Я на самом деле пытаюсь сделать исходный минус целевой запрос. 20 мои записи в источнике.

def self.diff()
    if targetcheck.empty?
      puts "Target table is empty for #{@tableName}"
    elsif sourcecheck.empty?
      puts "Source table is empty for #{@tableName}"
    else
      # minus_result = Netezzasalesmiqueries.source_target_diff(dataone, datatwo)
      @source_minus_target_result = Generalqueries.source_target_diff(@source,@target)
      @target_minus_source_result = Generalqueries.source_target_diff(@target,@source)

    end
  end
def self.source_target_diff(data_one, data_two)
        puts "(#{data_one}) minus (#{data_two})"
        # database = $dif_env.teradata.execute("(#{data_one}) minus (#{data_two})")
        # database.as_json
        # database
    end
def self.reporting()
    @error_token = false
    if @source_minus_target_result.empty?
      puts "Target matches with the Source for #{@tableName}"
    else
      puts "There are #{@source_minus_target_result.size} records that are in the Source but not the Target for #{@tableName}"
      #below is for detailed view of missing records
      # @source_minus_target_result.each{|rec| puts "#{rec}\n"}
      @error_token = true
    end

    if @target_minus_source_result.empty?
      puts "Source matches with the Target for #{@tableName}"
    else
      puts "There are #{@target_minus_source_result.size} records that are in the Target but not the Source for #{@tableName}"
      #below is for detailed view of missing records
      # @target_minus_source_result.each{|rec| puts "#{rec}\n"}
      @error_token = true
    end

    if @error_token
      fail("There were mismatches for #{@tableName}")
    end
  end

Трассировка стека

NoMethodError: undefined method `empty?' for 20:Integer
./features/pages/utility.rb:23:in `diff'
./features/step_definitions/general_steps.rb:48:in `/^I have a query to compare Source and Target$/'
./features/scenarios/general_file.feature:20:in `When I have a query to compare Source and Target'
./features/scenarios/general_file.feature:16:in `When I have a query to compare Source and Target'

Спасибо в Advnace.

1 Ответ

0 голосов
/ 02 мая 2019

пусто? это метод для строк. Вы можете попробовать использовать ноль? или ноль? для целых чисел.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...