Lines Matching full:do
44 describe Dsl do
45 it 'can be included in new classes' do
51 describe GenericService do
52 context '#underscore' do
53 it 'should convert CamelCase to underscore separated' do
61 describe 'including it' do
62 it 'adds a class method, rpc' do
63 c = Class.new do
69 it 'adds rpc descs using the added class method, #rpc' do
70 c = Class.new do
79 it 'give subclasses access to #rpc_descs' do
80 base = Class.new do
84 c = Class.new(base) do
90 it 'adds a default service name' do
91 c = Class.new do
97 it 'adds a default service name to subclasses' do
98 base = Class.new do
101 c = Class.new(base) do
106 it 'adds the specified service name' do
107 c = Class.new do
114 it 'adds the specified service name to subclasses' do
115 base = Class.new do
119 c = Class.new(base) do
125 describe '#include' do
126 it 'raises if #rpc is missing an arg' do
127 blk = proc do
128 Class.new do
135 blk = proc do
136 Class.new do
144 describe 'when #rpc args are incorrect' do
145 it 'raises if an arg does not have the marshal or unmarshal methods' do
146 blk = proc do
147 Class.new do
155 it 'raises if a type arg only has the marshal method' do
163 blk = proc do
164 Class.new do
172 it 'raises if a type arg only has the unmarshal method' do
179 blk = proc do
180 Class.new do
189 it 'is ok for services that expect the default {un,}marshal methods' do
190 blk = proc do
191 Class.new do
199 it 'is ok for services that override the default {un,}marshal methods' do
200 blk = proc do
201 Class.new do
212 describe '#rpc_stub_class' do
213 it 'generates a client class that defines any of the rpc methods' do
214 s = Class.new do
228 describe 'the generated instances' do
229 it 'can be instanciated with just a hostname and credentials' do
230 s = Class.new do
238 blk = proc do
244 it 'has the methods defined in the service' do
245 s = Class.new do