Thursday, June 04, 2026 1:47:58 AM
> test_to_istruct.rb
# frozen_string_literal: true

require "test_helper"

class TestStringToIstruct < Minitest::Test
  def setup
    @input = {
      a: {
        b: [
          {c: 1},
          {d: 2}.to_json
        ]
      }
    }.to_json

    @output = @input.to_istruct
  end

  def test_it_parses_json_shallow_and_converts
    assert_kind_of(String, @input)
    assert_kind_of(Data, @output)

    assert_kind_of(Data, @output.a.b[0])
    assert_equal(1, @output.a.b[0].c)
    assert_kind_of(String, @output.a.b[1])
  end

  def test_it_returns_nil_invalid_json
    assert_nil("invalid_json".to_istruct)
  end
end
All opinions represented herein are my own
- © 2024 - 2026 itsthedevman
- build 4294fb2