Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Use MethodCallAssertions instead of Mocha#expects #33391

Merged
merged 1 commit into from Jul 19, 2018
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
8 changes: 4 additions & 4 deletions activerecord/test/cases/fixtures_test.rb
Expand Up @@ -861,9 +861,9 @@ def rollback_transaction(*args); end
def lock_thread=(lock_thread); end
end.new

connection.expects(:begin_transaction).with(joinable: false)

fire_connection_notification(connection)
assert_called_with(connection, :begin_transaction, [joinable: false]) do
fire_connection_notification(connection)
end
end

def test_notification_established_transactions_are_rolled_back
Expand Down Expand Up @@ -891,7 +891,7 @@ def lock_thread=(lock_thread); end
private

def fire_connection_notification(connection)
ActiveRecord::Base.connection_handler.stub(:retrieve_connection, connection) do
assert_called_with(ActiveRecord::Base.connection_handler, :retrieve_connection, ["book"], returns: connection) do
message_bus = ActiveSupport::Notifications.instrumenter
payload = {
spec_name: "book",
Expand Down
81 changes: 53 additions & 28 deletions activerecord/test/cases/tasks/database_tasks_test.rb
Expand Up @@ -15,6 +15,7 @@ def purge; end
def charset; end
def collation; end
def structure_dump(*); end
def structure_load(*); end
end.new
)

Expand Down Expand Up @@ -119,8 +120,9 @@ class DatabaseTasksCreateTest < ActiveRecord::TestCase
ADAPTERS_TASKS.each do |k, v|
define_method("test_#{k}_create") do
with_stubbed_new do
eval("@#{v}").expects(:create)
ActiveRecord::Tasks::DatabaseTasks.create "adapter" => k
assert_called(eval("@#{v}"), :create) do
ActiveRecord::Tasks::DatabaseTasks.create "adapter" => k
end
end
end
end
Expand Down Expand Up @@ -407,11 +409,15 @@ def test_creates_test_and_development_databases_when_rails_env_is_development

def test_establishes_connection_for_the_given_environments_config
ActiveRecord::Tasks::DatabaseTasks.stub(:create, nil) do
ActiveRecord::Base.expects(:establish_connection).with(:development)

ActiveRecord::Tasks::DatabaseTasks.create_current(
ActiveSupport::StringInquirer.new("development")
)
assert_called_with(
ActiveRecord::Base,
:establish_connection,
[:development]
) do
ActiveRecord::Tasks::DatabaseTasks.create_current(
ActiveSupport::StringInquirer.new("development")
)
end
end
end

Expand All @@ -432,8 +438,9 @@ class DatabaseTasksDropTest < ActiveRecord::TestCase
ADAPTERS_TASKS.each do |k, v|
define_method("test_#{k}_drop") do
with_stubbed_new do
eval("@#{v}").expects(:drop)
ActiveRecord::Tasks::DatabaseTasks.drop "adapter" => k
assert_called(eval("@#{v}"), :drop) do
ActiveRecord::Tasks::DatabaseTasks.drop "adapter" => k
end
end
end
end
Expand Down Expand Up @@ -812,8 +819,9 @@ class DatabaseTasksPurgeTest < ActiveRecord::TestCase
ADAPTERS_TASKS.each do |k, v|
define_method("test_#{k}_purge") do
with_stubbed_new do
eval("@#{v}").expects(:purge)
ActiveRecord::Tasks::DatabaseTasks.purge "adapter" => k
assert_called(eval("@#{v}"), :purge) do
ActiveRecord::Tasks::DatabaseTasks.purge "adapter" => k
end
end
end
end
Expand All @@ -827,11 +835,14 @@ def test_purges_current_environment_database
"production" => { "database" => "prod-db" }
}
ActiveRecord::Base.stub(:configurations, configurations) do
ActiveRecord::Tasks::DatabaseTasks.expects(:purge).
with("database" => "prod-db")

assert_called_with(ActiveRecord::Base, :establish_connection, [:production]) do
ActiveRecord::Tasks::DatabaseTasks.purge_current("production")
assert_called_with(
ActiveRecord::Tasks::DatabaseTasks,
:purge,
["database" => "prod-db"]
) do
assert_called_with(ActiveRecord::Base, :establish_connection, [:production]) do
ActiveRecord::Tasks::DatabaseTasks.purge_current("production")
end
end
end
end
Expand All @@ -841,10 +852,13 @@ class DatabaseTasksPurgeAllTest < ActiveRecord::TestCase
def test_purge_all_local_configurations
configurations = { development: { "database" => "my-db" } }
ActiveRecord::Base.stub(:configurations, configurations) do
ActiveRecord::Tasks::DatabaseTasks.expects(:purge).
with("database" => "my-db")

ActiveRecord::Tasks::DatabaseTasks.purge_all
assert_called_with(
ActiveRecord::Tasks::DatabaseTasks,
:purge,
["database" => "my-db"]
) do
ActiveRecord::Tasks::DatabaseTasks.purge_all
end
end
end
end
Expand All @@ -855,8 +869,9 @@ class DatabaseTasksCharsetTest < ActiveRecord::TestCase
ADAPTERS_TASKS.each do |k, v|
define_method("test_#{k}_charset") do
with_stubbed_new do
eval("@#{v}").expects(:charset)
ActiveRecord::Tasks::DatabaseTasks.charset "adapter" => k
assert_called(eval("@#{v}"), :charset) do
ActiveRecord::Tasks::DatabaseTasks.charset "adapter" => k
end
end
end
end
Expand All @@ -868,8 +883,9 @@ class DatabaseTasksCollationTest < ActiveRecord::TestCase
ADAPTERS_TASKS.each do |k, v|
define_method("test_#{k}_collation") do
with_stubbed_new do
eval("@#{v}").expects(:collation)
ActiveRecord::Tasks::DatabaseTasks.collation "adapter" => k
assert_called(eval("@#{v}"), :collation) do
ActiveRecord::Tasks::DatabaseTasks.collation "adapter" => k
end
end
end
end
Expand Down Expand Up @@ -983,8 +999,12 @@ class DatabaseTasksStructureDumpTest < ActiveRecord::TestCase
ADAPTERS_TASKS.each do |k, v|
define_method("test_#{k}_structure_dump") do
with_stubbed_new do
eval("@#{v}").expects(:structure_dump).with("awesome-file.sql", nil)
ActiveRecord::Tasks::DatabaseTasks.structure_dump({ "adapter" => k }, "awesome-file.sql")
assert_called_with(
eval("@#{v}"), :structure_dump,
["awesome-file.sql", nil]
) do
ActiveRecord::Tasks::DatabaseTasks.structure_dump({ "adapter" => k }, "awesome-file.sql")
end
end
end
end
Expand All @@ -996,8 +1016,13 @@ class DatabaseTasksStructureLoadTest < ActiveRecord::TestCase
ADAPTERS_TASKS.each do |k, v|
define_method("test_#{k}_structure_load") do
with_stubbed_new do
eval("@#{v}").expects(:structure_load).with("awesome-file.sql", nil)
ActiveRecord::Tasks::DatabaseTasks.structure_load({ "adapter" => k }, "awesome-file.sql")
assert_called_with(
eval("@#{v}"),
:structure_load,
["awesome-file.sql", nil]
) do
ActiveRecord::Tasks::DatabaseTasks.structure_load({ "adapter" => k }, "awesome-file.sql")
end
end
end
end
Expand Down
61 changes: 33 additions & 28 deletions activerecord/test/cases/tasks/mysql_rake_test.rb
Expand Up @@ -31,28 +31,29 @@ def test_establishes_connection_without_database

def test_creates_database_with_no_default_options
with_stubbed_connection_establish_connection do
@connection.expects(:create_database).
with("my-app-db", {})

ActiveRecord::Tasks::DatabaseTasks.create @configuration
assert_called_with(@connection, :create_database, ["my-app-db", {}]) do
ActiveRecord::Tasks::DatabaseTasks.create @configuration
end
end
end

def test_creates_database_with_given_encoding
with_stubbed_connection_establish_connection do
@connection.expects(:create_database).
with("my-app-db", charset: "latin1")

ActiveRecord::Tasks::DatabaseTasks.create @configuration.merge("encoding" => "latin1")
assert_called_with(@connection, :create_database, ["my-app-db", charset: "latin1"]) do
ActiveRecord::Tasks::DatabaseTasks.create @configuration.merge("encoding" => "latin1")
end
end
end

def test_creates_database_with_given_collation
with_stubbed_connection_establish_connection do
@connection.expects(:create_database).
with("my-app-db", collation: "latin1_swedish_ci")

ActiveRecord::Tasks::DatabaseTasks.create @configuration.merge("collation" => "latin1_swedish_ci")
assert_called_with(
@connection,
:create_database,
["my-app-db", collation: "latin1_swedish_ci"]
) do
ActiveRecord::Tasks::DatabaseTasks.create @configuration.merge("collation" => "latin1_swedish_ci")
end
end
end

Expand Down Expand Up @@ -149,9 +150,9 @@ def test_establishes_connection_to_mysql_database

def test_drops_database
with_stubbed_connection_establish_connection do
@connection.expects(:drop_database).with("my-app-db")

ActiveRecord::Tasks::DatabaseTasks.drop @configuration
assert_called_with(@connection, :drop_database, ["my-app-db"]) do
ActiveRecord::Tasks::DatabaseTasks.drop @configuration
end
end
end

Expand Down Expand Up @@ -193,20 +194,22 @@ def test_establishes_connection_to_the_appropriate_database

def test_recreates_database_with_no_default_options
with_stubbed_connection_establish_connection do
@connection.expects(:recreate_database).
with("test-db", {})

ActiveRecord::Tasks::DatabaseTasks.purge @configuration
assert_called_with(@connection, :recreate_database, ["test-db", {}]) do
ActiveRecord::Tasks::DatabaseTasks.purge @configuration
end
end
end

def test_recreates_database_with_the_given_options
with_stubbed_connection_establish_connection do
@connection.expects(:recreate_database).
with("test-db", charset: "latin", collation: "latin1_swedish_ci")

ActiveRecord::Tasks::DatabaseTasks.purge @configuration.merge(
"encoding" => "latin", "collation" => "latin1_swedish_ci")
assert_called_with(
@connection,
:recreate_database,
["test-db", charset: "latin", collation: "latin1_swedish_ci"]
) do
ActiveRecord::Tasks::DatabaseTasks.purge @configuration.merge(
"encoding" => "latin", "collation" => "latin1_swedish_ci")
end
end
end

Expand All @@ -232,8 +235,9 @@ def setup

def test_db_retrieves_charset
ActiveRecord::Base.stub(:connection, @connection) do
@connection.expects(:charset)
ActiveRecord::Tasks::DatabaseTasks.charset @configuration
assert_called(@connection, :charset) do
ActiveRecord::Tasks::DatabaseTasks.charset @configuration
end
end
end
end
Expand All @@ -249,8 +253,9 @@ def setup

def test_db_retrieves_collation
ActiveRecord::Base.stub(:connection, @connection) do
@connection.expects(:collation)
ActiveRecord::Tasks::DatabaseTasks.collation @configuration
assert_called_with(@connection, :collation) do
ActiveRecord::Tasks::DatabaseTasks.collation @configuration
end
end
end
end
Expand Down