Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/gitlab-org/gitlab-foss.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorYorick Peterse <yorickpeterse@gmail.com>2015-11-19 14:33:58 +0300
committerYorick Peterse <yorickpeterse@gmail.com>2015-11-24 12:57:21 +0300
commit97f8c6279fc39c4bad87bb880eba04802f6d351d (patch)
treeef1eac455f8529ae4e35f3b286e225e556f148ee /spec/lib/gitlab/sherlock
parent31a34b591731eb8997da4844287d7c31e3686454 (diff)
Added total query time to Sherlock
This makes it easier to see if a problem is caused by slow queries or slow Ruby code (unrelated to any SQL queries that might be used).
Diffstat (limited to 'spec/lib/gitlab/sherlock')
-rw-r--r--spec/lib/gitlab/sherlock/transaction_spec.rb13
1 files changed, 13 insertions, 0 deletions
diff --git a/spec/lib/gitlab/sherlock/transaction_spec.rb b/spec/lib/gitlab/sherlock/transaction_spec.rb
index bb49fb65cf8..fb80c62c794 100644
--- a/spec/lib/gitlab/sherlock/transaction_spec.rb
+++ b/spec/lib/gitlab/sherlock/transaction_spec.rb
@@ -84,6 +84,19 @@ describe Gitlab::Sherlock::Transaction do
end
end
+ describe '#query_duration' do
+ it 'returns the total query duration in seconds' do
+ time = Time.now
+ query1 = Gitlab::Sherlock::Query.new('SELECT 1', time, time + 5)
+ query2 = Gitlab::Sherlock::Query.new('SELECT 2', time, time + 2)
+
+ transaction.queries << query1
+ transaction.queries << query2
+
+ expect(transaction.query_duration).to be_within(0.1).of(7.0)
+ end
+ end
+
describe '#to_param' do
it 'returns the transaction ID' do
expect(transaction.to_param).to eq(transaction.id)