~launchpad-pqm/launchpad/devel

« back to all changes in this revision

Viewing changes to lib/lp/archivepublisher/tests/test_publish_ftpmaster.py

  • Committer: Dimitri John Ledkov
  • Date: 2014-03-18 16:56:44 UTC
  • mfrom: (16965 devel)
  • mto: This revision was merged to the branch mainline in revision 16969.
  • Revision ID: dimitri.ledkov@canonical.com-20140318165644-sg12hk7auwqv7m36
Merge trunk

Show diffs side-by-side

added added

removed removed

Lines of Context:
658
658
        distro = script.distributions[0]
659
659
        script.setUpDirs()
660
660
        script.installDists = FakeMethod()
661
 
        script.publishSecurityUploads(distro)
 
661
        has_published = script.publishSecurityUploads(distro)
 
662
        self.assertFalse(has_published)
662
663
        self.assertEqual(0, script.installDists.call_count)
663
664
 
 
665
    def test_publishSecurityUploads_returns_true_when_publishes(self):
 
666
        distro = self.makeDistroWithPublishDirectory()
 
667
        distroseries = self.factory.makeDistroSeries(distribution=distro)
 
668
        self.factory.makeSourcePackagePublishingHistory(
 
669
            distroseries=distroseries,
 
670
            pocket=PackagePublishingPocket.SECURITY)
 
671
        script = self.makeScript(distro)
 
672
        script.setUp()
 
673
        script.setUpDirs()
 
674
        script.installDists = FakeMethod()
 
675
        has_published = script.publishSecurityUploads(distro)
 
676
        self.assertTrue(has_published)
 
677
 
664
678
    def test_publishDistroUploads_publishes_all_distro_archives(self):
665
679
        distro = self.makeDistroWithPublishDirectory()
666
680
        distroseries = self.factory.makeDistroSeries(distribution=distro)
721
735
 
722
736
    def test_security_run_publishes_only_security_updates(self):
723
737
        script = self.makeScript(extra_args=['--security-only'])
724
 
        script.publish = FakeMethod()
 
738
        script.runFinalizeParts = FakeMethod()
 
739
        script.publish = FakeMethod(result=True)
725
740
        script.main()
726
741
        self.assertEqual(1, script.publish.call_count)
727
742
        args, kwargs = script.publish.calls[0]
728
743
        self.assertEqual({'security_only': True}, kwargs)
 
744
        self.assertEqual(1, script.runFinalizeParts.call_count)
 
745
 
 
746
    def test_security_run_empty_security_does_not_finalize(self):
 
747
        script = self.makeScript(extra_args=['--security-only'])
 
748
        script.runFinalizeParts = FakeMethod()
 
749
        script.publish = FakeMethod(result=False)
 
750
        script.main()
 
751
        self.assertEqual(1, script.publish.call_count)
 
752
        self.assertEqual(0, script.runFinalizeParts.call_count)
729
753
 
730
754
    def test_publishDistroUploads_processes_all_archives(self):
731
755
        distro = self.makeDistroWithPublishDirectory()
786
810
                "Did not find expected marker for %s."
787
811
                % archive.purpose.title)
788
812
 
 
813
    def test_publish_always_returns_true_for_primary(self):
 
814
        script = self.makeScript()
 
815
        script.publishDistroUploads = FakeMethod()
 
816
        script.setUp()
 
817
        script.setUpDirs()
 
818
        result = script.publish(script.distributions[0], security_only=False)
 
819
        self.assertTrue(result)
 
820
 
 
821
    def test_publish_returns_true_for_non_empty_security(self):
 
822
        script = self.makeScript(extra_args=['--security-only'])
 
823
        script.setUp()
 
824
        script.setUpDirs()
 
825
        script.installDists = FakeMethod()
 
826
        script.publishSecurityUploads = FakeMethod(result=True)
 
827
        result = script.publish(script.distributions[0], security_only=True)
 
828
        self.assertTrue(result)
 
829
 
 
830
    def test_publish_returns_false_for_empty_security(self):
 
831
        script = self.makeScript(extra_args=['--security-only'])
 
832
        script.setUp()
 
833
        script.setUpDirs()
 
834
        script.installDists = FakeMethod()
 
835
        script.publishSecurityUploads = FakeMethod(result=False)
 
836
        result = script.publish(script.distributions[0], security_only=True)
 
837
        self.assertFalse(result)
 
838
 
789
839
    def test_publish_reraises_exception(self):
790
840
        # If an Exception comes up while publishing, it bubbles up out
791
841
        # of the publish method even though the method must intercept