16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
|
# File 'lib/parse_packwerk/package_todo.rb', line 16
def self.from(pathname)
if pathname.exist?
package_todo_loaded_yml = YAML.load_file(pathname)
all_violations = []
package_todo_loaded_yml&.each_key do |to_package_name|
package_todo_per_package = package_todo_loaded_yml[to_package_name]
package_todo_per_package.each_key do |class_name|
symbol_usage = package_todo_per_package[class_name]
files = symbol_usage['files']
violations = symbol_usage['violations']
violations.uniq.each do |violation_type|
all_violations << Violation.new(type: violation_type, to_package_name: to_package_name, class_name: class_name, files: files)
end
end
end
new(
pathname: pathname.cleanpath,
violations: all_violations
)
else
new(
pathname: pathname.cleanpath,
violations: []
)
end
end
|