Esempio n. 1
0
 def test__meta_data_state(self):
     r = Resource(mock.MagicMock())
     r._meta_data['allowed_lazy_attributes'] = []
     r._meta_data['uri'] = 'URI'
     r._meta_data['bigip']._meta_data['icr_session'].get.return_value =\
         MockResponse({u"generation": 0})
     r._meta_data['bigip']._meta_data['icr_session'].put.return_value =\
         MockResponse({u"generation": 0})
     r.generation = 0
     pre_meta = r._meta_data.copy()
     r.update(a=u"b")
     assert pre_meta == r._meta_data
Esempio n. 2
0
 def test__check_generation_with_mismatch(self):
     r = Resource(mock.MagicMock())
     r._meta_data['allowed_lazy_attributes'] = []
     r._meta_data['uri'] = 'URI'
     r._meta_data['bigip']._meta_data['icr_session'].get.return_value =\
         MockResponse({u"generation": 0})
     r.generation = 1
     with pytest.raises(GenerationMismatch) as GMEIO:
         r.update(a=u"b")
     assert GMEIO.value.message ==\
         'The generation of the object on the BigIP (0)'\
         ' does not match the current object(1)'
Esempio n. 3
0
 def test__meta_data_state(self):
     r = Resource(mock.MagicMock())
     r._meta_data['allowed_lazy_attributes'] = []
     r._meta_data['uri'] = 'URI'
     r._meta_data['bigip']._meta_data['icr_session'].get.return_value =\
         MockResponse({u"generation": 0})
     r._meta_data['bigip']._meta_data['icr_session'].put.return_value =\
         MockResponse({u"generation": 0})
     r.generation = 0
     pre_meta = r._meta_data.copy()
     r.update(a=u"b")
     assert pre_meta == r._meta_data
Esempio n. 4
0
 def test__check_generation_with_mismatch(self):
     r = Resource(mock.MagicMock())
     r._meta_data['allowed_lazy_attributes'] = []
     r._meta_data['uri'] = 'URI'
     r._meta_data['bigip']._meta_data['icr_session'].get.return_value =\
         MockResponse({u"generation": 0})
     r.generation = 1
     with pytest.raises(GenerationMismatch) as GMEIO:
         r.update(a=u"b")
     assert GMEIO.value.message ==\
         'The generation of the object on the BigIP (0)'\
         ' does not match the current object(1)'
Esempio n. 5
0
 def test_Collection_removal(self):
     r = Resource(mock.MagicMock())
     r._meta_data['allowed_lazy_attributes'] = []
     r._meta_data['uri'] = 'URI'
     attrs = {'put.return_value': MockResponse({u"generation": 0}),
              'get.return_value': MockResponse({u"generation": 0})}
     mock_session = mock.MagicMock(**attrs)
     r._meta_data['bigip']._meta_data = {'icr_session': mock_session}
     r.generation = 0
     r.contained = Collection(mock.MagicMock())
     assert 'contained' in r.__dict__
     r.update(a=u"b")
     submitted = r._meta_data['bigip'].\
         _meta_data['icr_session'].put.call_args[1]['json']
     assert 'contained' not in submitted
Esempio n. 6
0
 def test_read_only_removal(self):
     r = Resource(mock.MagicMock())
     r._meta_data['allowed_lazy_attributes'] = []
     r._meta_data['uri'] = 'URI'
     r._meta_data['read_only_attributes'] = [u"READONLY"]
     attrs = {'put.return_value': MockResponse({u"generation": 0}),
              'get.return_value': MockResponse({u"generation": 0})}
     mock_session = mock.MagicMock(**attrs)
     r._meta_data['bigip']._meta_data = {'icr_session': mock_session}
     r.generation = 0
     r.READONLY = True
     assert 'READONLY' in r.__dict__
     r.update(a=u"b")
     submitted = r._meta_data['bigip'].\
         _meta_data['icr_session'].put.call_args[1]['json']
     assert 'READONLY' not in submitted
Esempio n. 7
0
 def test_Collection_removal(self):
     r = Resource(mock.MagicMock())
     r._meta_data['allowed_lazy_attributes'] = []
     r._meta_data['uri'] = 'URI'
     attrs = {
         'put.return_value': MockResponse({u"generation": 0}),
         'get.return_value': MockResponse({u"generation": 0})
     }
     mock_session = mock.MagicMock(**attrs)
     r._meta_data['bigip']._meta_data = {'icr_session': mock_session}
     r.generation = 0
     r.contained = Collection(mock.MagicMock())
     assert 'contained' in r.__dict__
     r.update(a=u"b")
     submitted = r._meta_data['bigip'].\
         _meta_data['icr_session'].put.call_args[1]['json']
     assert 'contained' not in submitted
Esempio n. 8
0
 def test_read_only_removal(self):
     r = Resource(mock.MagicMock())
     r._meta_data['allowed_lazy_attributes'] = []
     r._meta_data['uri'] = 'URI'
     r._meta_data['read_only_attributes'] = [u"READONLY"]
     attrs = {
         'put.return_value': MockResponse({u"generation": 0}),
         'get.return_value': MockResponse({u"generation": 0})
     }
     mock_session = mock.MagicMock(**attrs)
     r._meta_data['bigip']._meta_data = {'icr_session': mock_session}
     r.generation = 0
     r.READONLY = True
     assert 'READONLY' in r.__dict__
     r.update(a=u"b")
     submitted = r._meta_data['bigip'].\
         _meta_data['icr_session'].put.call_args[1]['json']
     assert 'READONLY' not in submitted