Sha256: 921d53cb11a2a2ce69546b71a00c710812a8d2c655ed5f69a394b4ade7ccf286

Contents?: true

Size: 696 Bytes

Versions: 4

Compression:

Stored size: 696 Bytes

Contents

class Song

  attr_accessor :title, :year, :artist, :options

  def initialize(title, year, artist, options={})
    self.title = title
    self.year = year
    self.artist = artist
    self.options = options
  end

  def can_be_playlisted?
    metadata[:playlist]
  end

  def artist_name?
    self.artist && self.artist.name
  end

  def helpers
    [helper]
  end

  def helper
    Helper.new
  end

  def artist_name
    artis_name? || "Unknown"
  end

  def can_be_downloaded?
    metadata[:download]
  end

  def drm_enabled?
    options['drm_enabled']
  end

  def metadata
    {
      :playlist => options[:available_to_playlist],
      :download => options[:downloadable]
    }
  end

end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
snuffle-0.14.2 spec/fixtures/program_1.rb
snuffle-0.14.1 spec/fixtures/program_1.rb
snuffle-0.14.0 spec/fixtures/program_1.rb
snuffle-0.13.0 spec/fixtures/program_1.rb