| 3818 | self.fail("hash() of list subclass should fail") |
| 3819 | |
| 3820 | def test_str_operations(self): |
| 3821 | try: 'a' + 5 |
| 3822 | except TypeError: pass |
| 3823 | else: self.fail("'' + 5 doesn't raise TypeError") |
| 3824 | |
| 3825 | try: ''.split('') |
| 3826 | except ValueError: pass |
| 3827 | else: self.fail("''.split('') doesn't raise ValueError") |
| 3828 | |
| 3829 | try: ''.join([0]) |
| 3830 | except TypeError: pass |
| 3831 | else: self.fail("''.join([0]) doesn't raise TypeError") |
| 3832 | |
| 3833 | try: ''.rindex('5') |
| 3834 | except ValueError: pass |
| 3835 | else: self.fail("''.rindex('5') doesn't raise ValueError") |
| 3836 | |
| 3837 | try: '%(n)s' % None |
| 3838 | except TypeError: pass |
| 3839 | else: self.fail("'%(n)s' % None doesn't raise TypeError") |
| 3840 | |
| 3841 | try: '%(n' % {} |
| 3842 | except ValueError: pass |
| 3843 | else: self.fail("'%(n' % {} '' doesn't raise ValueError") |
| 3844 | |
| 3845 | try: '%*s' % ('abc') |
| 3846 | except TypeError: pass |
| 3847 | else: self.fail("'%*s' % ('abc') doesn't raise TypeError") |
| 3848 | |
| 3849 | try: '%*.*s' % ('abc', 5) |
| 3850 | except TypeError: pass |
| 3851 | else: self.fail("'%*.*s' % ('abc', 5) doesn't raise TypeError") |
| 3852 | |
| 3853 | try: '%s' % (1, 2) |
| 3854 | except TypeError: pass |
| 3855 | else: self.fail("'%s' % (1, 2) doesn't raise TypeError") |
| 3856 | |
| 3857 | try: '%' % None |
| 3858 | except ValueError: pass |
| 3859 | else: self.fail("'%' % None doesn't raise ValueError") |
| 3860 | |
| 3861 | self.assertEqual('534253'.isdigit(), 1) |
| 3862 | self.assertEqual('534253x'.isdigit(), 0) |
| 3863 | self.assertEqual('%c' % 5, '\x05') |
| 3864 | self.assertEqual('%c' % '5', '5') |
| 3865 | |
| 3866 | def test_deepcopy_recursive(self): |
| 3867 | # Testing deepcopy of recursive objects... |