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



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

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

.yml_filenameObject



56
57
58
# File 'lib/slather/project.rb', line 56

def self.yml_filename
  '.slather.yml'
end

Instance Method Details

#configure_build_directory_from_ymlObject



72
73
74
# File 'lib/slather/project.rb', line 72

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



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

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

#configure_coverage_service_from_ymlObject



92
93
94
# File 'lib/slather/project.rb', line 92

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

#configure_from_ymlObject



64
65
66
67
68
69
70
# File 'lib/slather/project.rb', line 64

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



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

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

#configure_source_directory_from_ymlObject



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

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