Sha256: 3e7631869a49eaca2f519f1dfa26c2f6c86a1323207ea5244b84f831da31edf9

Contents?: true

Size: 703 Bytes

Versions: 8

Compression:

Stored size: 703 Bytes

Contents

require 'spec_helper'

class DummyClass
  include ActiveModel::Model
  include ActiveModel::Validations
  include ActiveRecord::Callbacks
  include Redde::Sluggable

  attr_accessor :id, :title, :slug

  def id
    3
  end

  def title
    'hey ho'
  end
end

class DummyClassWithTitle < DummyClass
  include Redde::Sluggable
  TITLE_SYMBOL = :name

  def name
    'super name'
  end
end

describe Redde::Sluggable do
  let(:title) { DummyClass.new }
  let(:name) { DummyClassWithTitle.new }

  it 'sets slug for model with title' do
    title.valid?
    expect(title.slug).to eq 'hey-ho'
  end

  it 'sets slug for model with name' do
    name.valid?
    expect(name.slug).to eq 'super-name'
  end
end

Version data entries

8 entries across 8 versions & 1 rubygems

Version Path
redde-0.1.18 spec/models/sluggable_spec.rb
redde-0.1.17 spec/models/sluggable_spec.rb
redde-0.1.16 spec/models/sluggable_spec.rb
redde-0.1.15 spec/models/sluggable_spec.rb
redde-0.1.14 spec/models/sluggable_spec.rb
redde-0.1.13 spec/models/sluggable_spec.rb
redde-0.1.12 spec/models/sluggable_spec.rb
redde-0.1.11 spec/models/sluggable_spec.rb