Sha256: 61e5c15ae99b6f058f7f6c80add7bfa844000734a2c93ee734a74e3288550053

Contents?: true

Size: 1.59 KB

Versions: 9

Compression:

Stored size: 1.59 KB

Contents

require 'spec_helper'

module Bookkeeper
  describe Purchase do
    context "model attributes validations" do
      it "is valid with a title" do
        expect(build(:bookkeeper_purchase)).to be_valid
      end

      it "is invalid without a title" do
        expect(build(:bookkeeper_purchase, title: nil)).to have(1).errors_on(:title)
      end

      it "has an optional description" do
        expect(build(:bookkeeper_purchase, description: nil)).to be_valid
      end

      it "has an optional purchase date" do
        expect(build(:bookkeeper_purchase, purchase_date: nil)).to be_valid
      end

      it "allows a blank purchase date" do
        expect(build(:bookkeeper_purchase, purchase_date: '')).to be_valid
      end

      it "has an optional warranty duration" do
        expect(build(:bookkeeper_purchase, warranty_duration: nil)).to be_valid
      end

      it "has an optional receipt" do
        expect(build(:bookkeeper_purchase, receipt: nil)).to be_valid
      end

      it "has a numeric warranty duration" do
        expect(build(:bookkeeper_purchase)).to be_valid
      end

      it "denies a not-numeric warranty duration" do
        expect(build(:bookkeeper_purchase, warranty_duration: 'not_valid')).to have(1).errors_on(:warranty_duration)
      end

      it "has a valid date as purchase date" do
        expect(build(:bookkeeper_purchase, purchase_date: 24.months.ago)).to be_valid
      end

      it "denies an invalid date as purchase date" do
        expect(build(:bookkeeper_purchase, purchase_date: 'not_valid')).to have(1).errors_on(:purchase_date)
      end
    end
  end
end

Version data entries

9 entries across 9 versions & 1 rubygems

Version Path
bookkeeper-0.0.7 spec/models/bookkeeper/purchase_spec.rb
bookkeeper-0.0.6 spec/models/bookkeeper/purchase_spec.rb
bookkeeper-0.0.5 spec/models/bookkeeper/purchase_spec.rb
bookkeeper-0.0.4 spec/models/bookkeeper/purchase_spec.rb
bookkeeper-0.0.3 spec/models/bookkeeper/purchase_spec.rb
bookkeeper-0.0.2 spec/models/bookkeeper/purchase_spec.rb
bookkeeper-0.0.1 spec/models/bookkeeper/purchase_spec.rb
bookkeeper-0.0.1.beta2 spec/models/bookkeeper/purchase_spec.rb
bookkeeper-0.0.1.beta1 spec/models/bookkeeper/purchase_spec.rb