cassie 1.0.0.alpha.9 → 1.0.0.alpha.10
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/cassie/testing/fake/query.rb +6 -24
- data/lib/cassie/testing/fake/session_methods.rb +28 -0
- metadata +2 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: fec7a911c85e20f50813efaa558b5d0874d22f81
|
4
|
+
data.tar.gz: 9b96499ef12e8544d238af49185afdf38eb762e1
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 5940e76a95f2414c6268d474edea614199c4313e17d0902e3be82a16d4641e9fd2e94aa0cdb22d33825dffe7bf5e5f5ce13c70a159c8154e70c6bec944c3e1a8
|
7
|
+
data.tar.gz: 6a774ce27b9934ac5023b2abd081c88a3b737f92833328866fe3ea0ee3a45fac728ebc06e521e29f06fb9a8417bbc831dde021a72ace61d9475fb0a72308c828
|
@@ -1,28 +1,10 @@
|
|
1
|
-
require_relative '
|
1
|
+
require_relative 'session_methods'
|
2
2
|
|
3
|
-
module Cassie
|
4
|
-
module Query
|
5
|
-
|
6
|
-
return if extender.class === Class
|
7
|
-
|
8
|
-
# object has been extended (as opposed to class)
|
9
|
-
# memoize the fake session in metaclass for this object
|
10
|
-
# as we don't want to change behavior of _every_ object
|
11
|
-
# instantiated from the class, only _this_ object
|
12
|
-
extender.class.define_singleton_method(:session) do
|
13
|
-
@session ||= Session.new
|
14
|
-
end
|
15
|
-
|
16
|
-
# overwrite definition from extension
|
17
|
-
# to delegate to class definition to
|
18
|
-
# minimize difference from vanilla Query
|
19
|
-
def extender.session
|
20
|
-
self.class.session
|
21
|
-
end
|
22
|
-
end
|
3
|
+
module Cassie
|
4
|
+
module Testing::Fake::Query
|
5
|
+
end
|
23
6
|
|
24
|
-
|
25
|
-
|
26
|
-
end
|
7
|
+
class FakeQuery < Cassie::Query
|
8
|
+
extend Cassie::Testing::Fake::SessionMethods
|
27
9
|
end
|
28
10
|
end
|
@@ -0,0 +1,28 @@
|
|
1
|
+
require_relative 'session'
|
2
|
+
|
3
|
+
module Cassie::Testing::Fake
|
4
|
+
module SessionMethods
|
5
|
+
def self.extended(extender)
|
6
|
+
return if extender.class === Class
|
7
|
+
|
8
|
+
# object has been extended (as opposed to class)
|
9
|
+
# memoize the fake session in metaclass for this object
|
10
|
+
# as we don't want to change behavior of _every_ object
|
11
|
+
# instantiated from the class, only _this_ object
|
12
|
+
extender.class.define_singleton_method(:session) do
|
13
|
+
@session ||= Cassie::Testing::Fake::Session.new
|
14
|
+
end
|
15
|
+
|
16
|
+
# overwrite definition from extension
|
17
|
+
# to delegate to class definition to
|
18
|
+
# minimize difference from vanilla Query
|
19
|
+
def extender.session
|
20
|
+
self.class.session
|
21
|
+
end
|
22
|
+
end
|
23
|
+
|
24
|
+
def session
|
25
|
+
@session ||= Cassie::Testing::Fake::Session.new
|
26
|
+
end
|
27
|
+
end
|
28
|
+
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: cassie
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.0.0.alpha.
|
4
|
+
version: 1.0.0.alpha.10
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Evan Prothro
|
@@ -138,6 +138,7 @@ files:
|
|
138
138
|
- lib/cassie/testing/fake/query.rb
|
139
139
|
- lib/cassie/testing/fake/result.rb
|
140
140
|
- lib/cassie/testing/fake/session.rb
|
141
|
+
- lib/cassie/testing/fake/session_methods.rb
|
141
142
|
homepage: https://github.com/eprothro/cassie
|
142
143
|
licenses:
|
143
144
|
- MIT
|