Sha256: 42a87fd13ef860b7b6e58983a949f7967368538f5a4a0951c1e3a2010d32483f
Contents?: true
Size: 1.01 KB
Versions: 4
Compression:
Stored size: 1.01 KB
Contents
class MockPGconn @@state = {} def MockPGconn.state @@state end def state @@state end def MockPGconn.connect(*args) @@state[:open] = true @@state[:openArgs] = args @@state[:connection] = MockPGconn.new end def set_client_encoding(encoding) @@state[:encoding] = encoding end def exec(statement) @@state[:statements] ||= [] @@state[:statements] << statement result = (state[:results] || []).shift raise result if result.kind_of?(Exception) result end def close raise "Already closed" unless @@state[:open] @@state[:open] = false raise @@state[:close_exception] if @@state[:close_exception] end end module SqlPostgres class Connection def Connection.mockPgClass oldPgClass = @@pgClass begin MockPGconn.state.clear @@pgClass = MockPGconn yield ensure @@pgClass = oldPgClass end end end end # Local Variables: # tab-width: 2 # ruby-indent-level: 2 # indent-tabs-mode: nil # End:
Version data entries
4 entries across 4 versions & 1 rubygems
Version | Path |
---|---|
sqlpostgres-1.3.0 | test/MockPGconn.rb |
sqlpostgres-1.2.6 | test/MockPGconn.rb |
sqlpostgres-1.2.5 | test/MockPGconn.rb |
sqlpostgres-1.2.4 | test/MockPGconn.rb |