Class: Sanford::Protocol::FakeSocket
- Inherits:
-
Object
- Object
- Sanford::Protocol::FakeSocket
- Defined in:
- lib/sanford-protocol/fake_socket.rb
Class Method Summary collapse
- .with_encoded_msg_body(encoded_body, size = nil, encoded_version = nil) ⇒ Object
- .with_msg_body(body, size = nil, encoded_version = nil) ⇒ Object
- .with_request(*request_params) ⇒ Object
Instance Method Summary collapse
- #close ⇒ Object
- #close_write ⇒ Object
- #closed? ⇒ Boolean
- #in ⇒ Object
-
#initialize(*bytes) ⇒ FakeSocket
constructor
A new instance of FakeSocket.
- #out ⇒ Object
-
#recv(number_of_bytes, flags = nil) ⇒ Object
Socket methods – requied by Sanford::Protocol.
- #reset(*new_bytes) ⇒ Object
- #send(bytes, flag) ⇒ Object
- #write_stream_closed? ⇒ Boolean
Constructor Details
#initialize(*bytes) ⇒ FakeSocket
Returns a new instance of FakeSocket.
29 30 31 32 33 |
# File 'lib/sanford-protocol/fake_socket.rb', line 29 def initialize(*bytes) @out = StringIO.new @in = StringIO.new reset(*bytes) end |
Class Method Details
.with_encoded_msg_body(encoded_body, size = nil, encoded_version = nil) ⇒ Object
23 24 25 26 27 |
# File 'lib/sanford-protocol/fake_socket.rb', line 23 def self.with_encoded_msg_body(encoded_body, size = nil, encoded_version = nil) encoded_size = Sanford::Protocol.msg_size.encode(size || encoded_body.bytesize) encoded_version ||= Sanford::Protocol.msg_version self.new(encoded_version, encoded_size, encoded_body) end |
.with_msg_body(body, size = nil, encoded_version = nil) ⇒ Object
18 19 20 21 |
# File 'lib/sanford-protocol/fake_socket.rb', line 18 def self.with_msg_body(body, size = nil, encoded_version = nil) encoded_body = Sanford::Protocol.msg_body.encode(body) self.with_encoded_msg_body(encoded_body, size, encoded_version) end |
Instance Method Details
#close ⇒ Object
52 53 54 |
# File 'lib/sanford-protocol/fake_socket.rb', line 52 def close @closed = true end |
#close_write ⇒ Object
60 61 62 |
# File 'lib/sanford-protocol/fake_socket.rb', line 60 def close_write @write_stream_closed = true end |
#closed? ⇒ Boolean
56 57 58 |
# File 'lib/sanford-protocol/fake_socket.rb', line 56 def closed? !!@closed end |
#in ⇒ Object
39 |
# File 'lib/sanford-protocol/fake_socket.rb', line 39 def in; @in.string; end |
#out ⇒ Object
40 |
# File 'lib/sanford-protocol/fake_socket.rb', line 40 def out; @out.string; end |
#recv(number_of_bytes, flags = nil) ⇒ Object
Socket methods – requied by Sanford::Protocol
44 45 46 |
# File 'lib/sanford-protocol/fake_socket.rb', line 44 def recv(number_of_bytes, flags = nil) @in.read(number_of_bytes.to_i) || "" end |
#reset(*new_bytes) ⇒ Object
35 36 37 |
# File 'lib/sanford-protocol/fake_socket.rb', line 35 def reset(*new_bytes) @in << new_bytes.join; @in.rewind; end |
#send(bytes, flag) ⇒ Object
48 49 50 |
# File 'lib/sanford-protocol/fake_socket.rb', line 48 def send(bytes, flag) @out << bytes end |
#write_stream_closed? ⇒ Boolean
64 65 66 |
# File 'lib/sanford-protocol/fake_socket.rb', line 64 def write_stream_closed? !!@write_stream_closed end |