Add stdout_stream/1 supporting asciicast v1 files

ex-snapshot
Marcin Kulik 7 years ago
parent 719216f7c8
commit 3fb1018803

@ -106,6 +106,18 @@ defmodule Asciinema.Asciicasts do
PosterGenerator.generate(asciicast)
end
def stdout_stream(asciicast_file_path) do
asciicast =
asciicast_file_path
|> File.read!
|> Poison.decode!
1 = asciicast["version"]
asciicast
|> Map.get("stdout")
|> Enum.map(&List.to_tuple/1)
end
def stdout_stream(stdout_timing_path, stdout_data_path) do
Stream.resource(
fn -> open_stream_files(stdout_timing_path, stdout_data_path) end,

@ -109,6 +109,14 @@ defmodule Asciinema.AsciicastsTest do
end
end
describe "stdout_stream/1" do
test "with asciicast v1 file" do
stream = Asciicasts.stdout_stream("spec/fixtures/1/asciicast.json")
assert :ok == Stream.run(stream)
assert [{1.234567, "foo bar"}, {5.678987, "baz qux"}] == Enum.take(stream, 2)
end
end
describe "stdout_stream/2" do
test "with gzipped files" do
stream = Asciicasts.stdout_stream("spec/fixtures/0.9.9/stdout.time",

Loading…
Cancel
Save