clai2x 0 Newbie Poster

please excuse me, i'm not a developer but a tester and i'm no good at doing programming stuff and all. im into automation now for my testing and i choose to use ruby for it but i have a problem hope you guys could help me out of this...

i need to do a script that will check my email every 5minutes and after 20minutes of no new mail it will produce "test fail". i have found a cool code for checking email every 5min but i could not find a way to stop it after 20minutes? any help is greatly appreciated :)

here's the code:

def time_block
  start_time = Time.now
  Thread.new { yield }
  Time.now - start_time
end

def repeat_every(seconds)
 begin
    time_spent = time_block { yield }
    sleep(seconds - time_spent)
 end while time_spent < seconds
end

repeat_every(300) { # checking of email ever 5 minutes
  puts "Start checking: #{Time.now}"
  # email checking here
  puts "End checking: #{Time.now}"
}
Be a part of the DaniWeb community

We're a friendly, industry-focused community of developers, IT pros, digital marketers, and technology enthusiasts meeting, networking, learning, and sharing knowledge.