mirror of
https://github.com/iritmaximus/brewery.git
synced 2026-10-12 19:13:49 +03:00
upto 4.2: beer tests
This commit is contained in:
@@ -6,6 +6,7 @@ class Beer < ApplicationRecord
|
||||
has_many :users, through: :ratings
|
||||
|
||||
validates :name, presence: true
|
||||
validates :style, presence: true
|
||||
|
||||
def to_s
|
||||
"#{name}, #{(Brewery.find_by_id brewery_id).name}"
|
||||
|
||||
@@ -0,0 +1,26 @@
|
||||
require 'rails_helper'
|
||||
|
||||
RSpec.describe Beer, type: :model do
|
||||
describe "creation" do
|
||||
let(:user){ User.create username: "Möötti", password: "Unsecure1"}
|
||||
let(:brewery){ Brewery.create name: "Creative", year: 2023 }
|
||||
|
||||
it "is successful with correct parameters" do
|
||||
beer = Beer.create name: "Hyvä juoma", style: "Yes", brewery_id: brewery.id
|
||||
expect(beer).to be_valid
|
||||
expect(beer.name).to eq "Hyvä juoma"
|
||||
expect(beer.style).to eq "Yes"
|
||||
expect(beer.brewery_id).to eq brewery.id
|
||||
end
|
||||
|
||||
it "fails if no name is given" do
|
||||
beer = Beer.create style: "No", brewery_id: brewery.id
|
||||
expect(beer).to_not be_valid
|
||||
end
|
||||
|
||||
it "fails if no style is given" do
|
||||
beer = Beer.create name: "Möötti", brewery_id: brewery.id
|
||||
expect(beer).to_not be_valid
|
||||
end
|
||||
end
|
||||
end
|
||||
Reference in New Issue
Block a user