Sha256: 7936e12b72a0c32f798da0b98f4cd5cce6034639b22c9348e699ed94d9cb3a4b
Contents?: true
Size: 821 Bytes
Versions: 3
Compression:
Stored size: 821 Bytes
Contents
module TCR class Cassette attr_reader :name def initialize(name) @name = name if File.exists?(filename) @recording = false @contents = File.open(filename) { |f| f.read } @sessions = JSON.parse(@contents) else @recording = true @sessions = [] end end def recording? @recording end def next_session session = @sessions.shift raise NoMoreSessionsError unless session session end def append(session) raise "Can't append session unless recording" unless recording? @sessions << session File.open(filename, "w") { |f| f.write(JSON.pretty_generate(@sessions)) } end protected def filename "#{TCR.configuration.cassette_library_dir}/#{name}.json" end end end
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
tcr-0.0.4 | lib/tcr/cassette.rb |
tcr-0.0.3 | lib/tcr/cassette.rb |
tcr-0.0.2 | lib/tcr/cassette.rb |