def testCaching(self):
        m = mock_open()
        os.makedirs = MagicMock(return_value=True)
        with patch('__builtin__.open', mock_open(read_data='Source Template'), create=True) as m:
            t = Template(self.zp)
            t.dest_file = 'foo.py'
            t.tfile = 'foo.py.tmpl'
            t.cacheTemplate()

        # Write File Handle
        wfh = m.return_value.__enter__.return_value
        self.assertEqual(wfh.write.call_args_list, [call('## Source Template foo.py.tmpl \n'), call('Source Template')])