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

chore(spanner): Update minitest to 5.14 #5654

Merged
merged 6 commits into from
Apr 22, 2020
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
4 changes: 0 additions & 4 deletions google-cloud-spanner/Gemfile
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,3 @@ gem "google-cloud-env", path: "../google-cloud-env"
gem "google-cloud-errors", path: "../google-cloud-errors"

gem "rake"

# Pin minitest to 5.11.x to avoid warnings emitted by 5.12.
# See https://github.com/googleapis/google-cloud-ruby/issues/4110
gem "minitest", "~> 5.11.3"
38 changes: 19 additions & 19 deletions google-cloud-spanner/acceptance/spanner/backup_operations_test.rb
Original file line number Diff line number Diff line change
Expand Up @@ -23,63 +23,63 @@

it "list backup operations" do
instance = spanner.instance instance_id
instance.wont_be :nil?
_(instance).wont_be :nil?

database = instance.database database_id
database.wont_be :nil?
_(database).wont_be :nil?

job = database.create_backup backup_id, expire_time
job.wait_until_done!

# All
jobs = instance.backup_operations.all.to_a
jobs.wont_be :empty?
_(jobs).wont_be :empty?

jobs.each do |job|
job.must_be_kind_of Google::Cloud::Spanner::Backup::Job
_(job).must_be_kind_of Google::Cloud::Spanner::Backup::Job

unless job.error?
job.backup.must_be_kind_of Google::Cloud::Spanner::Backup
_(job.backup).must_be_kind_of Google::Cloud::Spanner::Backup
end

job.progress_percent.must_be :>=, 0
job.start_time.must_be_kind_of Time
_(job.progress_percent).must_be :>=, 0
_(job.start_time).must_be_kind_of Time
end

job = jobs.first
job.reload!.must_be_kind_of Google::Cloud::Spanner::Backup::Job
_(job.reload!).must_be_kind_of Google::Cloud::Spanner::Backup::Job

# Filter completed jobs
filter = "done:true"
jobs = instance.backup_operations(filter: filter).all.to_a
jobs.wont_be :empty?
_(jobs).wont_be :empty?
jobs.each do |job|
job.must_be :done?
_(job).must_be :done?
end

# Filter by database name
filter = "metadata.database:#{database_id}"
jobs = instance.backup_operations(filter: filter).all.to_a
jobs.wont_be :empty?
_(jobs).wont_be :empty?
jobs.each do |job|
job.backup.database_id.must_equal database_id unless job.error?
_(job.backup.database_id).must_equal database_id unless job.error?
end

# Filter by metdata type
filter = "metadata.@type:CreateBackupMetadata"
jobs = instance.backup_operations(filter: filter).all.to_a
jobs.wont_be :empty?
_(jobs).wont_be :empty?
jobs.each do |job|
job.grpc.metadata.must_be_kind_of Google::Spanner::Admin::Database::V1::CreateBackupMetadata
_(job.grpc.metadata).must_be_kind_of Google::Spanner::Admin::Database::V1::CreateBackupMetadata
end

# Filter by job start time
time = (Time.now - 360000)
filter = "metadata.progress.start_time > \"#{time.iso8601}\""
jobs = instance.backup_operations(filter: filter).all.to_a
jobs.wont_be :empty?
_(jobs).wont_be :empty?
jobs.each do |job|
job.start_time.must_be :>, time
_(job.start_time).must_be :>, time
end

# Filer - AND
Expand All @@ -90,10 +90,10 @@
].map{|f| "(#{f})"}.join(" AND ")

jobs = instance.backup_operations(filter: filter).all.to_a
jobs.wont_be :empty?
_(jobs).wont_be :empty?
jobs.each do |job|
job.backup.database_id.must_equal database_id unless job.error?
job.start_time.must_be :>, time
_(job.backup.database_id).must_equal database_id unless job.error?
_(job.start_time).must_be :>, time
end
end
end
116 changes: 58 additions & 58 deletions google-cloud-spanner/acceptance/spanner/backup_test.rb
Original file line number Diff line number Diff line change
Expand Up @@ -23,110 +23,110 @@
it "creates, get, updates, restore and delete a database backup" do
backup_id = "#{$spanner_database_id}-crud"
database = spanner.database instance_id, database_id
database.wont_be :nil?
_(database).wont_be :nil?

# Create
job = database.create_backup backup_id, expire_time

job.must_be_kind_of Google::Cloud::Spanner::Backup::Job
job.wont_be :done?
_(job).must_be_kind_of Google::Cloud::Spanner::Backup::Job
_(job).wont_be :done?
job.wait_until_done!

job.must_be :done?
job.error.must_be :nil?
_(job).must_be :done?
_(job.error).must_be :nil?

backup = job.backup
backup.wont_be :nil?
backup.must_be_kind_of Google::Cloud::Spanner::Backup
backup.backup_id.must_equal backup_id
backup.database_id.must_equal database_id
backup.instance_id.must_equal instance_id
backup.project_id.must_equal spanner.project
backup.expire_time.to_i.must_equal expire_time.to_i
backup.create_time.must_be_kind_of Time
backup.size_in_bytes.must_be :>, 0
_(backup).wont_be :nil?
_(backup).must_be_kind_of Google::Cloud::Spanner::Backup
_(backup.backup_id).must_equal backup_id
_(backup.database_id).must_equal database_id
_(backup.instance_id).must_equal instance_id
_(backup.project_id).must_equal spanner.project
_(backup.expire_time.to_i).must_equal expire_time.to_i
_(backup.create_time).must_be_kind_of Time
_(backup.size_in_bytes).must_be :>, 0

# Get
instance = spanner.instance instance_id
backup = instance.backup backup_id

backup.wont_be :nil?
backup.must_be_kind_of Google::Cloud::Spanner::Backup
backup.backup_id.must_equal backup_id
backup.database_id.must_equal database_id
backup.instance_id.must_equal instance_id
backup.project_id.must_equal spanner.project
backup.expire_time.to_i.must_equal expire_time.to_i
backup.create_time.must_be_kind_of Time
backup.size_in_bytes.must_be :>, 0
_(backup).wont_be :nil?
_(backup).must_be_kind_of Google::Cloud::Spanner::Backup
_(backup.backup_id).must_equal backup_id
_(backup.database_id).must_equal database_id
_(backup.instance_id).must_equal instance_id
_(backup.project_id).must_equal spanner.project
_(backup.expire_time.to_i).must_equal expire_time.to_i
_(backup.create_time).must_be_kind_of Time
_(backup.size_in_bytes).must_be :>, 0

# Update
backup.expire_time = expire_time + 3600
backup = instance.backup backup_id
backup.expire_time.to_i.must_equal((expire_time + 3600).to_i)
_(backup.expire_time.to_i).must_equal((expire_time + 3600).to_i)

proc {
_ { proc {
backup.expire_time = Time.now - 36000
}.must_raise Google::Cloud::Error
backup.expire_time.to_i.must_equal((expire_time + 3600 ).to_i)
} }.must_raise Google::Cloud::Error
_(backup.expire_time.to_i).must_equal((expire_time + 3600 ).to_i)

# Restore
restore_database_id = "restore-#{database_id}"
backup = instance.backup backup_id
job = backup.restore restore_database_id
job.wont_be :done?
_(job).wont_be :done?

job.wait_until_done!

job.must_be :done?
job.wont_be :error?
_(job).must_be :done?
_(job).wont_be :error?

database = job.database
database.must_be_kind_of Google::Cloud::Spanner::Database
database.database_id.must_equal restore_database_id
database.instance_id.must_equal instance_id
database.project_id.must_equal spanner.project
_(database).must_be_kind_of Google::Cloud::Spanner::Database
_(database.database_id).must_equal restore_database_id
_(database.instance_id).must_equal instance_id
_(database.project_id).must_equal spanner.project

restore_info = database.restore_info
restore_info.must_be_kind_of Google::Cloud::Spanner::Database::RestoreInfo
restore_info.source_type.must_equal :BACKUP
restore_info.must_be :source_backup?
_(restore_info).must_be_kind_of Google::Cloud::Spanner::Database::RestoreInfo
_(restore_info.source_type).must_equal :BACKUP
_(restore_info).must_be :source_backup?

backup_info = restore_info.backup_info
backup_info.must_be_kind_of Google::Cloud::Spanner::Database::BackupInfo
backup_info.project_id.must_equal spanner.project
backup_info.instance_id.must_equal instance_id
backup_info.backup_id.must_equal backup_id
backup_info.source_database_project_id.must_equal spanner.project
backup_info.source_database_instance_id.must_equal instance_id
backup_info.source_database_id.must_equal database_id
backup_info.create_time.must_be_kind_of Time
_(backup_info).must_be_kind_of Google::Cloud::Spanner::Database::BackupInfo
_(backup_info.project_id).must_equal spanner.project
_(backup_info.instance_id).must_equal instance_id
_(backup_info.backup_id).must_equal backup_id
_(backup_info.source_database_project_id).must_equal spanner.project
_(backup_info.source_database_instance_id).must_equal instance_id
_(backup_info.source_database_id).must_equal database_id
_(backup_info.create_time).must_be_kind_of Time

# Delete
backup.delete
instance.backup(backup_id).must_be :nil?
_(instance.backup(backup_id)).must_be :nil?
end

it "cancel create backup operation" do
backup_id = "#{$spanner_database_id}-cancel"
database = spanner.database instance_id, database_id

job = database.create_backup backup_id, expire_time
job.wont_be :done?
_(job).wont_be :done?

job.cancel

job.reload!
job.must_be :done?
job.error.wont_be :nil?
job.error.code.must_equal 1
job.error.description.must_equal "CANCELLED"
_(job).must_be :done?
_(job.error).wont_be :nil?
_(job.error.code).must_equal 1
_(job.error.description).must_equal "CANCELLED"
end

it "lists and gets database backups" do
backup_id = "#{$spanner_database_id}-list"
database = spanner.database instance_id, database_id
database.wont_be :nil?
_(database).wont_be :nil?

job = database.create_backup backup_id, expire_time
job.wait_until_done!
Expand All @@ -136,20 +136,20 @@

# List all
all_backups = instance.backups.all.to_a
all_backups.wont_be :empty?
_(all_backups).wont_be :empty?
all_backups.each do |backup|
backup.must_be_kind_of Google::Cloud::Spanner::Backup
_(backup).must_be_kind_of Google::Cloud::Spanner::Backup
end

# Filter by backup name
backups = instance.backups(filter: "name:#{backup_id}").to_a
backups.length.must_equal 1
backups.first.backup_id.must_equal backup_id
_(backups.length).must_equal 1
_(backups.first.backup_id).must_equal backup_id

# Filter by database name
backups = instance.backups(filter: "database:#{database_id}").to_a
backups.wont_be :empty?
backups.first.database_id.must_equal database_id
_(backups).wont_be :empty?
_(backups.first.database_id).must_equal database_id

backup.delete
end
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -45,28 +45,28 @@
end

it "reads all by default" do
batch_snapshot.timestamp.must_be_kind_of Time
_(batch_snapshot.timestamp).must_be_kind_of Time
serialized_snapshot = batch_snapshot.dump

columns = [:id]
partitions = batch_snapshot.partition_read table_name, columns
partitions.each do |partition|
partition.read.partition_token.wont_be_nil
partition.read.columns.must_equal columns.map(&:to_s)
partition.read.table.must_equal "stuffs"
_(partition.read.partition_token).wont_be_nil
_(partition.read.columns).must_equal columns.map(&:to_s)
_(partition.read.table).must_equal "stuffs"

partition = batch_client.load_partition partition.dump

partition.read.partition_token.wont_be_nil
partition.read.columns.must_equal columns.map(&:to_s)
partition.read.table.must_equal "stuffs"
_(partition.read.partition_token).wont_be_nil
_(partition.read.columns).must_equal columns.map(&:to_s)
_(partition.read.table).must_equal "stuffs"

new_batch_snapshot = batch_client.load_batch_snapshot serialized_snapshot
new_batch_snapshot.timestamp.must_be_kind_of Time
_(new_batch_snapshot.timestamp).must_be_kind_of Time
results = new_batch_snapshot.execute_partition partition
results.must_be_kind_of Google::Cloud::Spanner::Results
_(results).must_be_kind_of Google::Cloud::Spanner::Results
unless results.fields.to_a.empty? # With so little data, just one partition should get the entire result set
results.rows.map(&:to_h).must_equal [{ id: 1 }, { id: 2 }, { id: 3 }, { id: 4 }, { id: 5 }, { id: 6 }, { id: 7 }, { id: 8 }, { id: 9 }, { id: 10 }, { id: 11 }, { id: 12 }]
_(results.rows.map(&:to_h)).must_equal [{ id: 1 }, { id: 2 }, { id: 3 }, { id: 4 }, { id: 5 }, { id: 6 }, { id: 7 }, { id: 8 }, { id: 9 }, { id: 10 }, { id: 11 }, { id: 12 }]
end
end
batch_snapshot.close
Expand All @@ -79,19 +79,19 @@
sql = "SELECT s.id, s.bool FROM stuffs AS s WHERE s.id = 2 AND s.bool = false"
partitions = batch_snapshot.partition_query sql
partitions.each do |partition|
partition.execute.partition_token.wont_be_nil
partition.execute.sql.must_equal sql
_(partition.execute.partition_token).wont_be_nil
_(partition.execute.sql).must_equal sql

partition = batch_client.load_partition partition.dump

partition.execute.partition_token.wont_be_nil
partition.execute.sql.must_equal sql
_(partition.execute.partition_token).wont_be_nil
_(partition.execute.sql).must_equal sql

new_batch_snapshot = batch_client.load_batch_snapshot serialized_snapshot
results = new_batch_snapshot.execute_partition partition
results.must_be_kind_of Google::Cloud::Spanner::Results
_(results).must_be_kind_of Google::Cloud::Spanner::Results
unless results.fields.to_a.empty? # With so little data, just one partition should get the entire result set
results.rows.map(&:to_h).must_equal [{:id=>2, :bool=>false}]
_(results.rows.map(&:to_h)).must_equal [{:id=>2, :bool=>false}]
end
end
batch_snapshot.close
Expand All @@ -105,19 +105,19 @@
query_options = { optimizer_version: "1" }
partitions = batch_snapshot.partition_query sql, query_options: query_options
partitions.each do |partition|
partition.execute.partition_token.wont_be_nil
partition.execute.sql.must_equal sql
_(partition.execute.partition_token).wont_be_nil
_(partition.execute.sql).must_equal sql

partition = batch_client.load_partition partition.dump

partition.execute.partition_token.wont_be_nil
partition.execute.sql.must_equal sql
_(partition.execute.partition_token).wont_be_nil
_(partition.execute.sql).must_equal sql

new_batch_snapshot = batch_client.load_batch_snapshot serialized_snapshot
results = new_batch_snapshot.execute_partition partition
results.must_be_kind_of Google::Cloud::Spanner::Results
_(results).must_be_kind_of Google::Cloud::Spanner::Results
unless results.fields.to_a.empty? # With so little data, just one partition should get the entire result set
results.rows.map(&:to_h).must_equal [{:id=>2, :bool=>false}]
_(results.rows.map(&:to_h)).must_equal [{:id=>2, :bool=>false}]
end
end
batch_snapshot.close
Expand Down