def test_var_foo_bar_with_otherdata(self): var = VarLoader().parse_variables('//${foo}[$]${bar}$$', DUMMY_WHERE) self.assertEqual(var, Var.join(['//', Var('foo'), '[$]', Var('bar'), '$$'])) self.assertEqual(str(var), '//${foo}[$]${bar}$$') self.assertEqual(var.format(foo='ABC', bar='DEF'), '//ABC[$]DEF$$')
def test_var_foo_bar(self): var = VarLoader().parse_variables('${foo}${bar}', DUMMY_WHERE) self.assertEqual( var, Var.join([Var('foo'), Var('bar')])) self.assertEqual( str(var), '${foo}${bar}') self.assertEqual( var.format(foo='ABC', **{'bar': 'DEF'}), 'ABCDEF')
def test_var_neg2_end(self): var = VarLoader().parse_variables('${foo:1:-2}', DUMMY_WHERE) self.assertEqual( var, Var('foo', start=1, length=-2)) self.assertEqual( str(var), '${foo:1:-2}') self.assertEqual( var.format(foo='ABCDEF'), 'BCD')
def test_var_endmiddle(self): var = VarLoader().parse_variables('${foo:-3:2}', DUMMY_WHERE) self.assertEqual( var, Var('foo', start=-3, length=2)) self.assertEqual( str(var), '${foo:-3:2}') self.assertEqual( var.format(foo='ABCDEF'), 'DE')
def test_var_begin(self): var = VarLoader().parse_variables('${foo:0:2}', DUMMY_WHERE) self.assertEqual( var, Var('foo', start=0, length=2)) self.assertEqual( str(var), '${foo:0:2}') self.assertEqual( var.format(foo='ABCDEF'), 'AB')
def test_var_offset(self): var = VarLoader().parse_variables('${foo:2}', DUMMY_WHERE) self.assertEqual( var, Var('foo', start=2)) self.assertEqual( str(var), '${foo:2}') self.assertEqual( var.format(foo='ABCDEF'), 'CDEF')
def test_joined_var_in_var(self): var = VarLoader().parse_variables('${${a}a${c}}', DUMMY_WHERE) self.assertEqual( var, Var(Var.join([Var('a'), 'a', Var('c')]))) self.assertEqual( str(var), '${${a}a${c}}') self.assertEqual( var.format(a='b', c='r', bar='DEF'), 'DEF')
def test_simple_var_in_var(self): var = VarLoader().parse_variables('${${foo}}', DUMMY_WHERE) self.assertEqual( var, Var(Var('foo'))) self.assertEqual( str(var), '${${foo}}') self.assertEqual( var.format(foo='bar', bar='DEF'), 'DEF')
def test_var_foo_bar_with_otherdata(self): var = VarLoader().parse_variables('//${foo}[$]${bar}$$', DUMMY_WHERE) self.assertEqual( var, Var.join(['//', Var('foo'), '[$]', Var('bar'), '$$'])) self.assertEqual( str(var), '//${foo}[$]${bar}$$') self.assertEqual( var.format(foo='ABC', bar='DEF'), '//ABC[$]DEF$$')
def test_var_foo(self): var = VarLoader().parse_variables('${foo}', DUMMY_WHERE) self.assertEqual( var, Var('foo')) self.assertEqual( str(var), '${foo}') self.assertEqual( var.format(foo='ABC'), 'ABC')
def test_var_offset(self): var = VarLoader().parse_variables('${foo:2}', DUMMY_WHERE) self.assertEqual(var, Var('foo', start=2)) self.assertEqual(str(var), '${foo:2}') self.assertEqual(var.format(foo='ABCDEF'), 'CDEF')
def test_var_begin(self): var = VarLoader().parse_variables('${foo:0:2}', DUMMY_WHERE) self.assertEqual(var, Var('foo', start=0, length=2)) self.assertEqual(str(var), '${foo:0:2}') self.assertEqual(var.format(foo='ABCDEF'), 'AB')
def test_joined_var_in_var(self): var = VarLoader().parse_variables('${${a}a${c}}', DUMMY_WHERE) self.assertEqual(var, Var(Var.join([Var('a'), 'a', Var('c')]))) self.assertEqual(str(var), '${${a}a${c}}') self.assertEqual(var.format(a='b', c='r', bar='DEF'), 'DEF')
def test_simple_var_in_var(self): var = VarLoader().parse_variables('${${foo}}', DUMMY_WHERE) self.assertEqual(var, Var(Var('foo'))) self.assertEqual(str(var), '${${foo}}') self.assertEqual(var.format(foo='bar', bar='DEF'), 'DEF')
def test_var_foo_bar(self): var = VarLoader().parse_variables('${foo}${bar}', DUMMY_WHERE) self.assertEqual(var, Var.join([Var('foo'), Var('bar')])) self.assertEqual(str(var), '${foo}${bar}') self.assertEqual(var.format(foo='ABC', **{'bar': 'DEF'}), 'ABCDEF')
def test_var_neg2_end(self): var = VarLoader().parse_variables('${foo:1:-2}', DUMMY_WHERE) self.assertEqual(var, Var('foo', start=1, length=-2)) self.assertEqual(str(var), '${foo:1:-2}') self.assertEqual(var.format(foo='ABCDEF'), 'BCD')
def test_var_endmiddle(self): var = VarLoader().parse_variables('${foo:-3:2}', DUMMY_WHERE) self.assertEqual(var, Var('foo', start=-3, length=2)) self.assertEqual(str(var), '${foo:-3:2}') self.assertEqual(var.format(foo='ABCDEF'), 'DE')
def test_var_foo(self): var = VarLoader().parse_variables('${foo}', DUMMY_WHERE) self.assertEqual(var, Var('foo')) self.assertEqual(str(var), '${foo}') self.assertEqual(var.format(foo='ABC'), 'ABC')