comparison test/test_cgi.py @ 3491:0e5f15520e70

fix detection of "missing" existing values in CGI form parser [SF#1414149]
author Richard Jones <richard@users.sourceforge.net>
date Wed, 25 Jan 2006 02:24:28 +0000
parents 7a8a02646d4e
children 0119e04886d8
comparison
equal deleted inserted replaced
3490:976bd292eaa0 3491:0e5f15520e70
6 # 6 #
7 # This module is distributed in the hope that it will be useful, 7 # This module is distributed in the hope that it will be useful,
8 # but WITHOUT ANY WARRANTY; without even the implied warranty of 8 # but WITHOUT ANY WARRANTY; without even the implied warranty of
9 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 9 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
10 # 10 #
11 # $Id: test_cgi.py,v 1.26 2004-11-18 16:23:58 a1s Exp $ 11 # $Id: test_cgi.py,v 1.27 2006-01-25 02:24:28 richard Exp $
12 12
13 import unittest, os, shutil, errno, sys, difflib, cgi, re 13 import unittest, os, shutil, errno, sys, difflib, cgi, re
14 14
15 from roundup.cgi import client 15 from roundup.cgi import client
16 from roundup.cgi.exceptions import FormError 16 from roundup.cgi.exceptions import FormError
422 self.assertRaises(FormError, self.parseForm, {'number': 'hi, mum!'}) 422 self.assertRaises(FormError, self.parseForm, {'number': 'hi, mum!'})
423 423
424 def testSetNumber(self): 424 def testSetNumber(self):
425 self.assertEqual(self.parseForm({'number': '1'}), 425 self.assertEqual(self.parseForm({'number': '1'}),
426 ({('test', None): {'number': 1}}, [])) 426 ({('test', None): {'number': 1}}, []))
427 self.assertEqual(self.parseForm({'number': '0'}),
428 ({('test', None): {'number': 0}}, []))
427 self.assertEqual(self.parseForm({'number': '\n0\n'}), 429 self.assertEqual(self.parseForm({'number': '\n0\n'}),
428 ({('test', None): {'number': 0}}, [])) 430 ({('test', None): {'number': 0}}, []))
431
432 def testSetNumberReplaceOne(self):
429 nodeid = self.db.test.create(number=1) 433 nodeid = self.db.test.create(number=1)
430 self.assertEqual(self.parseForm({'number': '1'}, 'test', nodeid), 434 self.assertEqual(self.parseForm({'number': '1'}, 'test', nodeid),
431 ({('test', nodeid): {}}, [])) 435 ({('test', nodeid): {}}, []))
436 self.assertEqual(self.parseForm({'number': '0'}, 'test', nodeid),
437 ({('test', nodeid): {'number': 0}}, []))
438
439 def testSetNumberReplaceZero(self):
432 nodeid = self.db.test.create(number=0) 440 nodeid = self.db.test.create(number=0)
433 self.assertEqual(self.parseForm({'number': '0'}, 'test', nodeid), 441 self.assertEqual(self.parseForm({'number': '0'}, 'test', nodeid),
434 ({('test', nodeid): {}}, [])) 442 ({('test', nodeid): {}}, []))
443
444 def testSetNumberReplaceNone(self):
445 nodeid = self.db.test.create()
446 self.assertEqual(self.parseForm({'number': '0'}, 'test', nodeid),
447 ({('test', nodeid): {'number': 0}}, []))
448 self.assertEqual(self.parseForm({'number': '1'}, 'test', nodeid),
449 ({('test', nodeid): {'number': 1}}, []))
435 450
436 def testEmptyNumberSet(self): 451 def testEmptyNumberSet(self):
437 nodeid = self.db.test.create(number=0) 452 nodeid = self.db.test.create(number=0)
438 self.assertEqual(self.parseForm({'number': ''}, 'test', nodeid), 453 self.assertEqual(self.parseForm({'number': ''}, 'test', nodeid),
439 ({('test', nodeid): {'number': None}}, [])) 454 ({('test', nodeid): {'number': None}}, []))

Roundup Issue Tracker: http://roundup-tracker.org/