Sha256: 12708d183dc767d942efe78f470180d3d3dd1bcb2897e3d3c3c6b0be92732f4e

Contents?: true

Size: 991 Bytes

Versions: 2

Compression:

Stored size: 991 Bytes

Contents

require "spec_helper"

describe Tset::Analyzers::Model do
  let(:name) { 'post' }
  let(:analyzer) { Tset::Analyzers::Model.new(name) }

  before do
    set_up_testing_directory
    create_file("app/models/#{name}.rb")
  end

  before(:each) do
    erase_file_content("app/models/#{name}.rb")
  end

  after do
    chdir_back_to_root
  end

  it 'returns an array of testable codes' do
    content = "
  belongs_to :author
  has_one :tipjar
  has_many :comments
  has_many :likes
  lets_validate_this :forum
  validates_presence_of :post
  acts_as_votable
  validates_presence_of :author
  validates :category, presence: true
"
    insert_into_file("app/models/#{name}.rb", content)
    result = analyzer.start

    expect(result.map(&:code)).to match_array ['validates_presence_of :post', 'validates_presence_of :author', 'validates :category, presence: true',
                                    'belongs_to :author', 'has_one :tipjar', 'has_many :comments', 'has_many :likes']

  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
tset-0.0.2 spec/analyzers/model_spec.rb
tset-0.0.1 spec/analyzers/model_spec.rb