[Rails5] Fix enum question mark methods
This commit is contained in:
		
							parent
							
								
									1350d80ca2
								
							
						
					
					
						commit
						9e78b86dd4
					
				| 
						 | 
				
			
			@ -530,6 +530,17 @@ module Ci
 | 
			
		|||
      @latest_builds_with_artifacts ||= builds.latest.with_artifacts_archive.to_a
 | 
			
		||||
    end
 | 
			
		||||
 | 
			
		||||
    # Rails 5.0 autogenerated question mark enum methods return wrong result if enum value is nil.
 | 
			
		||||
    # They always return `false`.
 | 
			
		||||
    # These methods overwrite autogenerated ones to return correct results.
 | 
			
		||||
    def unknown?
 | 
			
		||||
      Gitlab.rails5? ? source.nil? : super
 | 
			
		||||
    end
 | 
			
		||||
 | 
			
		||||
    def unknown_source?
 | 
			
		||||
      Gitlab.rails5? ? config_source.nil? : super
 | 
			
		||||
    end
 | 
			
		||||
 | 
			
		||||
    private
 | 
			
		||||
 | 
			
		||||
    def ci_yaml_from_repo
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -189,4 +189,11 @@ class CommitStatus < ActiveRecord::Base
 | 
			
		|||
      v =~ /\d+/ ? v.to_i : v
 | 
			
		||||
    end
 | 
			
		||||
  end
 | 
			
		||||
 | 
			
		||||
  # Rails 5.0 autogenerated question mark enum methods return wrong result if enum value is nil.
 | 
			
		||||
  # They always return `false`.
 | 
			
		||||
  # This method overwrites the autogenerated one to return correct result.
 | 
			
		||||
  def unknown_failure?
 | 
			
		||||
    Gitlab.rails5? ? failure_reason.nil? : super
 | 
			
		||||
  end
 | 
			
		||||
end
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
		Reference in New Issue