Created
May 24, 2016 15:16
-
-
Save takkanm/6fed8be16222bd5eb4b6b7c4f1331621 to your computer and use it in GitHub Desktop.
This file contains 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 'sqlite3' | |
end | |
require 'active_record' | |
require 'minitest/autorun' | |
require 'logger' | |
# This connection will do for database-independent bug reports. | |
ActiveRecord::Base.establish_connection(adapter: 'sqlite3', database: ':memory:') | |
ActiveRecord::Base.logger = Logger.new(STDOUT) | |
ActiveRecord::Schema.define do | |
create_table :posts, force: true do |t| | |
end | |
create_table :comments, force: true do |t| | |
t.integer :post_id | |
t.integer :state | |
end | |
end | |
class Post < ActiveRecord::Base | |
has_one :comment # has_many is work. | |
end | |
class Comment < ActiveRecord::Base | |
belongs_to :post | |
enum state: %i(hidden visible) | |
end | |
class BugTest < Minitest::Test | |
def test_association_stuff | |
post = Post.create! | |
post.create_comment(state: :hidden) | |
# DEBUG -- : (0.1ms) SELECT COUNT(*) FROM "posts" INNER JOIN "comments" ON "comments"."post_id" = "posts"."id" WHERE "comments"."state" = ? [["state", "hidden"]] | |
assert_equal 1, Post.joins(:comment).where(comments: {state: 'hidden'}).count | |
end | |
end |
This file contains 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
Fetching git://github.com/rails/rails.git | |
Fetching gem metadata from https://rubygems.org/ | |
Fetching version metadata from https://rubygems.org/ | |
Resolving dependencies... | |
Using rake 11.1.2 | |
Using concurrent-ruby 1.0.2 | |
Using i18n 0.7.0 | |
Using minitest 5.9.0 | |
Using thread_safe 0.3.5 | |
Using builder 3.2.2 | |
Using erubis 2.7.0 | |
Using mini_portile2 2.0.0 | |
Using json 1.8.3 | |
Using nio4r 1.2.1 | |
Using websocket-extensions 0.1.2 | |
Using mime-types-data 3.2016.0521 | |
Using arel 7.0.0 | |
Using bundler 1.12.4 | |
Using method_source 0.8.2 | |
Using thor 0.19.1 | |
Using sqlite3 1.3.11 | |
Using tzinfo 1.2.2 | |
Using nokogiri 1.6.7.2 | |
Using rack 2.0.0.rc1 | |
Using websocket-driver 0.6.4 | |
Using mime-types 3.1 | |
Using activesupport 5.1.0.alpha from git://github.com/rails/rails.git (at master@61f6dc5) | |
Using loofah 2.0.3 | |
Using rack-test 0.6.3 | |
Using sprockets 3.6.0 | |
Using mail 2.6.4 | |
Using rails-dom-testing 2.0.0 | |
Using globalid 0.3.6 | |
Using activemodel 5.1.0.alpha from git://github.com/rails/rails.git (at master@61f6dc5) | |
Using rails-html-sanitizer 1.0.3 | |
Using activejob 5.1.0.alpha from git://github.com/rails/rails.git (at master@61f6dc5) | |
Using activerecord 5.1.0.alpha from git://github.com/rails/rails.git (at master@61f6dc5) | |
Using actionview 5.1.0.alpha from git://github.com/rails/rails.git (at master@61f6dc5) | |
Using actionpack 5.1.0.alpha from git://github.com/rails/rails.git (at master@61f6dc5) | |
Using actioncable 5.1.0.alpha from git://github.com/rails/rails.git (at master@61f6dc5) | |
Using actionmailer 5.1.0.alpha from git://github.com/rails/rails.git (at master@61f6dc5) | |
Using railties 5.1.0.alpha from git://github.com/rails/rails.git (at master@61f6dc5) | |
Using sprockets-rails 3.0.4 | |
Using rails 5.1.0.alpha from git://github.com/rails/rails.git (at master@61f6dc5) | |
-- create_table(:posts, {:force=>true}) | |
D, [2016-05-25T00:15:35.387078 #57174] DEBUG -- : (0.2ms) CREATE TABLE "posts" ("id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL) | |
-> 0.0218s | |
-- create_table(:comments, {:force=>true}) | |
D, [2016-05-25T00:15:35.387778 #57174] DEBUG -- : (0.1ms) CREATE TABLE "comments" ("id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "post_id" integer, "state" integer) | |
-> 0.0006s | |
D, [2016-05-25T00:15:35.391750 #57174] DEBUG -- : (0.1ms) CREATE TABLE "ar_internal_metadata" ("key" varchar NOT NULL PRIMARY KEY, "value" varchar, "created_at" datetime NOT NULL, "updated_at" datetime NOT NULL) | |
D, [2016-05-25T00:15:35.402825 #57174] DEBUG -- : ActiveRecord::InternalMetadata Load (0.2ms) SELECT "ar_internal_metadata".* FROM "ar_internal_metadata" WHERE "ar_internal_metadata"."key" = ? LIMIT ? [["key", :environment], ["LIMIT", 1]] | |
D, [2016-05-25T00:15:35.407952 #57174] DEBUG -- : (0.1ms) begin transaction | |
D, [2016-05-25T00:15:35.409583 #57174] DEBUG -- : SQL (0.1ms) INSERT INTO "ar_internal_metadata" ("key", "value", "created_at", "updated_at") VALUES (?, ?, ?, ?) [["key", "environment"], ["value", "development"], ["created_at", 2016-05-24 15:15:35 UTC], ["updated_at", 2016-05-24 15:15:35 UTC]] | |
D, [2016-05-25T00:15:35.409904 #57174] DEBUG -- : (0.1ms) commit transaction | |
Run options: --seed 40115 | |
# Running: | |
D, [2016-05-25T00:15:35.439051 #57174] DEBUG -- : (0.1ms) begin transaction | |
D, [2016-05-25T00:15:35.440775 #57174] DEBUG -- : SQL (0.2ms) INSERT INTO "posts" DEFAULT VALUES | |
D, [2016-05-25T00:15:35.441707 #57174] DEBUG -- : (0.1ms) commit transaction | |
D, [2016-05-25T00:15:35.456614 #57174] DEBUG -- : (0.1ms) begin transaction | |
D, [2016-05-25T00:15:35.457472 #57174] DEBUG -- : SQL (0.1ms) INSERT INTO "comments" ("post_id", "state") VALUES (?, ?) [["post_id", 1], ["state", 0]] | |
D, [2016-05-25T00:15:35.457675 #57174] DEBUG -- : (0.1ms) commit transaction | |
D, [2016-05-25T00:15:35.459695 #57174] DEBUG -- : Comment Load (0.1ms) SELECT "comments".* FROM "comments" WHERE "comments"."post_id" = ? LIMIT ? [["post_id", 1], ["LIMIT", 1]] | |
D, [2016-05-25T00:15:35.466045 #57174] DEBUG -- : (0.1ms) SELECT COUNT(*) FROM "posts" INNER JOIN "comments" ON "comments"."post_id" = "posts"."id" WHERE "comments"."state" = ? [["state", "hidden"]] | |
F | |
Finished in 0.035637s, 28.0607 runs/s, 28.0607 assertions/s. | |
1) Failure: | |
BugTest#test_association_stuff [template.rb:47]: | |
Expected: 1 | |
Actual: 0 | |
1 runs, 1 assertions, 1 failures, 0 errors, 0 skips |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment