class LearnReview
Public Class Methods
new(filename = 'README.md')
click to toggle source
# File lib/learn_review.rb, line 7 def initialize(filename = 'README.md') puts "Checking the contents of #{filename}..." puts '' fh = open filename content = fh.read fh.close average_readability = Odyssey.ari(content, false) coleman_liau = Odyssey.coleman_liau(content, false) grade_level = Odyssey.flesch_kincaid_grade_level(content, false) readability_ease = Odyssey.flesch_kincaid_reading_ease(content, false) gunning_fog = Odyssey.gunning_fog(content, false) smog = Odyssey.smog(content, false) text = Odyssey.fake_formula(content, true) gender_specific_words = %w[he she him her] .select do |word| text['score']['words'].include?(word) end relevant_words = ['readme', 'code along', 'codealong', 'lab', 'test'] .select do |word| text['score']['words'].include?(word) end irrelevant_words = ['a', 'an', 'and', 'the', 'like', 'with', 'through', 'over', 'before', 'at', 'of', 'to', 'in', 'for', 'on', 'by', 'between', 'after', 'since', 'without', 'under', 'beyond', 'near', 'above', 'off', 'down', 'except', 'about', 'learn', 'co', 'open', 'really', "we're"] word_hash = {} text['score']['words'] .reject { |word| irrelevant_words.include?(word.downcase) } .each do |word| word_hash.key?(word) ? word_hash[word] += 1 : word_hash[word] = 1 end puts 'Automated Readability Index (1 => Kindergarten, 8 => 7th Grade, 14+ => College Level):' puts average_readability puts '' puts 'Coleman Liau Index (1 => Kindergarten, 8 => 7th Grade, 14+ => College Level):' puts coleman_liau puts '' puts 'Flesch Kincaid Grade Level (1 => Kindergarten, 8 => 7th Grade, 14+ => College Level):' puts grade_level puts '' puts 'Flesch Kincaid Reading Ease (100.0-90.0 => 5th Grade, 80.0-70.0 => 7th Grade, 50.0-30.0 => College Level):' puts readability_ease puts '' puts 'Gunning Fog Index (7 => 7th grade, 10 => 10th Grade, 13-16 => College Level):' puts gunning_fog puts '' puts 'Smog Index (7 => 7th grade, 10 => 10th Grade, 13-16 => College Level):' puts smog puts '' puts "Gender specific words: #{gender_specific_words}" end