goz 0.0.3 → 0.1.0

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.
@@ -1,42 +0,0 @@
1
- # encoding: utf-8
2
-
3
- require 'simplecov'
4
- SimpleCov.start
5
-
6
- require 'goz/cache/hash_store'
7
- require 'goz/test_case'
8
-
9
-
10
- class TestHashStoreCache < Goz::TestCase
11
-
12
- def setup
13
- super
14
- @cache = Goz::Cache::HashStore.new
15
- end
16
-
17
-
18
- def test_default_initialization
19
- assert_kind_of Goz::Cache::HashStore, @cache
20
- end
21
-
22
- def test_caching
23
- key, value = :foo, :bar
24
-
25
- assert_equal false, @cache.exist?(key)
26
- assert_equal false, @cache.delete(key)
27
-
28
- assert_equal value, @cache.write(key, value)
29
- assert_equal value, @cache.read(key)
30
- assert_equal true, @cache.exist?(key)
31
- assert_equal true, @cache.delete(key)
32
- assert_equal false, @cache.exist?(key)
33
- assert_equal nil, @cache.read(key)
34
-
35
- assert_equal value, @cache.write(key, value)
36
- assert_equal true, @cache.exist?(key)
37
- assert_equal true, @cache.clear
38
- assert_equal false, @cache.exist?(key)
39
- end
40
-
41
- end
42
-
data/test/test_logger.rb DELETED
@@ -1,93 +0,0 @@
1
- # encoding: utf-8
2
-
3
- require 'simplecov'
4
- SimpleCov.start
5
-
6
- require 'goz/logger'
7
- require 'goz/test_case'
8
- require 'logger'
9
- require 'stringio'
10
-
11
-
12
- class TestLogger < Goz::TestCase
13
-
14
- def setup
15
- super
16
-
17
- @s = StringIO.new
18
- @logger = Logger.new(@s)
19
- @tag = self.class.name
20
- end
21
-
22
-
23
- def test_default_initialization
24
- blockable = false
25
- logger = Goz::Logger.new(@tag) do |logger|
26
- assert_kind_of Goz::Logger, logger
27
- blockable = true
28
- end
29
- assert blockable, 'works as block'
30
- assert_kind_of Goz::Logger, logger
31
- assert_kind_of Goz::Logger, Goz::Logger.new(@tag)
32
- end
33
-
34
- def test_initialization
35
- blockable = false
36
- logger = Goz::Logger.new(@tag, @logger) do |logger|
37
- assert_kind_of Goz::Logger, logger
38
- blockable = true
39
- end
40
- assert blockable, 'works as block'
41
- assert_kind_of Goz::Logger, logger
42
- assert_kind_of Goz::Logger, Goz::Logger.new(@tag, @logger)
43
- end
44
-
45
- def test_default_instance
46
- blockable = false
47
- logger = Goz::Logger.instance(@tag) do |logger|
48
- assert_kind_of Goz::Logger, logger
49
- blockable = true
50
- end
51
- assert blockable, 'works as block'
52
- assert_kind_of Goz::Logger, logger
53
- assert_kind_of Goz::Logger, Goz::Logger.instance(@tag)
54
- assert_equal logger, Goz::Logger.instance(@tag)
55
- assert_not_equal logger, Goz::Logger.instance('foo')
56
- end
57
-
58
- def test_instance
59
- blockable = false
60
- logger = Goz::Logger.instance(@tag, @logger) do |logger|
61
- assert_kind_of Goz::Logger, logger
62
- blockable = true
63
- end
64
- assert blockable, 'works as block'
65
- assert_kind_of Goz::Logger, logger
66
- assert_kind_of Goz::Logger, Goz::Logger.instance(@tag, @logger)
67
- assert_equal logger, Goz::Logger.instance(@tag, @logger)
68
- assert_not_equal logger, Goz::Logger.instance('foo')
69
- end
70
-
71
- def test_logging_within_block
72
- [ :debug, :error, :fatal, :info, :warn ].each do |severity|
73
- Goz::Logger.new(@tag, @logger) do |logger|
74
- logger.send severity, "this is a #{ severity.to_s } message"
75
- @s.rewind
76
- rx = %r{^\d{4}\-\d{2}\-\d{2} \d{2}:\d{2}:\d{2} [+-]\d+ #{ severity.to_s.upcase } #{ @tag }: this is a #{ severity.to_s } message$}
77
- assert_match rx, @s.readlines.last.chomp
78
- end
79
- end
80
- end
81
-
82
- def test_logging_outside_of_block
83
- [ :debug, :error, :fatal, :info, :warn ].each do |severity|
84
- logger = Goz::Logger.new(@tag, @logger)
85
- logger.send severity, "this is a #{ severity.to_s } message"
86
- @s.rewind
87
- rx = %r{^\d{4}\-\d{2}\-\d{2} \d{2}:\d{2}:\d{2} [+-]\d+ #{ severity.to_s.upcase } #{ @tag }: this is a #{ severity.to_s } message$}
88
- assert_match rx, @s.readlines.join.chomp
89
- end
90
- end
91
-
92
- end
93
-
data/test/test_members.rb DELETED
@@ -1,189 +0,0 @@
1
- # encoding: utf-8
2
-
3
- require 'simplecov'
4
- SimpleCov.start
5
-
6
- require 'goz/group'
7
- require 'goz/test_case'
8
- require 'goz/user'
9
-
10
-
11
- class TestMembers < Goz::TestCase
12
-
13
- def setup
14
- super
15
-
16
- @u1 = Goz::User.create( :email => 'u1', :login => 'u1', :identifier => 'u1', :name => 'u1' )
17
- @u2 = Goz::User.create( :email => 'u2', :login => 'u2', :identifier => 'u2', :name => 'u2' )
18
- @g1 = Goz::Group.create( :display_name => 'g1', :identifier => 'g1', :name => 'g1' )
19
- @g2 = Goz::Group.create( :display_name => 'g2', :identifier => 'g2', :name => 'g2' )
20
- end
21
-
22
-
23
- def test_no_members_or_memberships
24
- Goz::Database.instance { |db| assert_equal 0, db[:members].count }
25
- [ @u1, @u2 ].each do |u|
26
- assert_not_nil u.memberships
27
- assert_kind_of Array, u.memberships
28
- assert_equal 0, u.memberships.size
29
- end
30
- [ @g1, @g2 ].each do |g|
31
- assert_not_nil g.members
32
- assert_kind_of Array, g.members
33
- assert_equal 0, g.members.size
34
- end
35
- Goz::Database.instance { |db| assert_equal 0, db[:members].count }
36
- end
37
-
38
- def test_add_member_to_group
39
- Goz::Database.instance { |db| assert_equal 0, db[:members].count }
40
- @g1.add_member(@u1)
41
- @g1.save
42
- assert_equal 1, @g1.members.size
43
- assert_equal 0, @g2.members.size
44
- assert_equal @u1, @g1.members.first
45
- assert_nil @g2.members.first
46
- assert_equal 1, @u1.memberships.size
47
- assert_equal 0, @u2.memberships.size
48
- assert_equal @g1, @u1.memberships.first
49
- assert_nil @u2.memberships.first
50
- Goz::Database.instance do |db|
51
- assert_equal 1, db[:members].count
52
- first = db[:members].first
53
- assert_equal @g1.id, first[:group_id]
54
- assert_equal @u1.id, first[:user_id]
55
- end
56
- end
57
-
58
- def test_add_membership_to_user
59
- Goz::Database.instance { |db| assert_equal 0, db[:members].count }
60
- @u1.add_membership(@g1)
61
- @u1.save
62
- assert_equal 1, @g1.members.size
63
- assert_equal 0, @g2.members.size
64
- assert_equal @u1, @g1.members.first
65
- assert_nil @g2.members.first
66
- assert_equal 1, @u1.memberships.size
67
- assert_equal 0, @u2.memberships.size
68
- assert_equal @g1, @u1.memberships.first
69
- assert_nil @u2.memberships.first
70
- Goz::Database.instance do |db|
71
- assert_equal 1, db[:members].count
72
- first = db[:members].first
73
- assert_equal @g1.id, first[:group_id]
74
- assert_equal @u1.id, first[:user_id]
75
- end
76
- end
77
-
78
- def test_remove_member_from_group
79
- Goz::Database.instance { |db| assert_equal 0, db[:members].count }
80
- @g1.add_member(@u1)
81
- @g1.add_member(@u2)
82
- @g1.save
83
- assert_equal 2, @g1.members.size
84
- assert_equal [ @u1, @u2 ], @g1.members
85
-
86
- @g1.remove_member(@u2)
87
- @g1.save
88
- assert_equal 1, @g1.members.size
89
- assert_equal [ @u1 ], @g1.members
90
-
91
- Goz::Database.instance do |db|
92
- assert_equal 1, db[:members].count
93
- first = db[:members].first
94
- assert_equal @g1.id, first[:group_id]
95
- assert_equal @u1.id, first[:user_id]
96
- end
97
- end
98
-
99
- def test_remove_membership_from_user
100
- Goz::Database.instance { |db| assert_equal 0, db[:members].count }
101
- @u1.add_membership(@g1)
102
- @u1.add_membership(@g2)
103
- @u1.save
104
- assert_equal 2, @u1.memberships.size
105
- assert_equal [ @g1, @g2 ], @u1.memberships
106
-
107
- @u1.remove_membership(@g2)
108
- @u1.save
109
- assert_equal 1, @u1.memberships.size
110
- assert_equal [ @g1 ], @u1.memberships
111
-
112
- Goz::Database.instance do |db|
113
- assert_equal 1, db[:members].count
114
- first = db[:members].first
115
- assert_equal @g1.id, first[:group_id]
116
- assert_equal @u1.id, first[:user_id]
117
- end
118
- end
119
-
120
- def test_add_duplicate_member_to_group
121
- Goz::Database.instance { |db| assert_equal 0, db[:members].count }
122
- @g1.add_member(@u1)
123
- @g1.save
124
- assert_equal 1, @g1.members.size
125
- assert_equal [ @u1 ], @g1.members
126
-
127
- assert_raise(Sequel::DatabaseError) { @g1.add_member(@u1) }
128
- assert_equal 1, @g1.members.size
129
- assert_equal [ @u1 ], @g1.members
130
-
131
- Goz::Database.instance do |db|
132
- assert_equal 1, db[:members].count
133
- first = db[:members].first
134
- assert_equal @g1.id, first[:group_id]
135
- assert_equal @u1.id, first[:user_id]
136
- end
137
- end
138
-
139
- def test_add_duplicate_membership_to_user
140
- Goz::Database.instance { |db| assert_equal 0, db[:members].count }
141
- @u1.add_membership(@g1)
142
- @u1.save
143
- assert_equal 1, @u1.memberships.size
144
- assert_equal [ @g1 ], @u1.memberships
145
-
146
- assert_raise(Sequel::DatabaseError) { @u1.add_membership(@g1) }
147
- assert_equal 1, @u1.memberships.size
148
- assert_equal [ @g1 ], @u1.memberships
149
-
150
- Goz::Database.instance do |db|
151
- assert_equal 1, db[:members].count
152
- first = db[:members].first
153
- assert_equal @g1.id, first[:group_id]
154
- assert_equal @u1.id, first[:user_id]
155
- end
156
- end
157
-
158
- def test_delete_group
159
- Goz::Database.instance { |db| assert_equal 0, db[:members].count }
160
- @g1.add_member(@u1)
161
- @g1.save
162
- assert_equal 1, @g1.members.size
163
- assert_equal [ @u1 ], @g1.members
164
-
165
- @g1.destroy
166
- assert_nil Goz::Group.find_by_name( @g1.name )
167
-
168
- Goz::Database.instance { |db| assert_equal 0, db[:members].count }
169
-
170
- assert_equal [], @u1.memberships
171
- end
172
-
173
- def test_delete_user
174
- Goz::Database.instance { |db| assert_equal 0, db[:members].count }
175
- @u1.add_membership(@g1)
176
- @u1.save
177
- assert_equal 1, @u1.memberships.size
178
- assert_equal [ @g1 ], @u1.memberships
179
-
180
- @u1.destroy
181
- assert_nil Goz::User.find_by_login( @u1.login )
182
-
183
- Goz::Database.instance { |db| assert_equal 0, db[:members].count }
184
-
185
- assert_equal [], @g1.members
186
- end
187
-
188
- end
189
-
data/test/test_service.rb DELETED
@@ -1,150 +0,0 @@
1
- # encoding: utf-8
2
-
3
- require 'simplecov'
4
- SimpleCov.start
5
-
6
- require 'goz/service'
7
- require 'goz/test_case'
8
-
9
-
10
- class TestService < Goz::TestCase
11
-
12
- def setup
13
- super
14
- end
15
-
16
-
17
- def test_no_services
18
- Goz::Database.instance { |db| assert_equal 0, db[:services].count }
19
- end
20
-
21
- def test_default_initialization
22
- blockable = false
23
- service = Goz::Service.new do |s|
24
- assert_kind_of Goz::Service, s
25
- assert_nil s.name
26
- assert_nil s.klass
27
- assert_nil s.created_at
28
- assert_nil s.modified_at
29
- assert_nil s.synchronized_at
30
- blockable = true
31
- end
32
- assert blockable, 'works as block'
33
- assert_kind_of Goz::Service, service
34
- assert_kind_of Goz::Service, Goz::Service.new
35
- assert_nil service.name
36
- assert_nil service.klass
37
- assert_nil service.created_at
38
- assert_nil service.modified_at
39
- assert_nil service.synchronized_at
40
- end
41
-
42
- def test_find_by_name_for_service_that_does_not_exist
43
- assert_nil Goz::Service.find_by_name( @services[:a][:name] )
44
- end
45
-
46
- def test_create_with_invalid_parameters
47
- assert_raise(RuntimeError, 'invalid name') { Goz::Service.create(nil) }
48
- assert_raise(RuntimeError, 'invalid name') {
49
- Goz::Service.create( :klass => @services[:a][:klass] )
50
- }
51
- assert_raise(RuntimeError, 'invalid name') {
52
- Goz::Service.create( :name => '',
53
- :klass => @services[:a][:klass]
54
- )
55
- }
56
- assert_raise(RuntimeError, 'invalid klass') {
57
- Goz::Service.create( :name => @services[:a][:name] )
58
- }
59
- assert_raise(RuntimeError, 'invalid klass') {
60
- Goz::Service.create( :name => @services[:a][:name],
61
- :klass => nil
62
- )
63
- }
64
- assert_raise(RuntimeError, 'invalid klass') {
65
- Goz::Service.create( :name => @services[:a][:name],
66
- :klass => ''
67
- )
68
- }
69
- end
70
-
71
- def test_create
72
- t = Time.now
73
- s = Goz::Service.create @services[:a]
74
- assert_not_nil s
75
- assert_kind_of Goz::Service, s
76
- assert_equal @services[:a][:name], s.name
77
- assert_equal @services[:a][:klass], s.klass
78
- assert_not_nil s.created_at
79
- assert s.created_at >= t
80
- end
81
-
82
- def test_update
83
- s = Goz::Service.create @services[:a]
84
- s.name = s.name.reverse
85
- s.save
86
-
87
- assert_not_nil s.modified_at
88
- assert_kind_of Time, s.modified_at
89
- assert s.modified_at > s.created_at
90
- assert_nil s.synchronized_at
91
- end
92
-
93
- def test_equality
94
- s1 = Goz::Service.create @services[:a]
95
- assert_not_nil s1
96
-
97
- s2 = Goz::Service.find_by_name( s1.name )
98
- assert_not_nil s2
99
- assert_equal s1, s2
100
-
101
- s3 = Goz::Service.create @services[:b]
102
-
103
- assert_not_nil s3
104
- assert_not_equal s1, s3
105
- assert_not_equal s2, s3
106
- end
107
-
108
- def test_find_by_name_and_persistence
109
- assert_nil Goz::Service.find_by_name @services[:a][:name]
110
-
111
- s1 = Goz::Service.create @services[:a]
112
- assert_not_nil s1
113
-
114
- s2 = Goz::Service.find_by_name s1.name
115
- assert_not_nil s2
116
- assert_kind_of Goz::Service, s2
117
- assert_equal s1, s2
118
- end
119
-
120
- def test_sync
121
- s = Goz::Service.create @services[:a]
122
- assert_nil s.synchronized_at
123
-
124
- t = Time.now
125
- assert s.sync
126
-
127
- assert_not_nil s.modified_at
128
- assert s.modified_at > t
129
- assert_not_nil s.synchronized_at
130
- assert s.synchronized_at > t
131
-
132
- t = Time.now
133
- assert !s.sync
134
-
135
- assert_not_nil s.modified_at
136
- assert s.modified_at < t
137
- assert_not_nil s.synchronized_at
138
- assert s.synchronized_at < t
139
-
140
- t = Time.now
141
- assert s.sync(true)
142
-
143
- assert_not_nil s.modified_at
144
- assert s.modified_at > t
145
- assert_not_nil s.synchronized_at
146
- assert s.synchronized_at > t
147
- end
148
-
149
- end
150
-