Skip to content

Commit

Permalink
Add script for converting dump to json
Browse files Browse the repository at this point in the history
  • Loading branch information
kachick committed Mar 9, 2024
1 parent 2b655c5 commit 76dbc4a
Showing 1 changed file with 37 additions and 0 deletions.
37 changes: 37 additions & 0 deletions scripts/convert_snapshot_dump_to_json.rb
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
# coding: us-ascii
# frozen_string_literal: true

require('bundler/setup')
require_relative('../lib/ulid')
require_relative('../test/many_data/fixtures/example')

require('time')
require('json')

converter = Object.new

def converter.serialize_time(time)
time.iso8601(3)
end

def converter.deserialize_time(serialized)
Time.iso8601(serialized)
end

def converter.prepare(value)
case value
when Time
value.iso8601(3)
else
value
end
end

dump_data = File.binread("#{__dir__}/../test/many_data/fixtures/dumped_fixed_examples_2024-01-10_07-59.bin")
examples = Marshal.load(dump_data)
json_prepared = examples.map do |example|
example.to_h.except(:period).transform_values { |v| converter.prepare(v) }
end.sort_by { |e| e.fetch(:integer)}

puts JSON.pretty_generate(json_prepared)

0 comments on commit 76dbc4a

Please sign in to comment.