def test_api_query_missing_files(self, mock_url, mock_creds, mock_config,
                                     mock_post):
        """Test query_missing_files"""

        _api = BatchAppsApi(mock_creds, mock_config)
        mock_url.return_value = "http://test.com"
        mock_post.return_value = {}

        val = _api.query_missing_files("files")
        self.assertFalse(val.success)
        self.assertFalse(mock_post.called)

        val = _api.query_missing_files({})
        self.assertFalse(val.success)
        mock_post.assert_called_with(mock_creds, "http://test.com",
                                     self.headers, {"Specifications": [{}]})
        mock_post.reset()
        val = _api.query_missing_files([{}])
        self.assertFalse(val.success)
        mock_post.assert_once_called_with(mock_creds, "http://test.com",
                                          self.headers,
                                          {"Specifications": [{}]})
        mock_post.called = False
        val = _api.query_missing_files([])
        self.assertFalse(val.success)
        self.assertFalse(mock_post.called)

        val = _api.query_missing_files([0])
        self.assertFalse(val.success)
        self.assertFalse(mock_post.called)

        mock_post.return_value = {'files': None}
        val = _api.query_missing_files({})
        self.assertFalse(val.success)

        mock_post.return_value = {'files': []}
        val = _api.query_missing_files({})
        self.assertTrue(val.success)
        self.assertEqual(val.result, [])

        mock_post.side_effect = RestCallException(None, "test", None)
        val = _api.query_missing_files({})
        self.assertFalse(val.success)
    def test_api_query_missing_files(self, mock_url, mock_creds, mock_config, mock_post):
        """Test query_missing_files"""

        _api = BatchAppsApi(mock_creds, mock_config)
        mock_url.return_value = "http://test.com"
        mock_post.return_value = {}

        val = _api.query_missing_files("files")
        self.assertFalse(val.success)
        self.assertFalse(mock_post.called)

        val = _api.query_missing_files({})
        self.assertFalse(val.success)
        mock_post.assert_called_with(mock_creds, "http://test.com", self.headers, {"Specifications": [{}]})
        mock_post.reset()
        val = _api.query_missing_files([{}])
        self.assertFalse(val.success)
        mock_post.assert_once_called_with(mock_creds, "http://test.com", self.headers, {"Specifications": [{}]})
        mock_post.called = False
        val = _api.query_missing_files([])
        self.assertFalse(val.success)
        self.assertFalse(mock_post.called)

        val = _api.query_missing_files([0])
        self.assertFalse(val.success)
        self.assertFalse(mock_post.called)

        mock_post.return_value = {"files": None}
        val = _api.query_missing_files({})
        self.assertFalse(val.success)

        mock_post.return_value = {"files": []}
        val = _api.query_missing_files({})
        self.assertTrue(val.success)
        self.assertEqual(val.result, [])

        mock_post.side_effect = RestCallException(None, "test", None)
        val = _api.query_missing_files({})
        self.assertFalse(val.success)