cassie 1.0.0.alpha.9 → 1.0.0.alpha.10
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/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
|