Class: Slather::Project

Inherits:
Xcodeproj::Project show all
Defined in:
lib/slather/project.rb

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Methods inherited from Xcodeproj::Project

#slather_setup_for_coverage

Instance Attribute Details

#build_directoryObject

Returns the value of attribute build_directory.



22
23
24
# File 'lib/slather/project.rb', line 22

def build_directory
  @build_directory
end

#ci_serviceObject

Returns the value of attribute ci_service.



22
23
24
# File 'lib/slather/project.rb', line 22

def ci_service
  @ci_service
end

#coverage_serviceObject

Returns the value of attribute coverage_service.



22
23
24
# File 'lib/slather/project.rb', line 22

def coverage_service
  @coverage_service
end

#ignore_listObject

Returns the value of attribute ignore_list.



22
23
24
# File 'lib/slather/project.rb', line 22

def ignore_list
  @ignore_list
end

#source_directoryObject

Returns the value of attribute source_directory.



22
23
24
# File 'lib/slather/project.rb', line 22

def source_directory
  @source_directory
end

Class Method Details

.open(xcodeproj) ⇒ Object



26
27
28
29
30
# File 'lib/slather/project.rb', line 26

def self.open(xcodeproj)
  proj = super
  proj.configure_from_yml
  proj
end

.ymlObject



65
66
67
# File 'lib/slather/project.rb', line 65

def self.yml
  @yml ||= File.exist?(yml_filename) ? YAML.load_file(yml_filename) : {}
end

.yml_filenameObject



61
62
63
# File 'lib/slather/project.rb', line 61

def self.yml_filename
  '.slather.yml'
end

Instance Method Details

#configure_build_directory_from_ymlObject



77
78
79
# File 'lib/slather/project.rb', line 77

def configure_build_directory_from_yml
  self.build_directory = self.class.yml["build_directory"] if self.class.yml["build_directory"] && !@build_directory
end

#configure_ci_service_from_ymlObject



89
90
91
# File 'lib/slather/project.rb', line 89

def configure_ci_service_from_yml
  self.ci_service ||= (self.class.yml["ci_service"] || :travis_ci)
end

#configure_coverage_service_from_ymlObject



97
98
99
# File 'lib/slather/project.rb', line 97

def configure_coverage_service_from_yml
  self.coverage_service ||= (self.class.yml["coverage_service"] || :terminal)
end

#configure_from_ymlObject



69
70
71
72
73
74
75
# File 'lib/slather/project.rb', line 69

def configure_from_yml
  configure_build_directory_from_yml
  configure_ignore_list_from_yml
  configure_ci_service_from_yml
  configure_coverage_service_from_yml
  configure_source_directory_from_yml
end

#configure_ignore_list_from_ymlObject



85
86
87
# File 'lib/slather/project.rb', line 85

def configure_ignore_list_from_yml
  self.ignore_list ||= [(self.class.yml["ignore"] || [])].flatten
end

#configure_source_directory_from_ymlObject



81
82
83
# File 'lib/slather/project.rb', line 81

def configure_source_directory_from_yml
  self.source_directory ||= self.class.yml["source_directory"] if self.class.yml["source_directory"]
end