Sha256: 310817871221b33e98425ef7b6f241801da56e5e1f3af725db923c58b1173590
Contents?: true
Size: 1.15 KB
Versions: 6
Compression:
Stored size: 1.15 KB
Contents
require 'spec_helper' RSpec.describe Spree::Order::NumberGenerator do subject { described_class.new.generate } it { is_expected.to be_a(String) } describe 'length' do let(:default_length) do Spree::Order::ORDER_NUMBER_LENGTH + Spree::Order::ORDER_NUMBER_PREFIX.length end it { expect(subject.length).to eq default_length } context "when length option is 5" do let(:option_length) { 5 + Spree::Order::ORDER_NUMBER_PREFIX.length } subject { described_class.new(length: 5).generate } it "should be 5 plus default prefix length" do expect(subject.length).to eq option_length end end end context "when letters option is true" do subject { described_class.new(letters: true).generate } it "generates order number including letters" do is_expected.to match /[A-Z]/ end end describe 'prefix' do it { is_expected.to match /^#{Spree::Order::ORDER_NUMBER_PREFIX}/ } context "when prefix option is 'P'" do subject { described_class.new(prefix: 'P').generate } it "generates order number prefixed with 'P'" do is_expected.to match /^P/ end end end end
Version data entries
6 entries across 6 versions & 1 rubygems