#!/usr/bin/env perl

use strict;
use warnings;
use lib 'lib';

use Cpanel::JSON::XS;
use Gherkin::Parser;

my @file_list = @ARGV;

my $json = Cpanel::JSON::XS->new->utf8->space_before(0)->space_after(1)
  ->indent->canonical;

my $parser = Gherkin::Parser->new();

for my $file (@file_list) {
    my $base;
    $base = $json->encode( $parser->parse($file) );

    # JSON::XS uses a triple indent(?!)
    $base =~ s!^(\s+)!'  ' x ((length $1) / 3)!meg;
    print $base;
}
