It should print the basic cases with dot access {{ x }} {{ x.y }} {{ x.y.z }} {{ x.y }} {{ x.y.z }} {{ x.y.z }} {{ x.y.z }} It should support empty? {{ x.y.empty? }} It should support recursive lookups {{ x.y[z] }} {{ x.y[(0..z)] }} It should convert dash-properties to string access {{ x['about-us'].contents }} It should support number access {{ x.y[0] }} It should index access strings with spaces {{ x.y['hello world'] }} It should index access strings starting with numbers {{ x.y['20back'] }} It should respect singleQuote liquidSingleQuote: false {{ x.y["hello world"] }} It should keep double quotes if single quotes are in the string {{ x.y["string o' strings"] }} It should support spaces inside braces {{ x.y["string o' strings"] }} It should support spaces outside braces {{ x.y.z }} It should support spaces before the dot {{ x.y }} It should support spaces after the dot {{ x.y }} It should print global access variable lookups {{ [type] }} It should not convert the first global access string {{ ['product'] }}