Sha256: 4e9207218f90f3c02ecdf4cc2c45fd1a6e2a328f090d3017c41b57367878e29e

Contents?: true

Size: 898 Bytes

Versions: 3

Compression:

Stored size: 898 Bytes

Contents

require 'spec_helper'
require "taiwanese_id_validator/twid_generator"

describe TwidGenerator do
  describe "#generate" do
    it "always generate valid ID" do
      fake_ids = 1000.times.map do
        TwidValidator.valid?(TwidGenerator.generate)
      end

      expect(fake_ids.all?{true}).to be true
    end

    describe "is able to fake male or female ID" do
      context "when generate female ID" do
        it "first number charactor should be 2" do
          fake_id = TwidGenerator.generate("female")
          first_number = fake_id.split(//)[1]

          expect(first_number).to eq("2")
        end
      end

      context "when generate male ID" do
        it "first number charactor should be 1" do
          fake_id = TwidGenerator.generate("male")
          first_number = fake_id.split(//)[1]

          expect(first_number).to eq("1")
        end
      end
    end
  end
end


Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
taiwanese_id_validator-0.0.3 spec/taiwanese_id_validator/twid_generator_spec.rb
taiwanese_id_validator-0.0.2 spec/taiwanese_id_validator/twid_generator_spec.rb
taiwanese_id_validator-0.0.1 spec/taiwanese_id_validator/twid_generator_spec.rb