goz 0.0.3 → 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -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
-