def test_main_with_conflicts(self, mock_installed, mock_requirement):
        # Create some fake installed versions
        mock_installed.return_value = {
            'one': '1.0',
            'two': '2.0',
            'three': '3.0'
        }

        # Create some fake requirements
        mock_requirement.return_value = {
            'one': {
                'three': [('>=', '2.0')]
            },
            'two': {
                'three': [('>=', '3.0')]
            }
        }

        # Assert we get a proper error return code
        self.assertEqual(main(), 1)
    def test_main_with_conflicts(self, mock_installed, mock_requirement):
        # Create some fake installed versions
        mock_installed.return_value = {
            'one': '1.0',
            'two': '2.0',
            'three': '3.0'
        }

        # Create some fake requirements
        mock_requirement.return_value = {
            'one': {
                'three': [('>=', '2.0')]
            },
            'two': {
                'three': [('>=', '3.0')]
            }
        }

        # Assert we get a proper error return code
        self.assertEqual(main(), 1)
 def test_main_no_conflicts(self):
     self.assertFalse(main())
 def test_main_no_conflicts(self):
     self.assertFalse(main())