Ich benutze Ruby 1.9.2 und Schienen 3.2.2.RSpec Test wird nicht bestanden. Validieren für die Eindeutigkeit mit dem Domain-Namen
Ich habe ein 'Domain' Modell (domain.rb):
class Domain < ActiveRecord::Base
attr_accessible :url
belongs_to :user
VALID_DOMAIN_REGEX = /^[a-z0-9\-\.]+\.[a-z]{2,}$/i
validates :url, presence:true,
format: { with: VALID_DOMAIN_REGEX },
uniqueness: { case_sensitive: false }
end
Und einen Test zu behaupten, dass eine doppelte Domäne nicht gültig sein sollte:
require 'spec_helper'
describe Domain do
before do
@domain = FactoryGirl.create(:domain)
end
subject { @domain }
describe "when domain url is already taken" do
before do
domain_with_same_url = @domain.dup
domain_with_same_url.url = @domain.url.upcase
domain_with_same_url.save
end
it { should_not be_valid }
end
end
Der Test nicht hält:
1) Domain when domain url is already taken Failure/Error: it { should_not be_valid } expected valid? to return false, got true # ./spec/models/domain_spec.rb:31:in `block (3 levels) in '
Danke für die Hilfe! Erkenne jetzt, dass ich konzeptionell einen großen Gegenstand vermisste :) Sollte mir helfen, mit diesem Testmaterial weiterzumachen. – jessem