def test_generated_file_function(self): """ Test GeneratedFile behavior with functions. """ dest = self.tmppath("dest") data = { "num_calls": 0, } def content(): data["num_calls"] += 1 return b"content" f = GeneratedFile(content) self.assertEqual(data["num_calls"], 0) f.copy(dest) self.assertEqual(data["num_calls"], 1) self.assertEqual(b"content", open(dest, "rb").read()) self.assertEqual(b"content", f.open().read()) self.assertEqual(b"content", f.read()) self.assertEqual(len(b"content"), f.size()) self.assertEqual(data["num_calls"], 1) f.content = b"modified" f.copy(dest) self.assertEqual(data["num_calls"], 1) self.assertEqual(b"modified", open(dest, "rb").read()) self.assertEqual(b"modified", f.open().read()) self.assertEqual(b"modified", f.read()) self.assertEqual(len(b"modified"), f.size()) f.content = content self.assertEqual(data["num_calls"], 1) self.assertEqual(b"content", f.read()) self.assertEqual(data["num_calls"], 2)
def test_generated_file_function(self): ''' Test GeneratedFile behavior with functions. ''' dest = self.tmppath('dest') data = { 'num_calls': 0, } def content(): data['num_calls'] += 1 return b'content' f = GeneratedFile(content) self.assertEqual(data['num_calls'], 0) f.copy(dest) self.assertEqual(data['num_calls'], 1) self.assertEqual(b'content', open(dest, 'rb').read()) self.assertEqual(b'content', f.open().read()) self.assertEqual(b'content', f.read()) self.assertEqual(len(b'content'), f.size()) self.assertEqual(data['num_calls'], 1) f.content = b'modified' f.copy(dest) self.assertEqual(data['num_calls'], 1) self.assertEqual(b'modified', open(dest, 'rb').read()) self.assertEqual(b'modified', f.open().read()) self.assertEqual(b'modified', f.read()) self.assertEqual(len(b'modified'), f.size()) f.content = content self.assertEqual(data['num_calls'], 1) self.assertEqual(b'content', f.read()) self.assertEqual(data['num_calls'], 2)
def test_generated_file_open(self): """ Test whether GeneratedFile.open returns an appropriately reset file object. """ content = b"".join(samples) f = GeneratedFile(content) self.assertEqual(content[:42], f.open().read(42)) self.assertEqual(content, f.open().read())
def test_generated_file_open(self): ''' Test whether GeneratedFile.open returns an appropriately reset file object. ''' content = ''.join(samples) f = GeneratedFile(content) self.assertEqual(content[:42], f.open().read(42)) self.assertEqual(content, f.open().read())
def test_minified_verify_failure(self): orig_f = GeneratedFile('\n'.join(self.orig_lines)) min_f = MinifiedJavaScript(orig_f, verify_command=self._verify_command('1')) mini_lines = min_f.open().readlines() self.assertEqual(mini_lines, orig_f.open().readlines())
def test_minified_verify_failure(self): orig_f = GeneratedFile('\n'.join(self.orig_lines)) errors.out = StringIO() min_f = MinifiedJavaScript(orig_f, verify_command=self._verify_command('1')) mini_lines = min_f.open().readlines() output = errors.out.getvalue() errors.out = sys.stderr self.assertEqual(output, 'Warning: JS minification verification failed for <unknown>:\n' 'Warning: Error message\n') self.assertEqual(mini_lines, orig_f.open().readlines())