Tommy Carpenter | 3a6ac01 | 2020-04-06 14:42:57 -0400 | [diff] [blame] | 1 | # ================================================================================== |
| 2 | # Copyright (c) 2019 Nokia |
| 3 | # Copyright (c) 2018-2019 AT&T Intellectual Property. |
| 4 | # |
| 5 | # Licensed under the Apache License, Version 2.0 (the "License"); |
| 6 | # you may not use this file except in compliance with the License. |
| 7 | # You may obtain 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, |
| 13 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| 14 | # See the License for the specific language governing permissions and |
| 15 | # limitations under the License. |
| 16 | # ================================================================================== |
| 17 | import pytest |
| 18 | |
yc999.jang | 750eb5b | 2021-06-10 19:04:18 +0900 | [diff] [blame] | 19 | from ricxappframe.entities.rnib.nb_identity_pb2 import NbIdentity |
| 20 | |
Tommy Carpenter | 3a6ac01 | 2020-04-06 14:42:57 -0400 | [diff] [blame] | 21 | |
| 22 | # 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 |
| 23 | # The actual value of the constants should be ignored by the tests; all we should care |
| 24 | # about is that the constant value was returned by the RMR function. Further, we should |
| 25 | # not consider it an error if RMR returns more than what is listed here; these are the |
| 26 | # list of what is/could be used by this package. |
| 27 | @pytest.fixture |
| 28 | def expected_constants(): |
| 29 | return { |
| 30 | "RMR_MAX_XID": 32, |
| 31 | "RMR_MAX_SID": 32, |
| 32 | "RMR_MAX_MEID": 32, |
| 33 | "RMR_MAX_SRC": 64, |
| 34 | "RMR_MAX_RCV_BYTES": 4096, |
| 35 | "RMRFL_NONE": 0, |
| 36 | "RMRFL_MTCALL": 2, # can't be added here until jenkins version >= 1.8.3 |
| 37 | "RMRFL_AUTO_ALLOC": 3, |
| 38 | "RMR_DEF_SIZE": 0, |
| 39 | "RMR_VOID_MSGTYPE": -1, |
| 40 | "RMR_VOID_SUBID": -1, |
| 41 | "RMR_OK": 0, |
| 42 | "RMR_ERR_BADARG": 1, |
| 43 | "RMR_ERR_NOENDPT": 2, |
| 44 | "RMR_ERR_EMPTY": 3, |
| 45 | "RMR_ERR_NOHDR": 4, |
| 46 | "RMR_ERR_SENDFAILED": 5, |
| 47 | "RMR_ERR_CALLFAILED": 6, |
| 48 | "RMR_ERR_NOWHOPEN": 7, |
| 49 | "RMR_ERR_WHID": 8, |
| 50 | "RMR_ERR_OVERFLOW": 9, |
| 51 | "RMR_ERR_RETRY": 10, |
| 52 | "RMR_ERR_RCVFAILED": 11, |
| 53 | "RMR_ERR_TIMEOUT": 12, |
| 54 | "RMR_ERR_UNSET": 13, |
| 55 | "RMR_ERR_TRUNC": 14, |
| 56 | "RMR_ERR_INITFAILED": 15, |
| 57 | } |
| 58 | |
| 59 | |
| 60 | @pytest.fixture |
| 61 | def expected_states(): |
| 62 | return { |
| 63 | 0: "RMR_OK", |
| 64 | 1: "RMR_ERR_BADARG", |
| 65 | 2: "RMR_ERR_NOENDPT", |
| 66 | 3: "RMR_ERR_EMPTY", |
| 67 | 4: "RMR_ERR_NOHDR", |
| 68 | 5: "RMR_ERR_SENDFAILED", |
| 69 | 6: "RMR_ERR_CALLFAILED", |
| 70 | 7: "RMR_ERR_NOWHOPEN", |
| 71 | 8: "RMR_ERR_WHID", |
| 72 | 9: "RMR_ERR_OVERFLOW", |
| 73 | 10: "RMR_ERR_RETRY", |
| 74 | 11: "RMR_ERR_RCVFAILED", |
| 75 | 12: "RMR_ERR_TIMEOUT", |
| 76 | 13: "RMR_ERR_UNSET", |
| 77 | 14: "RMR_ERR_TRUNC", |
| 78 | 15: "RMR_ERR_INITFAILED", |
| 79 | } |
yc999.jang | 750eb5b | 2021-06-10 19:04:18 +0900 | [diff] [blame] | 80 | |
| 81 | |
| 82 | @pytest.fixture |
| 83 | def rnib_information(): |
| 84 | rnib1 = NbIdentity() |
| 85 | rnib1.inventory_name = "nodeb_1234" |
| 86 | rnib1.global_nb_id.plmn_id = "plmn_1234" |
| 87 | rnib1.global_nb_id.nb_id = "nb_1234" |
| 88 | rnib1.connection_status = 1 |
| 89 | |
| 90 | rnib2 = NbIdentity() |
| 91 | rnib1.inventory_name = "nodeb_5678" |
| 92 | rnib1.global_nb_id.plmn_id = "plmn_5678" |
| 93 | rnib1.global_nb_id.nb_id = "nb_5678" |
| 94 | rnib1.connection_status = 6 |
| 95 | |
| 96 | return [rnib1.SerializeToString(), rnib2.SerializeToString()] |