Index: third_party/twisted_8_1/twisted/test/test_sob.py |
diff --git a/third_party/twisted_8_1/twisted/test/test_sob.py b/third_party/twisted_8_1/twisted/test/test_sob.py |
deleted file mode 100644 |
index 62bd564047f5addf72e8ca35e297105c9881cdd5..0000000000000000000000000000000000000000 |
--- a/third_party/twisted_8_1/twisted/test/test_sob.py |
+++ /dev/null |
@@ -1,188 +0,0 @@ |
- |
-# Copyright (c) 2001-2004 Twisted Matrix Laboratories. |
-# See LICENSE for details. |
- |
- |
-# System Imports |
-from twisted.trial import unittest |
-from twisted.persisted import sob |
-from twisted.python import components |
-import sys, os |
- |
-try: |
- from twisted.web import microdom |
- gotMicrodom = True |
-except ImportError: |
- import warnings |
- warnings.warn("Not testing xml persistence as twisted.web.microdom " |
- "not available") |
- gotMicrodom = False |
- |
-class Dummy(components.Componentized): |
- pass |
- |
-objects = [ |
-1, |
-"hello", |
-(1, "hello"), |
-[1, "hello"], |
-{1:"hello"}, |
-] |
- |
-class FakeModule(object): |
- pass |
- |
-class PersistTestCase(unittest.TestCase): |
- def testStyles(self): |
- for o in objects: |
- p = sob.Persistent(o, '') |
- for style in 'xml source pickle'.split(): |
- if style == 'xml' and not gotMicrodom: |
- continue |
- p.setStyle(style) |
- p.save(filename='persisttest.'+style) |
- o1 = sob.load('persisttest.'+style, style) |
- self.failUnlessEqual(o, o1) |
- |
- def testStylesBeingSet(self): |
- o = Dummy() |
- o.foo = 5 |
- o.setComponent(sob.IPersistable, sob.Persistent(o, 'lala')) |
- for style in 'xml source pickle'.split(): |
- if style == 'xml' and not gotMicrodom: |
- continue |
- sob.IPersistable(o).setStyle(style) |
- sob.IPersistable(o).save(filename='lala.'+style) |
- o1 = sob.load('lala.'+style, style) |
- self.failUnlessEqual(o.foo, o1.foo) |
- self.failUnlessEqual(sob.IPersistable(o1).style, style) |
- |
- |
- def testNames(self): |
- o = [1,2,3] |
- p = sob.Persistent(o, 'object') |
- for style in 'xml source pickle'.split(): |
- if style == 'xml' and not gotMicrodom: |
- continue |
- p.setStyle(style) |
- p.save() |
- o1 = sob.load('object.ta'+style[0], style) |
- self.failUnlessEqual(o, o1) |
- for tag in 'lala lolo'.split(): |
- p.save(tag) |
- o1 = sob.load('object-'+tag+'.ta'+style[0], style) |
- self.failUnlessEqual(o, o1) |
- |
- def testEncryptedStyles(self): |
- try: |
- import Crypto |
- except ImportError: |
- raise unittest.SkipTest() |
- for o in objects: |
- phrase='once I was the king of spain' |
- p = sob.Persistent(o, '') |
- for style in 'xml source pickle'.split(): |
- if style == 'xml' and not gotMicrodom: |
- continue |
- p.setStyle(style) |
- p.save(filename='epersisttest.'+style, passphrase=phrase) |
- o1 = sob.load('epersisttest.'+style, style, phrase) |
- self.failUnlessEqual(o, o1) |
- |
- def testPython(self): |
- open("persisttest.python", 'w').write('foo=[1,2,3] ') |
- o = sob.loadValueFromFile('persisttest.python', 'foo') |
- self.failUnlessEqual(o, [1,2,3]) |
- |
- def testEncryptedPython(self): |
- try: |
- import Crypto |
- except ImportError: |
- raise unittest.SkipTest() |
- phrase='once I was the king of spain' |
- open("epersisttest.python", 'w').write( |
- sob._encrypt(phrase, 'foo=[1,2,3]')) |
- o = sob.loadValueFromFile('epersisttest.python', 'foo', phrase) |
- self.failUnlessEqual(o, [1,2,3]) |
- |
- def testTypeGuesser(self): |
- self.assertRaises(KeyError, sob.guessType, "file.blah") |
- self.assertEqual('python', sob.guessType("file.py")) |
- self.assertEqual('python', sob.guessType("file.tac")) |
- self.assertEqual('python', sob.guessType("file.etac")) |
- self.assertEqual('pickle', sob.guessType("file.tap")) |
- self.assertEqual('pickle', sob.guessType("file.etap")) |
- self.assertEqual('source', sob.guessType("file.tas")) |
- self.assertEqual('source', sob.guessType("file.etas")) |
- if gotMicrodom: |
- self.assertEqual('xml', sob.guessType("file.tax")) |
- self.assertEqual('xml', sob.guessType("file.etax")) |
- |
- def testEverythingEphemeralGetattr(self): |
- """ |
- Verify that _EverythingEphermal.__getattr__ works. |
- """ |
- self.fakeMain.testMainModGetattr = 1 |
- |
- dirname = self.mktemp() |
- os.mkdir(dirname) |
- |
- filename = os.path.join(dirname, 'persisttest.ee_getattr') |
- |
- f = file(filename, 'w') |
- f.write('import __main__\n') |
- f.write('if __main__.testMainModGetattr != 1: raise AssertionError\n') |
- f.write('app = None\n') |
- f.close() |
- |
- sob.load(filename, 'source') |
- |
- def testEverythingEphemeralSetattr(self): |
- """ |
- Verify that _EverythingEphemeral.__setattr__ won't affect __main__. |
- """ |
- self.fakeMain.testMainModSetattr = 1 |
- |
- dirname = self.mktemp() |
- os.mkdir(dirname) |
- |
- filename = os.path.join(dirname, 'persisttest.ee_setattr') |
- f = file(filename, 'w') |
- f.write('import __main__\n') |
- f.write('__main__.testMainModSetattr = 2\n') |
- f.write('app = None\n') |
- f.close() |
- |
- sob.load(filename, 'source') |
- |
- self.assertEqual(self.fakeMain.testMainModSetattr, 1) |
- |
- def testEverythingEphemeralException(self): |
- """ |
- Test that an exception during load() won't cause _EE to mask __main__ |
- """ |
- dirname = self.mktemp() |
- os.mkdir(dirname) |
- filename = os.path.join(dirname, 'persisttest.ee_exception') |
- |
- f = file(filename, 'w') |
- f.write('raise ValueError\n') |
- f.close() |
- |
- self.assertRaises(ValueError, sob.load, filename, 'source') |
- self.assertEqual(type(sys.modules['__main__']), FakeModule) |
- |
- def setUp(self): |
- """ |
- Replace the __main__ module with a fake one, so that it can be mutated |
- in tests |
- """ |
- self.realMain = sys.modules['__main__'] |
- self.fakeMain = sys.modules['__main__'] = FakeModule() |
- |
- def tearDown(self): |
- """ |
- Restore __main__ to its original value |
- """ |
- sys.modules['__main__'] = self.realMain |
- |