use strict;
use Test::More;
BEGIN { plan tests => 9 }
use Syntax::Highlight::Shell;
my $highlighter = new Syntax::Highlight::Shell;
my $expected = '';
## testing an empty string
is( $highlighter->parse(''), "<pre>\n</pre>\n" ); #01
## shebang (no end-of-line)
is( $highlighter->parse('#!/bin/sh'), <<'HTML' ); #02
<pre>
<span class="s-cmt">#!/bin/sh</span></pre>
HTML
## shebang
is( $highlighter->parse("#!/bin/sh\n"), <<'HTML' ); #03
<pre>
<span class="s-cmt">#!/bin/sh</span>
</pre>
HTML
## comment
is( $highlighter->parse("# a comment\n"), <<'HTML' ); #04
<pre>
<span class="s-cmt"># a comment</span>
</pre>
HTML
## keyword
is( $highlighter->parse('for'), <<'HTML' ); #05
<pre>
<span class="s-key">for</span></pre>
HTML
## builtin
is( $highlighter->parse('eval'), <<'HTML' ); #06
<pre>
<span class="s-blt">eval</span></pre>
HTML
## expanded variable
is( $highlighter->parse('$variable'), <<'HTML' ); #07
<pre>
<span class="s-var">$variable</span></pre>
HTML
## assigned variable
is( $highlighter->parse('variable_01=any_value'), <<'HTML' ); #08
<pre>
<span class="s-avr">variable_01</span>=<span class="s-val">any_value</span></pre>
HTML
## value between quotes
is( $highlighter->parse('"any kind of value"'), <<'HTML' ); #09
<pre>
<span class="s-quo">"</span><span class="s-val">any kind of value</span><span class="s-quo">"</span></pre>
HTML