Created
June 18, 2016 12:55
-
-
Save marekkirejczyk/5a5d295cbb0d82a1daf57879418b379f to your computer and use it in GitHub Desktop.
Test for: ActiveRecord - no exception is thrown when invalid UUID value is supplied on update!
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
begin | |
require 'bundler/inline' | |
rescue LoadError => e | |
$stderr.puts 'Bundler version 1.10 or later is required. Please update your Bundler' | |
raise e | |
end | |
gemfile(true) do | |
source 'https://rubygems.org' | |
gem 'rails', github: 'rails/rails' | |
gem 'pg' | |
end | |
require 'active_record' | |
require 'minitest/autorun' | |
require 'logger' | |
ActiveRecord::Base.establish_connection(adapter: 'postgresql', database: 'uuid_issue') | |
ActiveRecord::Base.logger = Logger.new(STDOUT) | |
ActiveRecord::Schema.define do | |
drop_table :hypervisors if (data_source_exists? :hypervisors) | |
create_table :hypervisors do |t| | |
t.uuid :hypervisors, :blah | |
end | |
end | |
class Hypervisor < ActiveRecord::Base | |
end | |
class BugTest < Minitest::Test | |
def test_uuid_issue | |
Hypervisor.create! blah: SecureRandom.uuid | |
refute_nil Hypervisor.last.blah | |
Hypervisor.last.update!(blah: '1234') | |
refute_nil Hypervisor.last.blah | |
end | |
end |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment