コード例 #1
0
    def test_class_instantiation_and_sorting(self):
        lcp_mappings = []
        self.mock_lcp_class_map(lcp_mappings)
        pp_cis = lifecycle_plugin_utils.get_plug_point_class_instances()
        self.assertEqual(0, len(pp_cis))
        self.mock_get_plugins.assert_called_once_with()

        # order should change with sort
        lcp_mappings = [('A::B::C2', TestLifecycleCallout2),
                        ('A::B::C1', TestLifecycleCallout1)]
        self.mock_lcp_class_map(lcp_mappings)
        pp_cis = lifecycle_plugin_utils.get_plug_point_class_instances()
        self.assertEqual(2, len(pp_cis))
        self.assertEqual(100, pp_cis[0].get_ordinal())
        self.assertEqual(101, pp_cis[1].get_ordinal())
        self.assertEqual(TestLifecycleCallout1, pp_cis[0].__class__)
        self.assertEqual(TestLifecycleCallout2, pp_cis[1].__class__)
        self.mock_get_plugins.assert_called_once_with()

        # order should NOT change with sort
        lcp_mappings = [('A::B::C1', TestLifecycleCallout1),
                        ('A::B::C2', TestLifecycleCallout2)]
        self.mock_lcp_class_map(lcp_mappings)
        pp_cis = lifecycle_plugin_utils.get_plug_point_class_instances()
        self.assertEqual(2, len(pp_cis))
        self.assertEqual(100, pp_cis[0].get_ordinal())
        self.assertEqual(101, pp_cis[1].get_ordinal())
        self.assertEqual(TestLifecycleCallout1, pp_cis[0].__class__)
        self.assertEqual(TestLifecycleCallout2, pp_cis[1].__class__)
        self.mock_get_plugins.assert_called_once_with()

        # sort failure due to exception in thrown by ordinal
        lcp_mappings = [('A::B::C2', TestLifecycleCallout2),
                        ('A::B::C3', TestLifecycleCallout3),
                        ('A::B::C1', TestLifecycleCallout1)]
        self.mock_lcp_class_map(lcp_mappings)
        pp_cis = lifecycle_plugin_utils.get_plug_point_class_instances()
        self.assertEqual(3, len(pp_cis))
        self.assertEqual(100, pp_cis[2].get_ordinal())
        self.assertEqual(101, pp_cis[0].get_ordinal())
        # (can sort fail partially? If so then this test may break)
        self.assertEqual(TestLifecycleCallout2, pp_cis[0].__class__)
        self.assertEqual(TestLifecycleCallout3, pp_cis[1].__class__)
        self.assertEqual(TestLifecycleCallout1, pp_cis[2].__class__)
        self.mock_get_plugins.assert_called_once_with()
コード例 #2
0
    def test_class_instantiation_and_sorting(self):
        lcp_mappings = []
        self.mock_lcp_class_map(lcp_mappings)
        pp_cis = lifecycle_plugin_utils.get_plug_point_class_instances()
        self.assertEqual(len(pp_cis), 0)

        # order should change with sort
        lcp_mappings = [('A::B::C2', TestLifecycleCallout2),
                        ('A::B::C1', TestLifecycleCallout1)]
        self.mock_lcp_class_map(lcp_mappings)
        pp_cis = lifecycle_plugin_utils.get_plug_point_class_instances()
        self.assertEqual(len(pp_cis), 2)
        self.assertEqual(pp_cis[0].get_ordinal(), 100)
        self.assertEqual(pp_cis[1].get_ordinal(), 101)
        self.assertEqual(TestLifecycleCallout1, pp_cis[0].__class__)
        self.assertEqual(TestLifecycleCallout2, pp_cis[1].__class__)

        # order should NOT change with sort
        lcp_mappings = [('A::B::C1', TestLifecycleCallout1),
                        ('A::B::C2', TestLifecycleCallout2)]
        self.mock_lcp_class_map(lcp_mappings)
        pp_cis = lifecycle_plugin_utils.get_plug_point_class_instances()
        self.assertEqual(len(pp_cis), 2)
        self.assertEqual(pp_cis[0].get_ordinal(), 100)
        self.assertEqual(pp_cis[1].get_ordinal(), 101)
        self.assertEqual(TestLifecycleCallout1, pp_cis[0].__class__)
        self.assertEqual(TestLifecycleCallout2, pp_cis[1].__class__)

        # sort failure due to exception in thrown by ordinal
        lcp_mappings = [('A::B::C2', TestLifecycleCallout2),
                        ('A::B::C3', TestLifecycleCallout3),
                        ('A::B::C1', TestLifecycleCallout1)]
        self.mock_lcp_class_map(lcp_mappings)
        pp_cis = lifecycle_plugin_utils.get_plug_point_class_instances()
        self.assertEqual(len(pp_cis), 3)
        self.assertEqual(pp_cis[2].get_ordinal(), 100)
        self.assertEqual(pp_cis[0].get_ordinal(), 101)
        # (can sort fail partially? If so then this test may break)
        self.assertEqual(TestLifecycleCallout2, pp_cis[0].__class__)
        self.assertEqual(TestLifecycleCallout3, pp_cis[1].__class__)
        self.assertEqual(TestLifecycleCallout1, pp_cis[2].__class__)

        return
コード例 #3
0
    def test_get_plug_point_class_instances(self):
        """Tests the get_plug_point_class_instances function."""
        lcp_mappings = [('A::B::C1', TestLifecycleCallout1)]
        self.mock_lcp_class_map(lcp_mappings)

        pp_cinstances = lifecycle_plugin_utils.get_plug_point_class_instances()
        self.assertIsNotNone(pp_cinstances)
        self.assertTrue(self.is_iterable(pp_cinstances),
                        "not iterable: %s" % pp_cinstances)
        self.assertTrue(len(pp_cinstances) == 1)
        self.assertEqual(TestLifecycleCallout1, pp_cinstances[0].__class__)
コード例 #4
0
    def test_get_plug_point_class_instances(self):
        """Tests the get_plug_point_class_instances function."""
        lcp_mappings = [('A::B::C1', TestLifecycleCallout1)]
        self.mock_lcp_class_map(lcp_mappings)

        pp_cinstances = lifecycle_plugin_utils.get_plug_point_class_instances()
        self.assertIsNotNone(pp_cinstances)
        self.assertTrue(self.is_iterable(pp_cinstances),
                        "not iterable: %s" % pp_cinstances)
        self.assertTrue(len(pp_cinstances) == 1)
        self.assertEqual(TestLifecycleCallout1, pp_cinstances[0].__class__)