Sha256: 69669e23497f2bb37f14e4132bf89e8781ca667919ed7f3e99b3e2cf3059cccd

Contents?: true

Size: 975 Bytes

Versions: 12

Compression:

Stored size: 975 Bytes

Contents

require 'summary_judgement'

module BrighterPlanet
  module Flight
    module Summarization
      def self.included(base)
        base.extend SummaryJudgement
        base.summarize do |has|
          has.adjective 'one-way', :if => lambda { |flight| flight.trips == 1 }
          has.adjective 'round-trip', :if => lambda { |flight| flight.trips == 2 }
          has.adjective 'nonstop', :if => lambda { |flight| flight.segments_per_trip == 1 }
          has.identity 'flight'
          has.modifier lambda { |flight| "from #{flight.origin_airport.name}" }, :if => :origin_airport
          has.modifier lambda { |flight| "to #{flight.destination_airport.name}" }, :if => :destination_airport
          has.modifier lambda { |flight| "on a #{flight.vehicle}" }, :if => :vehicle
          has.modifier lambda { |flight| "on #{flight.date.to_formatted_s(:archive)}"}, :if => :date
          has.verb :take
          has.aspect :perfect
        end
      end
    end
  end
end

Version data entries

12 entries across 12 versions & 1 rubygems

Version Path
flight-0.1.11 lib/flight/summarization.rb
flight-0.1.10 lib/flight/summarization.rb
flight-0.1.9 lib/flight/summarization.rb
flight-0.1.8 lib/flight/summarization.rb
flight-0.1.7 lib/flight/summarization.rb
flight-0.1.6 lib/flight/summarization.rb
flight-0.1.5 lib/flight/summarization.rb
flight-0.1.4 lib/flight/summarization.rb
flight-0.1.3 lib/flight/summarization.rb
flight-0.1.2 lib/flight/summarization.rb
flight-0.1.1 lib/flight/summarization.rb
flight-0.1.0 lib/flight/summarization.rb