# -*- coding: iso-8859-1 -* ## ## ## import re import sys, os if __name__ == '__main__': execfile(os.path.join(sys.path[0], 'framework.py')) from base import TestBase #------------------------------------------------------------------------------ # # Some constants # #------------------------------------------------------------------------------ class NoteTestCase(TestBase): """ Test adding, finding rendering notes """ def test_note_creation_basic(self): """create a note inside an issue and to a followup in that issue.""" # make an issue title = u"Fat people" description = u"bla bla bla" tracker = self.folder.tracker request = self.app.REQUEST request.set('title', title) request.set('fromname', u'B\xc3\xa9b') request.set('email', u'email@address.com') request.set('description', description) request.set('type', tracker.getDefaultType()) request.set('urgency', tracker.getDefaultUrgency()) tracker.SubmitIssue(request) issue = tracker.getIssueObjects()[0] from Products.IssueTrackerProduct.Note import IssueNote # create a note inside this issue note = IssueNote('1', u'A note about something', u"Some note about something which is a long string", u'B\xc3\xa9b', 'email@address.com' ) issue._setObject('1', note) note = issue._getOb('1') note.index_object() self.assertEqual(note.getFromname(), u'B\xc3\xa9b') self.assertEqual(note.getEmail(), u'email@address.com') self.assertEqual(note.getACLAdder(), '') self.assertEqual(list(issue.getNotes()), [note]) def test_note_creation_by_issue(self): """test to let the issue create the note""" # make an issue title = u"Fat people" description = u"bla bla bla" tracker = self.folder.tracker request = self.app.REQUEST request.set('title', title) request.set('fromname', u'B\xc3\xa9b') request.set('email', u'email@address.com') request.set('description', description) request.set('type', tracker.getDefaultType()) request.set('urgency', tracker.getDefaultUrgency()) tracker.SubmitIssue(request) issue = tracker.getIssueObjects()[0] # use the view createNote() issue.createNote("Bla bla bla") note = issue.getNotes()[0] self.assertEqual(note.getComment(), u"Bla bla bla") self.assertTrue(type(note.getComment()) is unicode) # can't set getFromname() and getEmail() because the request isn't # completed these things aren't set in the cookies #self.assertEqual(note.getFromname(), u'B\xc3\xa9b') #self.assertEqual(note.getEmail(), 'email@address.com') self.assertEqual(note.getThread(), None) def test_suite(): from unittest import TestSuite, makeSuite suite = TestSuite() suite.addTest(makeSuite(NoteTestCase)) return suite if __name__ == '__main__': framework()