5211b12a218d7347b605fa8a123c3f7b38fc2b7f
[osm/osmclient.git] / osmclient / v1 / tests / test_package.py
1 # Copyright 2017 Sandvine
2 #
3 # All Rights Reserved.
4 #
5 # Licensed under the Apache License, Version 2.0 (the "License"); you may
6 # not use this file except in compliance with the License. You may obtain
7 # a copy of the License at
8 #
9 # http://www.apache.org/licenses/LICENSE-2.0
10 #
11 # Unless required by applicable law or agreed to in writing, software
12 # distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
13 # WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
14 # License for the specific language governing permissions and limitations
15 # under the License.
16
17 import unittest
18 from mock import Mock
19 from osmclient.v1 import package
20 from osmclient.common.exceptions import ClientException
21
22
23 class TestPackage(unittest.TestCase):
24
25 def test_upload_fail(self):
26 mock = Mock()
27 mock.post_cmd.return_value = 'foo'
28 self.assertRaises(ClientException,
29 package.Package(upload_http=mock).upload, 'bar')
30
31 mock.post_cmd.return_value = None
32 self.assertRaises(ClientException,
33 package.Package(upload_http=mock).upload, 'bar')
34
35 def test_wait_for_upload_bad_file(self):
36 mock = Mock()
37 mock.post_cmd.return_value = 'foo'
38 self.assertRaises(IOError,
39 package.Package(upload_http=mock).wait_for_upload,
40 'invalidfile')