| # ================================================================================== |
| # Copyright (c) 2019 Nokia |
| # Copyright (c) 2018-2019 AT&T Intellectual Property. |
| # |
| # Licensed under the Apache License, Version 2.0 (the "License"); |
| # you may not use this file except in compliance with the License. |
| # You may obtain a copy of the License at |
| # |
| # http://www.apache.org/licenses/LICENSE-2.0 |
| # |
| # Unless required by applicable law or agreed to in writing, software |
| # distributed under the License is distributed on an "AS IS" BASIS, |
| # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| # See the License for the specific language governing permissions and |
| # limitations under the License. |
| # ================================================================================== |
| import pytest |
| |
| from ricxappframe.entities.rnib.nb_identity_pb2 import NbIdentity |
| |
| |
| # These are here just to reduce the size of the code in test_rmr so those (important) tests are more readable; in theory these dicts could be large |
| # The actual value of the constants should be ignored by the tests; all we should care |
| # about is that the constant value was returned by the RMR function. Further, we should |
| # not consider it an error if RMR returns more than what is listed here; these are the |
| # list of what is/could be used by this package. |
| @pytest.fixture |
| def expected_constants(): |
| return { |
| "RMR_MAX_XID": 32, |
| "RMR_MAX_SID": 32, |
| "RMR_MAX_MEID": 32, |
| "RMR_MAX_SRC": 64, |
| "RMR_MAX_RCV_BYTES": 4096, |
| "RMRFL_NONE": 0, |
| "RMRFL_MTCALL": 2, # can't be added here until jenkins version >= 1.8.3 |
| "RMRFL_AUTO_ALLOC": 3, |
| "RMR_DEF_SIZE": 0, |
| "RMR_VOID_MSGTYPE": -1, |
| "RMR_VOID_SUBID": -1, |
| "RMR_OK": 0, |
| "RMR_ERR_BADARG": 1, |
| "RMR_ERR_NOENDPT": 2, |
| "RMR_ERR_EMPTY": 3, |
| "RMR_ERR_NOHDR": 4, |
| "RMR_ERR_SENDFAILED": 5, |
| "RMR_ERR_CALLFAILED": 6, |
| "RMR_ERR_NOWHOPEN": 7, |
| "RMR_ERR_WHID": 8, |
| "RMR_ERR_OVERFLOW": 9, |
| "RMR_ERR_RETRY": 10, |
| "RMR_ERR_RCVFAILED": 11, |
| "RMR_ERR_TIMEOUT": 12, |
| "RMR_ERR_UNSET": 13, |
| "RMR_ERR_TRUNC": 14, |
| "RMR_ERR_INITFAILED": 15, |
| } |
| |
| |
| @pytest.fixture |
| def expected_states(): |
| return { |
| 0: "RMR_OK", |
| 1: "RMR_ERR_BADARG", |
| 2: "RMR_ERR_NOENDPT", |
| 3: "RMR_ERR_EMPTY", |
| 4: "RMR_ERR_NOHDR", |
| 5: "RMR_ERR_SENDFAILED", |
| 6: "RMR_ERR_CALLFAILED", |
| 7: "RMR_ERR_NOWHOPEN", |
| 8: "RMR_ERR_WHID", |
| 9: "RMR_ERR_OVERFLOW", |
| 10: "RMR_ERR_RETRY", |
| 11: "RMR_ERR_RCVFAILED", |
| 12: "RMR_ERR_TIMEOUT", |
| 13: "RMR_ERR_UNSET", |
| 14: "RMR_ERR_TRUNC", |
| 15: "RMR_ERR_INITFAILED", |
| } |
| |
| |
| @pytest.fixture |
| def rnib_information(): |
| rnib1 = NbIdentity() |
| rnib1.inventory_name = "nodeb_1234" |
| rnib1.global_nb_id.plmn_id = "plmn_1234" |
| rnib1.global_nb_id.nb_id = "nb_1234" |
| rnib1.connection_status = 1 |
| |
| rnib2 = NbIdentity() |
| rnib1.inventory_name = "nodeb_5678" |
| rnib1.global_nb_id.plmn_id = "plmn_5678" |
| rnib1.global_nb_id.nb_id = "nb_5678" |
| rnib1.connection_status = 6 |
| |
| return [rnib1.SerializeToString(), rnib2.SerializeToString()] |