bookie_accounting 1.1.3 → 1.2.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/Gemfile +1 -0
- data/lib/bookie/database.rb +15 -5
- data/lib/bookie/version.rb +1 -1
- data/spec/database_spec.rb +11 -0
- metadata +2 -2
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA1:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: f140628ce83250fabffabda656f8f66a73cb89dc
|
|
4
|
+
data.tar.gz: b0c4ed64a1adbd44986df8856eb9c01a2aa52b61
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: ca2c83c5150357c4cef54d129670c9ef93f530c4ec4846f333de7ea79b19a9cf88a377a69e1895459a40bffa1f254a26bab55a2684cb69e13301df3ee710ab88
|
|
7
|
+
data.tar.gz: 1ebafa8e77bf140b8942289b53bab7d9a6345250f2e2888c8ecceb417181f7eee7f6975d09bd5ce7744af940320f27ec8c3c39f55d826521a17377e484b5964c
|
data/Gemfile
CHANGED
data/lib/bookie/database.rb
CHANGED
|
@@ -87,7 +87,7 @@ module Bookie
|
|
|
87
87
|
def self.by_group_name(group_name)
|
|
88
88
|
group = Group.find_by_name(group_name)
|
|
89
89
|
return joins(:user).where('users.group_id = ?', group.id) if group
|
|
90
|
-
|
|
90
|
+
self.none
|
|
91
91
|
end
|
|
92
92
|
|
|
93
93
|
##
|
|
@@ -118,7 +118,7 @@ module Bookie
|
|
|
118
118
|
#Finds all jobs whose running intervals overlap the given time range
|
|
119
119
|
def self.by_time_range_inclusive(time_range)
|
|
120
120
|
if time_range.empty?
|
|
121
|
-
|
|
121
|
+
self.none
|
|
122
122
|
elsif time_range.exclude_end?
|
|
123
123
|
where('? <= jobs.end_time AND jobs.start_time < ?', time_range.first, time_range.last)
|
|
124
124
|
else
|
|
@@ -292,7 +292,7 @@ module Bookie
|
|
|
292
292
|
def self.by_group_name(name)
|
|
293
293
|
group = Group.find_by_name(name)
|
|
294
294
|
return by_group(group) if group
|
|
295
|
-
|
|
295
|
+
self.none
|
|
296
296
|
end
|
|
297
297
|
|
|
298
298
|
##
|
|
@@ -499,7 +499,7 @@ module Bookie
|
|
|
499
499
|
#A group of users
|
|
500
500
|
class Group < ActiveRecord::Base
|
|
501
501
|
has_many :users
|
|
502
|
-
|
|
502
|
+
|
|
503
503
|
##
|
|
504
504
|
#Finds a group by name, creating it if it doesn't exist
|
|
505
505
|
#
|
|
@@ -528,6 +528,16 @@ module Bookie
|
|
|
528
528
|
def self.by_name(name)
|
|
529
529
|
where('users.name = ?', name)
|
|
530
530
|
end
|
|
531
|
+
|
|
532
|
+
def self.by_group(group)
|
|
533
|
+
return where('users.group_id = ?', group.id)
|
|
534
|
+
end
|
|
535
|
+
|
|
536
|
+
def self.by_group_name(name)
|
|
537
|
+
group = Group.find_by_name(name)
|
|
538
|
+
return by_group(group) if group
|
|
539
|
+
self.none
|
|
540
|
+
end
|
|
531
541
|
|
|
532
542
|
##
|
|
533
543
|
#Finds a user by name and group, creating it if it doesn't exist
|
|
@@ -589,7 +599,7 @@ module Bookie
|
|
|
589
599
|
#To do: unit test.
|
|
590
600
|
def self.by_time_range_inclusive(time_range)
|
|
591
601
|
if time_range.empty?
|
|
592
|
-
|
|
602
|
+
self.none
|
|
593
603
|
elsif time_range.exclude_end?
|
|
594
604
|
where('(? <= systems.end_time OR systems.end_time IS NULL) AND systems.start_time < ?', time_range.first, time_range.last)
|
|
595
605
|
else
|
data/lib/bookie/version.rb
CHANGED
data/spec/database_spec.rb
CHANGED
|
@@ -424,6 +424,7 @@ describe Bookie::Database do
|
|
|
424
424
|
sums.each do |sum|
|
|
425
425
|
sum.user.group.name.should eql 'admin'
|
|
426
426
|
end
|
|
427
|
+
Bookie::Database::JobSummary.by_group_name('fake_group').count.should eql 0
|
|
427
428
|
end
|
|
428
429
|
|
|
429
430
|
it "correctly filters by system" do
|
|
@@ -693,6 +694,16 @@ describe Bookie::Database do
|
|
|
693
694
|
user.name.should eql 'test'
|
|
694
695
|
end
|
|
695
696
|
end
|
|
697
|
+
|
|
698
|
+
it "correctly filters by group" do
|
|
699
|
+
Bookie::Database::User.by_group(Bookie::Database::Group.find_by_name('admin')).count.should eql 2
|
|
700
|
+
Bookie::Database::User.by_group(Bookie::Database::Group.find_by_name('root')).count.should eql 1
|
|
701
|
+
end
|
|
702
|
+
|
|
703
|
+
it "correctly filters by group name" do
|
|
704
|
+
Bookie::Database::User.by_group_name('admin').count.should eql 2
|
|
705
|
+
Bookie::Database::User.by_group_name('fake_group').count.should eql 0
|
|
706
|
+
end
|
|
696
707
|
|
|
697
708
|
describe "#find_or_create" do
|
|
698
709
|
before(:each) do
|
metadata
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: bookie_accounting
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 1.
|
|
4
|
+
version: 1.2.3
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Ben Merritt
|
|
8
8
|
autorequire:
|
|
9
9
|
bindir: bin
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date: 2013-08-
|
|
11
|
+
date: 2013-08-10 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: activerecord
|