Welcome to the Treehouse Community
Want to collaborate on code errors? Have bugs you need feedback on? Looking for an extra set of eyes on your latest project? Get support with fellow developers, designers, and programmers of all backgrounds and skill levels here with the Treehouse Community! While you're at it, check out some resources Treehouse students have shared here.
Looking to learn something new?
Treehouse offers a seven day free trial for new students. Get access to thousands of hours of content and join thousands of Treehouse students and alumni in the community today.
Start your free trialJonathan Walz
21,429 PointsI don't understand why this isn't running
This code runs fine in workspaces but doesn't when running inside the challenge window.
It says "It looks like Task 1 is no longer passing."
Help!
class SimpleBenchmarker
def run(description, &block)
start_time = Time.now
block.call
end_time = Time.now
elapsed = end_time - start_time
puts "\n#{description} results"
puts "Elapsed time: #{elapsed} seconds"
end
end
benchmarker = SimpleBenchmarker.new
benchmarker.run do
5.times do
print "."
sleep(rand(0.1..1.0))
end
end
2 Answers
Salman Akram
Courses Plus Student 40,065 PointsHi Jonathan,
The question expects you to have string of the description (first argument) inside block, that's why you haven't add it yet.
See example:
benchmarker = SimpleBenchmarker.new
#add any string you like to add before block
benchmarker.run "description" do
5.times do
print "."
sleep(rand(0.1..1.0))
end
end
Hope that helps.
Jonathan Walz
21,429 PointsThis worked. Thank you. The error message was confusing since it wasn't the actual problem.
Salman Akram
Courses Plus Student 40,065 PointsYeah, I agree with you, it should said "string is missing inside the block" instead going back to task 1.
If that helps your question, please kindly mark best answer to let others know about this solution and prevent them repeating mistakes.