def test_string_escape(self):
        e = Expansion()
        e.appendstr('$var')
        self.assertEqual(e.to_source(), '$var')
        self.assertEqual(e.to_source(escape_variables=True), '$$var')

        e = Expansion()
        e.appendstr('foo')
        e.appendstr(' $bar')
        self.assertEqual(e.to_source(escape_variables=True), 'foo $$bar')
    def test_multiple_strings(self):
        e = Expansion()
        e.appendstr('hello')
        e.appendstr('world')

        self.assertEqual(e.to_source(), 'helloworld')
    def test_single_string(self):
        e = Expansion()
        e.appendstr('foo')

        self.assertEqual(e.to_source(), 'foo')