Sha256: 126a348e3e4df0d9b1e1d99c35033afb29291fa7b964d6fb71e1408a07afcf04
Contents?: true
Size: 802 Bytes
Versions: 11
Compression:
Stored size: 802 Bytes
Contents
require 'rails_helper' module Spree RSpec.describe Spree::PromotionRule, type: :model do class BadTestRule < Spree::PromotionRule; end class TestRule < Spree::PromotionRule def eligible?(_promotable, _options = {}) true end end it "forces developer to implement eligible? method" do expect { BadTestRule.new.eligible?("promotable") }.to raise_error NotImplementedError end it "validates unique rules for a promotion" do p1 = TestRule.new p1.promotion_id = 1 p1.save p2 = TestRule.new p2.promotion_id = 1 expect(p2).not_to be_valid end it "generates its own partial path" do rule = TestRule.new expect(rule.to_partial_path).to eq 'spree/admin/promotions/rules/test_rule' end end end
Version data entries
11 entries across 11 versions & 1 rubygems