Skip to content

Commit 9bf0f4b

Browse files
authoredOct 4, 2021
Merge pull request #6 from hug-dev/list-providers
Add a list providers test case
2 parents 247a2d7 + 6c0eb0b commit 9bf0f4b

File tree

8 files changed

+106
-2
lines changed

8 files changed

+106
-2
lines changed
 

‎generator/generator.py

+4-1
Original file line numberDiff line numberDiff line change
@@ -14,11 +14,12 @@
1414
# TODO: with some import syntax or clever moduling, it might be possible not
1515
# to have to do anything here?
1616
# F401 ignored for flake8 as those methods are called through eval
17-
from generators.ping_noauth import gen as ping_noauth # noqa: F401
17+
from generators.ping import gen as ping # noqa: F401
1818
from generators.list_opcodes_bad1 import gen as list_opcodes_bad1 # noqa: F401
1919
from generators.list_opcodes_directauth import ( # noqa: F401
2020
gen as list_opcodes_directauth,
2121
)
22+
from generators.list_providers import gen as list_providers # noqa: F401
2223

2324

2425
class TestSpec(object):
@@ -42,6 +43,8 @@ def read_specs(folder):
4243
specfiles = [f for f in listdir(folder) if isfile(join(folder, f))]
4344
specs = []
4445
for file in specfiles:
46+
if file.startswith("."):
47+
continue
4548
print(f"Parsing spec file: {file}")
4649
# Only use the first part of the filename as spec name
4750
name = file.split(".")[0]
+19
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
# Copyright 2021 Contributors to the Parsec project.
2+
# SPDX-License-Identifier: Apache-2.0
3+
from .protobuf import list_providers_pb2
4+
5+
6+
def gen():
7+
operation = list_providers_pb2.Operation()
8+
9+
result = list_providers_pb2.Result()
10+
provider_info = list_providers_pb2.ProviderInfo()
11+
provider_info.uuid = "ee870e5a-ce4a-417f-8543-8fbd84b49cbe"
12+
provider_info.description = "Some empty provider"
13+
provider_info.vendor = "Arm Ltd."
14+
provider_info.version_maj = 9
15+
provider_info.version_min = 8
16+
provider_info.version_rev = 7
17+
provider_info.id = 2
18+
result.providers.extend([provider_info])
19+
return (operation.SerializeToString(), result.SerializeToString())
File renamed without changes.
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,40 @@
1+
# Copyright 2021 Contributors to the Parsec project.
2+
# SPDX-License-Identifier: Apache-2.0
3+
spec:
4+
description: List providers message
5+
request:
6+
header:
7+
magic_number: 0x5EC0A710
8+
header_size: 0x1E
9+
major_version_number: 0x01
10+
minor_version_number: 0x00
11+
flags: 0x0000
12+
provider: 0x00
13+
session_handle: 0x0000000000000000
14+
content_type: 0x00
15+
accept_type: 0x00
16+
auth_type: 0x00
17+
content_length: auto
18+
auth_length: 0x0000
19+
opcode: 0x00000008
20+
status: 0x0000
21+
body_description: no parameters required
22+
auth:
23+
type: none
24+
response:
25+
header:
26+
magic_number: 0x5EC0A710
27+
header_size: 0x1E
28+
major_version_number: 0x01
29+
minor_version_number: 0x00
30+
flags: 0x0000
31+
provider: 0x00
32+
session_handle: 0x0000000000000000
33+
content_type: 0x00
34+
accept_type: 0x00
35+
auth_type: 0x00
36+
content_length: auto
37+
auth_length: 0x0000
38+
opcode: 0x00000008
39+
status: 0x0000
40+
body_description: One provider info element with UUID "ee870e5a-ce4a-417f-8543-8fbd84b49cbe", "some empty provider" description, "Arm Ltd." vendor, version 9.8.7 and the id 2.
File renamed without changes.
+43
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,43 @@
1+
spec:
2+
description: List providers message
3+
request:
4+
header:
5+
magic_number: 1589683984
6+
header_size: 30
7+
major_version_number: 1
8+
minor_version_number: 0
9+
flags: 0
10+
provider: 0
11+
session_handle: 0
12+
content_type: 0
13+
accept_type: 0
14+
auth_type: 0
15+
content_length: auto
16+
auth_length: 0
17+
opcode: 8
18+
status: 0
19+
body_description: no parameters required
20+
auth:
21+
type: none
22+
response:
23+
header:
24+
magic_number: 1589683984
25+
header_size: 30
26+
major_version_number: 1
27+
minor_version_number: 0
28+
flags: 0
29+
provider: 0
30+
session_handle: 0
31+
content_type: 0
32+
accept_type: 0
33+
auth_type: 0
34+
content_length: auto
35+
auth_length: 0
36+
opcode: 8
37+
status: 0
38+
body_description: One provider info element with UUID "ee870e5a-ce4a-417f-8543-8fbd84b49cbe",
39+
"some empty provider" description, "Arm Ltd." vendor, version 9.8.7 and the
40+
id 2.
41+
test_data:
42+
request: EKfAXh4AAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAAAAAAA
43+
response: EKfAXh4AAQAAAAAAAAAAAAAAAAAAAE8AAAAAAAgAAAAAAAAACk0KJGVlODcwZTVhLWNlNGEtNDE3Zi04NTQzLThmYmQ4NGI0OWNiZRITU29tZSBlbXB0eSBwcm92aWRlchoIQXJtIEx0ZC4gCSgIMAc4Ag==
File renamed without changes.

‎parsec_mock/parsec_mock.py

-1
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,6 @@ def run_test(test_folder, parsec_socket):
4343
while True:
4444
connection, client_addr = sock.accept()
4545
try:
46-
print("Connection received from {}".format(client_addr))
4746
received_data = connection.recv(4096)
4847
b64_received_data = base64.b64encode(received_data).decode("ascii")
4948
if b64_received_data in test_cases:

0 commit comments

Comments
 (0)
Please sign in to comment.