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_access_tokenObject

Returns the value of attribute ci_access_token.



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

def ci_access_token
  @ci_access_token
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

#output_directoryObject

Returns the value of attribute output_directory.



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

def output_directory
  @output_directory
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



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

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_access_token_from_ymlObject



107
108
109
# File 'lib/slather/project.rb', line 107

def configure_ci_access_token_from_yml
  self.ci_access_token ||= (self.class.yml["ci_access_token"] || "")
end

#configure_ci_service_from_ymlObject



95
96
97
# File 'lib/slather/project.rb', line 95

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

#configure_coverage_service_from_ymlObject



103
104
105
# File 'lib/slather/project.rb', line 103

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
76
77
# 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_ci_access_token_from_yml
  configure_coverage_service_from_yml
  configure_source_directory_from_yml
  configure_output_directory_from_yml
end

#configure_ignore_list_from_ymlObject



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

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

#configure_output_directory_from_ymlObject



87
88
89
# File 'lib/slather/project.rb', line 87

def configure_output_directory_from_yml
  self.output_directory ||= self.class.yml["output_directory"] if self.class.yml["output_directory"]
end

#configure_source_directory_from_ymlObject



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

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