def test_services_create_persistent_command(self, mock_service, mock_pretty_output):
        """
        Test for services_create_persistent_command.
        For running the test without any errors or problems.
        :param mock_service:  mock for PersistentStoreService
        :param mock_pretty_output:  mock for pretty_output text
        :return:
        """
        mock_args = mock.MagicMock()
        services_create_persistent_command(mock_args)

        mock_service.assert_called()

        po_call_args = mock_pretty_output().__enter__().write.call_args_list
        self.assertEqual(1, len(po_call_args))
        self.assertEqual('Successfully created new Persistent Store Service!', po_call_args[0][0][0])
    def test_services_create_persistent_command_exception_indexerror(self, mock_service, mock_pretty_output):
        """
        Test for services_create_persistent_command.
        For running the test with an IndexError exception thrown.
        :param mock_service:  mock for PersistentStoreService
        :param mock_pretty_output:  mock for pretty_output text
        :return:
        """
        mock_args = mock.MagicMock()
        mock_service.side_effect = IndexError
        services_create_persistent_command(mock_args)

        mock_service.assert_called()
        mock_service.objects.get().save.assert_not_called()

        po_call_args = mock_pretty_output().__enter__().write.call_args_list
        self.assertEqual(1, len(po_call_args))
        self.assertIn('The connection argument (-c) must be of the form', po_call_args[0][0][0])
    def test_services_create_persistent_command_exception_integrityerror(self, mock_service, mock_pretty_output):
        """
        Test for services_create_persistent_command.
        For running the test with an IntegrityError exception thrown.
        :param mock_service:  mock for PersistentStoreService
        :param mock_pretty_output:  mock for pretty_output text
        :return:
        """
        mock_args = mock.MagicMock()
        mock_service.side_effect = IntegrityError
        services_create_persistent_command(mock_args)

        mock_service.assert_called()
        mock_service.objects.get().save.assert_not_called()

        po_call_args = mock_pretty_output().__enter__().write.call_args_list
        self.assertEqual(1, len(po_call_args))
        self.assertIn('Persistent Store Service with name', po_call_args[0][0][0])
        self.assertIn('already exists. Command aborted.', po_call_args[0][0][0])