goz 0.0.3 → 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
data/test/test_user.rb DELETED
@@ -1,205 +0,0 @@
1
- # encoding: utf-8
2
-
3
- require 'simplecov'
4
- SimpleCov.start
5
-
6
- require 'goz/test_case'
7
- require 'goz/user'
8
-
9
-
10
- class TestUser < Goz::TestCase
11
-
12
- def setup
13
- super
14
-
15
- @email = 'foo@example.org' # XXX
16
- @login = 'foo' # XXX
17
- @identifier = 'd3b07384d113edec49eaa6238ad5ff00' # XXX
18
- @name = 'Foo User' # XXX
19
- end
20
-
21
-
22
- def test_default_initialization
23
- blockable = false
24
- user = Goz::User.new do |user|
25
- assert_kind_of Goz::User, user
26
- assert_nil user.email
27
- assert_nil user.login
28
- assert_nil user.identifier
29
- assert_nil user.name
30
- assert_nil user.created_at
31
- assert_nil user.modified_at
32
- assert_nil user.modified_at
33
- blockable = true
34
- end
35
- assert blockable, 'works as block'
36
- assert_kind_of Goz::User, user
37
- assert_kind_of Goz::User, Goz::User.new
38
- assert_nil user.email
39
- assert_nil user.login
40
- assert_nil user.identifier
41
- assert_nil user.name
42
- assert_nil user.created_at
43
- assert_nil user.modified_at
44
- assert_nil user.modified_at
45
- end
46
-
47
- def test_find_by_login_for_user_that_does_not_exist
48
- assert_nil Goz::User.find_by_login @users[:a][:login]
49
- end
50
-
51
- def test_create_with_invalid_parameters
52
- assert_raise(RuntimeError, 'invalid email') { Goz::User.create(nil) }
53
- assert_raise(RuntimeError, 'invalid email') {
54
- Goz::User.create( :identifier => @identifier,
55
- :login => @login,
56
- :name => @name
57
- )
58
- }
59
- assert_raise(RuntimeError, 'invalid email') {
60
- Goz::User.create( :email => '',
61
- :identifier => @identifier,
62
- :login => @login,
63
- :name => @name
64
- )
65
- }
66
- assert_raise(RuntimeError, 'invalid identifier') {
67
- Goz::User.create( :email => @email,
68
- :login => @login,
69
- :name => @name
70
- )
71
- }
72
- assert_raise(RuntimeError, 'invalid identifier') {
73
- Goz::User.create( :email => @email,
74
- :identifier => '',
75
- :login => @login,
76
- :name => @name
77
- )
78
- }
79
- assert_raise(RuntimeError, 'invalid login') {
80
- Goz::User.create( :email => @email,
81
- :identifier => @identifier,
82
- :name => @name
83
- )
84
- }
85
- assert_raise(RuntimeError, 'invalid login') {
86
- Goz::User.create( :email => @email,
87
- :identifier => @identifier,
88
- :login => '',
89
- :name => @name
90
- )
91
- }
92
- assert_raise(RuntimeError, 'invalid name') {
93
- Goz::User.create( :email => @email,
94
- :identifier => @identifier,
95
- :login => @login
96
- )
97
- }
98
- assert_raise(RuntimeError, 'invalid name') {
99
- Goz::User.create( :email => @email,
100
- :identifier => @identifier,
101
- :login => @login,
102
- :name => ''
103
- )
104
- }
105
- end
106
-
107
- def test_create
108
- t = Time.now
109
- u = Goz::User.create( :email => @email,
110
- :identifier => @identifier,
111
- :login => @login,
112
- :name => @name
113
- )
114
- assert_not_nil u
115
- assert_kind_of Goz::User, u
116
- assert_equal @email, u.email
117
- assert_equal @identifier, u.identifier
118
- assert_equal @login, u.login
119
- assert_equal @name, u.name
120
- assert_not_nil u.created_at
121
- assert u.created_at >= t
122
- end
123
-
124
- def test_update
125
- u = Goz::User.create( :email => @email,
126
- :identifier => @identifier,
127
- :login => @login,
128
- :name => @name
129
- )
130
- u.name = u.name.reverse
131
- u.save
132
-
133
- assert_not_nil u.modified_at
134
- assert_kind_of Time, u.modified_at
135
- assert u.modified_at > u.created_at
136
-
137
- assert_nil u.synchronized_at
138
- end
139
-
140
- def test_equality
141
- u1 = Goz::User.create( :email => @email,
142
- :identifier => @identifier,
143
- :login => @login,
144
- :name => @name
145
- )
146
- assert_not_nil u1
147
-
148
- u2 = Goz::User.find_by_login( u1.login )
149
- assert_not_nil u2
150
- assert_equal u1, u2
151
-
152
- u3 = Goz::User.create( :email => @email.reverse,
153
- :identifier => @identifier.reverse,
154
- :login => @login.reverse,
155
- :name => @name.reverse
156
- )
157
- assert_not_nil u3
158
- assert_not_equal u1, u3
159
- assert_not_equal u2, u3
160
- end
161
-
162
- def test_find_by_login_and_persistence
163
- u1 = Goz::User.find_by_login(@login)
164
- assert_nil u1
165
-
166
- u1 = Goz::User.create( :email => @email,
167
- :identifier => @identifier,
168
- :login => @login,
169
- :name => @name
170
- )
171
-
172
- u2 = Goz::User.find_by_login(@login)
173
- assert_not_nil u2
174
- assert_kind_of Goz::User, u2
175
- assert_equal u1, u2
176
- end
177
-
178
- def test_sync
179
- u = Goz::User.create @users[:a]
180
- assert_nil u.synchronized_at
181
-
182
- t = Time.now
183
- assert u.sync
184
- assert_not_nil u.modified_at
185
- assert u.modified_at.to_f > t.to_f
186
- assert_not_nil u.synchronized_at
187
- assert u.synchronized_at.to_f > t.to_f
188
-
189
- t = Time.now
190
- assert !u.sync
191
- assert_not_nil u.modified_at
192
- assert u.modified_at.to_f < t.to_f
193
- assert_not_nil u.synchronized_at
194
- assert u.synchronized_at.to_f < t.to_f
195
-
196
- t = Time.now
197
- assert u.sync(true)
198
- assert_not_nil u.modified_at
199
- assert u.modified_at.to_f > t.to_f
200
- assert_not_nil u.synchronized_at
201
- assert u.synchronized_at.to_f > t.to_f
202
- end
203
-
204
- end
205
-