module Codebreaker::Storage
Constants
- FILE_NAME
- PATH
Public Instance Methods
load_database()
click to toggle source
# File lib/modules/storage.rb, line 15 def load_database YAML.load(File.read(file_path)) end
save(results)
click to toggle source
# File lib/modules/storage.rb, line 8 def save(results) FileUtils.mkdir_p(PATH) unless Dir.exist?(PATH) create_storage unless File.exist?(file_path) data = load_database << results write_data(data) end
sort_player()
click to toggle source
# File lib/modules/storage.rb, line 19 def sort_player create_storage unless File.exist?(file_path) load_database.sort_by { |game| [game[:difficulty], game[:attempts_used], game[:hints_used]] } end
Private Instance Methods
create_storage()
click to toggle source
# File lib/modules/storage.rb, line 30 def create_storage write_data([]) end
file_path()
click to toggle source
# File lib/modules/storage.rb, line 26 def file_path File.join(Dir.pwd, PATH, FILE_NAME) end
write_data(data)
click to toggle source
# File lib/modules/storage.rb, line 34 def write_data(data) File.open(file_path, 'w') { |file| file.write(data.to_yaml) } end