simongregory/auntie

View on GitHub
bin/tv

Summary

Maintainability
Test Coverage
#!/usr/bin/env ruby
require 'auntie'

channels = {
  one: { id: 'bbcone', region: '/london' },
  two: { id: 'bbctwo', region: '/england' },
  three: { id: 'bbcthree' },
  four: { id: 'bbcfour' },
  cbeebies: { id: 'cbeebies' },
  cbbc: { id: 'cbbc' },
  news: { id: 'bbcnews' },
  parliament: { id: 'parliament' },
  alba: { id: 'alba' }
}

channel = ARGV[0] || :one

if ARGV[0] == 'help' && ARGV[1] == '-c'
  channels.each { |k, v| puts k }
  puts "now\nnext"
  exit
end

helps = %w(help -h --help)

if helps.include? ARGV[0]
  puts 'Useage: tv [channel]'
  exit
end

if ARGV[0] == 'now'
  NowNext.new.tv_now
  exit
end

if ARGV[0] == 'next'
  NowNext.new.tv_next
  exit
end

if channels.key? channel.to_sym
  Schedule.new.load channels[channel.to_sym]
else
  puts "'#{channel}' is an unknown channel"
end