Sha256: ba60118b59ffb4855a94c27f2f63b7fe71faf0ed82e602d573757b965160c6c5

Contents?: true

Size: 1.21 KB

Versions: 6

Compression:

Stored size: 1.21 KB

Contents

require "spec_helper"

describe Jan::Random do
  describe ".code(size)" do
    (6..20).each do |size|
      it "should return code with valid check digit" do
        code = Jan::Random.code(size)
        check_digit = Jan::Parser.check_digit(code)
        actual      = Jan::CheckDigitCalculator.calculate(Jan::Parser.body(code))
        expect(actual).to eq(check_digit)
      end

      it "should return given length valid code" do
        code = Jan::Random.code(size)
        expect(code.size).to eq(size)
      end
    end
  end

  describe ".instore_code(size)" do
    (6..20).each do |size|
      it "should return code with valid check digit" do
        code = Jan::Random.instore_code(size)
        check_digit = Jan::Parser.check_digit(code)
        actual      = Jan::CheckDigitCalculator.calculate(Jan::Parser.body(code))
        expect(actual).to eq(check_digit)
      end

      it "should return instore code" do
        code   = Jan::Random.instore_code(size)
        actual = Jan::Parser.instore_code?(code)
        expect(actual).to be true
      end

      it "should return given length valid code" do
        code = Jan::Random.instore_code(size)
        expect(code.size).to eq(size)
      end
    end
  end
end

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
jan-0.1.0 spec/jan/random_spec.rb
jan-0.0.5 spec/jan/random_spec.rb
jan-0.0.4 spec/jan/random_spec.rb
jan-0.0.3 spec/jan/random_spec.rb
jan-0.0.2 spec/jan/random_spec.rb
jan-0.0.1 spec/jan/random_spec.rb