Sha256: a17b99c050dc034adb70355cb7bdadddf5b5a0aea942ca0afde2b891e64c87fb
Contents?: true
Size: 1.26 KB
Versions: 1
Compression:
Stored size: 1.26 KB
Contents
require 'active_model' require 'helper' class TestBankValidator < MiniTest::Test class TestUser include ActiveModel::Validations validates :iban, iban: true attr_accessor :iban def initialize(attributes = {}) @iban = attributes[:iban] end def save return false unless valid? end def self.create(attributes = {}) new(attributes).save end end should "not save if the iban is too short" do assert_equal TestUser.create(iban: "GB82WEST"), false end should "save if the iban is at least 16 characters" do assert_equal TestUser.create(iban: "GB82WEST12345698765432"), nilk end should "returns false if the iban does not leave a remainder of 1 when divided by 97" do assert_equal TestUser.create(iban: "GB82WEST123456987654Df"), false end should "returns true if the iban returns a remainder of 1 when divided by 97" do assert_equal TestUser.create(iban: "GB82WEST12345698765432"), nil end should "work for different IBAN formats" do #Belgium assert_equal TestUser.create(iban: "BE62510007547061"), nil #Bulgaria assert_equal TestUser.create(iban: "BG80BNBG96611020345678"), nil #Germany assert_equal TestUser.create(iban: "DE89370400440532013000"), nil end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
bank-validator-0.0.3 | test/test_bank-validator.rb |