namespace :pets do
	desc "Load a pet's viewer data"
	task :load, [:name] => [:environment] do |task, args|
		viewer_data = Neopets::CustomPets.fetch_viewer_data(args[:name])
		puts JSON.pretty_generate(viewer_data)
	end

	desc "Find pets that were, last we saw, of the given color and species"
	task :find, [:color_name, :species_name] => [:environment] do |task, args|
		begin
			pt = PetType.matching_name(args.color_name, args.species_name).first!
		rescue ActiveRecord::RecordNotFound
			abort "Could not find pet type for " +
			      "#{args.color_name} #{args.species_name}"
		end

		limit = ENV.fetch("LIMIT", 10)

		pt.pets.limit(limit).order(id: :desc).pluck(:name).each do |pet_name|
			puts "- #{pet_name} (https://www.neopets.com/petlookup.phtml?pet=#{pet_name})"
		end
	end
end