def test_implements_interface(self): # The implementation implements the interface correctly. dsd_comment = self.factory.makeDistroSeriesDifferenceComment() # Flush the store to ensure db constraints are triggered. Store.of(dsd_comment).flush() verifyObject(IDistroSeriesDifferenceComment, dsd_comment)
def test_providesInterface(self): """BranchMergeProposalJob implements expected interfaces.""" bmp = self.factory.makeBranchMergeProposal() job = BranchMergeProposalJob( bmp, BranchMergeProposalJobType.MERGE_PROPOSAL_NEEDS_REVIEW, {}) job.sync() verifyObject(IBranchMergeProposalJob, job)
def test_baseline(self): self.assertTrue( verifyObject( ILibrarianClient, getUtility(ILibrarianClient))) self.assertTrue( verifyObject( ILibraryFileAliasSet, getUtility(ILibraryFileAliasSet)))
def test_newRequestToken(self): request_token, secret = self.consumer.newRequestToken() verifyObject(IOAuthRequestToken, request_token) self.assertIsInstance(secret, unicode) self.assertEqual( removeSecurityProxy(request_token)._secret, hashlib.sha256(secret).hexdigest())
def test_providesInterface(self): """MergeProposalUpdatedEmailJob provides the expected interfaces.""" bmp = self.factory.makeBranchMergeProposal() job = MergeProposalUpdatedEmailJob.create( bmp, 'change', bmp.registrant) verifyObject(IMergeProposalUpdatedEmailJob, job) verifyObject(IBranchMergeProposalJob, job)
def test_display_comment_provides_icodereviewdisplaycomment(self): # The CodeReviewDisplayComment class provides IComment. with person_logged_in(self.factory.makePerson()): comment = self.factory.makeCodeReviewComment() display_comment = CodeReviewDisplayComment(comment) verifyObject(ICodeReviewDisplayComment, display_comment)
def test_new_TranslationTemplatesBuildJob(self): # TranslationTemplateBuildJob implements IBuildFarmJobOld, # and IBranchJob. verifyObject(IBranchJob, self.specific_job) verifyObject(IBuildFarmJobOld, self.specific_job) # Each of these jobs knows the branch it will operate on. self.assertEqual(self.branch, self.specific_job.branch)
def test_exchange_request_token_for_access_token(self): # Make sure the basic exchange of request token for access # token works. request_token, access_token, access_secret = ( self._exchange_request_token_for_access_token()) verifyObject(IOAuthAccessToken, access_token) self.assertIsInstance(access_secret, unicode) self.assertEqual( removeSecurityProxy(access_token)._secret, hashlib.sha256(access_secret).hexdigest())
def test_exchange_request_token_for_access_token(self): # Make sure the basic exchange of request token for access # token works. request_token, access_token = ( self._exchange_request_token_for_access_token()) verifyObject(IOAuthAccessToken, access_token) # Make sure the security notification email went out that the new # token was created. transaction.commit() from_addr, to_addr, msg = stub.test_emails.pop() self.assertIn('OAuth token generated', msg) self.assertIn('@example.com', to_addr[0])
def test_launchpad_root_object(self): """The Launchpad root object has a simple XMLRPC API to show that XMLRPC works. """ selftestview = SelfTest('somecontext', 'somerequest') self.assertTrue(verifyObject(ISelfTest, selftestview)) self.assertEqual(u'foo bar', selftestview.concatenate('foo', 'bar')) fault = selftestview.make_fault() self.assertEqual("<Fault 666: 'Yoghurt and spanners.'>", str(fault))
def test_comment_for_display_provides_icomment(self): # The DSDDisplayComment browser object provides IComment. ds_diff = self.factory.makeDistroSeriesDifference() person = self.factory.makePerson() with person_logged_in(person): comment = ds_diff.addComment(person, "I'm working on this.") comment_for_display = DistroSeriesDifferenceDisplayComment(comment) self.assertTrue(verifyObject(IComment, comment_for_display))
def test_attributes(self): held_message = self.makeMailingListAndHeldMessage()[-1] details = IHeldMessageDetails(held_message) self.assertIs(True, verifyObject(IHeldMessageDetails, details)) self.assertEqual(held_message, details.message_approval) self.assertEqual(held_message.message, details.message) self.assertEqual(held_message.message_id, details.message_id) self.assertEqual(held_message.message.subject, details.subject) self.assertEqual(held_message.message.datecreated, details.date) self.assertEqual(held_message.message.owner, details.author)
def test_attributes(self): mailing_list_set = getUtility(IMailingListSet) team = self.factory.makeTeam(name='team') self.assertIs(None, team.mailing_list) mailing_list = mailing_list_set.new(team, team.teamowner) self.assertIs(True, verifyObject(IMailingList, mailing_list)) self.assertEqual(mailing_list, team.mailing_list) self.assertEqual(team, mailing_list.team) self.assertEqual(team.teamowner, mailing_list.registrant) self.assertEqual('*****@*****.**', mailing_list.address) self.assertEqual(MailingListStatus.APPROVED, mailing_list.status) self.assertIs(None, mailing_list.date_activated) self.assertIs(None, mailing_list.welcome_message) # archive_url is None until the archive is constructed. self.assertIs(None, mailing_list.archive_url)
def test_new_state(self): test_objects = self.makeMailingListAndHeldMessage() team, member, sender, held_message = test_objects self.assertIs(True, verifyObject(IMessageApproval, held_message)) self.assertEqual(PostedMessageStatus.NEW, held_message.status) self.assertIs(None, held_message.disposed_by) self.assertIs(None, held_message.disposal_date) self.assertEqual(sender, held_message.posted_by) self.assertEqual(team.mailing_list, held_message.mailing_list) self.assertEqual('<first-post>', held_message.message.rfc822msgid) self.assertEqual( held_message.message.datecreated, held_message.posted_date) try: held_message.posted_message.open() text = held_message.posted_message.read() finally: held_message.posted_message.close() self.assertTextMatchesExpressionIgnoreWhitespace( '.*Message-ID: <first-post>.*', text)
def test_providesInterface(self): # In order to test the interface provision, we need to make sure that # the associated diff object that is delegated to is also created. mp = self._createProposalWithPreviewDiff() verifyObject(IPreviewDiff, mp.preview_diff)
def test_source_interface(self): # The POFileStatsJob class is a source of POFileStatsJobs. verifyObject(IPOFileStatsJobSource, POFileStatsJob) verifyObject(IJobSource, POFileStatsJob)
def test_implement_interface(self): """GenerateIncrementalDiffJob implements its interface.""" verifyObject( IGenerateIncrementalDiffJobSource, GenerateIncrementalDiffJob)
def test_job_implements_IPackageTranslationsUploadJob(self): _, _, job = self.makeJob() self.assertTrue(verifyObject(IPackageTranslationsUploadJob, job))
def test_interface(self): """Should implement ITranslationPackagingJobSource.""" verifyObject(ITranslationPackagingJobSource, TranslationPackagingJob)
def test_IMessageApprovalSet(self): message_approval_set = getUtility(IMessageApprovalSet) self.assertIs( True, verifyObject(IMessageApprovalSet, message_approval_set))
def test_new(self): mailing_list_set = getUtility(IMailingListSet) team = self.factory.makeTeam(name='team') mailing_list = mailing_list_set.new(team, team.teamowner) self.assertIs(True, verifyObject(IMailingList, mailing_list)) self.assertEqual(mailing_list, team.mailing_list)
def test_IMailingListSet(self): self.assertIs( True, verifyObject(IMailingListSet, self.mailing_list_set))
def test_implement_interface(self): """UpdatePreviewDiffJob implements IUpdatePreviewDiffJobSource.""" verifyObject(IReviewRequestedEmailJobSource, ReviewRequestedEmailJob)
def test_providesInterface(self): """CodeReviewCommentEmailJob provides the expected interfaces.""" comment = self.factory.makeCodeReviewComment() job = CodeReviewCommentEmailJob.create(comment) verifyObject(ICodeReviewCommentEmailJob, job) verifyObject(IBranchMergeProposalJob, job)
def test_providesInterface(self): """ReviewRequestedEmailJob provides the expected interfaces.""" request = self.factory.makeCodeReviewVoteReference() job = ReviewRequestedEmailJob.create(request) verifyObject(IReviewRequestedEmailJob, job) verifyObject(IBranchMergeProposalJob, job)
def test_interface(self): """TranslationMergeJob must implement IRunnableJob.""" job = make_translation_merge_job(self.factory) verifyObject(IRunnableJob, job)
def test_implement_interface(self): """UpdatePreviewDiffJob implements IUpdatePreviewDiffJobSource.""" verifyObject( ICodeReviewCommentEmailJobSource, CodeReviewCommentEmailJob)
def test_job_source_implements_IPackageTranslationsUploadJobSource(self): job_source = getUtility(IPackageTranslationsUploadJobSource) self.assertTrue(verifyObject(IPackageTranslationsUploadJobSource, job_source))
def test_implements(self): self.assertTrue(verifyObject(IBrowserWidget, self.widget)) self.assertTrue(verifyObject(IInputWidget, self.widget))
def test_job_interface(self): # Instances of POFileStatsJob are runnable jobs. verifyObject(IRunnableJob, POFileStatsJob(0))
def test_implements_interface(self): self.assertTrue(verifyObject( IExternalBugTracker, GitHub("https://github.com/user/repository/issues")))
def test_provides_conversation(self): # The DSDView provides a conversation implementation. ds_diff = self.factory.makeDistroSeriesDifference() view = create_initialized_view(ds_diff, '+listing-distroseries-extra') self.assertTrue(verifyObject(IConversation, view))
def test_job_implements_IPackageDiffJob(self): _, job = self.makeJob() self.assertTrue(verifyObject(IPackageDiffJob, job))
def test_providesInterface(self): verifyObject(IDiff, Diff())
def test_job_source_implements_IPackageDiffJobSource(self): job_source = getUtility(IPackageDiffJobSource) self.assertTrue(verifyObject(IPackageDiffJobSource, job_source))
def test_providesInterface(self): incremental_diff = self.factory.makeIncrementalDiff() verifyObject(IIncrementalDiff, incremental_diff)
def test_implements_IJob(self): """Job should implement IJob.""" verifyObject(IJob, Job())
def test_providesInterface(self): """MergeProposalCreatedJob provides the expected interfaces.""" bmp = self.factory.makeBranchMergeProposal() job = GenerateIncrementalDiffJob.create(bmp, 'old', 'new') verifyObject(IGenerateIncrementalDiffJob, job) verifyObject(IBranchMergeProposalJob, job)
def test_target_implements_structural_subscription_target(self): self.assertTrue( verifyObject(IStructuralSubscriptionTarget, self.target))
def test_class_implements_interface(self): verifyObject( IMergeProposalUpdatedEmailJobSource, MergeProposalUpdatedEmailJob)