# ================================================================================== # 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()]