Skip to content

Commit 42465a3

Browse files
committed
Improving base_58 tests stability.
1 parent 07a6f08 commit 42465a3

File tree

1 file changed

+71
-70
lines changed

1 file changed

+71
-70
lines changed

base_58/tests/memory_usage.py

Lines changed: 71 additions & 70 deletions
Original file line numberDiff line numberDiff line change
@@ -99,76 +99,77 @@ def memory_usage_for_constant_input(self, node=None):
9999
if node is None:
100100
node = self.context.node
101101

102-
for attempt in retries(timeout=100, delay=10):
103-
with attempt:
104-
id_for_retry = (1000 + attempt.retry_number) * 10
105-
106-
with When("I run base58 encode function"):
107-
r = node.query(
108-
f"SELECT base58Encode('{string_of_all_askii_symbols()*1000}') FORMAT TabSeparated",
109-
query_id=id_for_retry + 0,
110-
)
111-
b58_encoded_string = r.output
112-
113-
with When("I run base64 encode function"):
114-
r = node.query(
115-
f"SELECT base64Encode('{string_of_all_askii_symbols()*1000}') FORMAT TabSeparated",
116-
query_id=id_for_retry + 1,
117-
)
118-
b64_encoded_string = r.output
119-
120-
with When("I run base58 decode function"):
121-
r = node.query(
122-
f"SELECT base58Decode('{b58_encoded_string}') FORMAT TabSeparated",
123-
query_id=id_for_retry + 2,
124-
)
125-
b58_decoded_string = r.output
126-
127-
with When("I run base64 decode function"):
128-
r = node.query(
129-
f"SELECT base64Decode('{b64_encoded_string}') FORMAT TabSeparated",
130-
query_id=id_for_retry + 3,
131-
)
132-
b64_decoded_string = r.output
133-
134-
with Then("I check strings are not changed after encode, decode"):
135-
assert b58_decoded_string == string_of_all_askii_symbols() * 1000, error()
136-
assert b64_decoded_string == string_of_all_askii_symbols() * 1000, error()
137-
138-
for attempt_1 in retries(timeout=100, delay=10):
139-
with attempt_1:
140-
with When("I remember memory usages"):
141-
r = node.query(
142-
f"SELECT max(memory_usage) FROM system.query_log WHERE query_id = '{id_for_retry + 0}' FORMAT TabSeparated"
143-
)
144-
b58_encode_memory_usage = int(r.output)
145-
assert b58_encode_memory_usage > 0, error()
146-
147-
r = node.query(
148-
f"SELECT max(memory_usage) FROM system.query_log WHERE query_id = '{id_for_retry + 1}' FORMAT TabSeparated"
149-
)
150-
b64_encode_memory_usage = int(r.output)
151-
assert b64_encode_memory_usage > 0, error()
152-
153-
r = node.query(
154-
f"SELECT max(memory_usage) FROM system.query_log WHERE query_id = '{id_for_retry + 2}' FORMAT TabSeparated"
155-
)
156-
b58_decode_memory_usage = int(r.output)
157-
assert b58_decode_memory_usage > 0, error()
158-
159-
r = node.query(
160-
f"SELECT max(memory_usage) FROM system.query_log WHERE query_id = '{id_for_retry + 3}' FORMAT TabSeparated"
161-
)
162-
b64_decode_memory_usage = int(r.output)
163-
assert b64_decode_memory_usage > 0, error()
164-
165-
with Then("I check memory usages are similar"):
166-
debug(f"""b58_encode_memory_usage: {b58_encode_memory_usage},
167-
b64_encode_memory_usage: {b64_encode_memory_usage},
168-
b58_decode_memory_usage: {b58_decode_memory_usage},
169-
b64_decode_memory_usage: {b64_decode_memory_usage}""")
170-
assert b58_encode_memory_usage <= b64_encode_memory_usage * 2, error()
171-
assert b58_decode_memory_usage <= b64_decode_memory_usage * 2, error()
102+
with Check("constant input"):
103+
for attempt in retries(timeout=100, delay=10):
104+
with attempt:
105+
id_for_retry = (1000 + attempt.retry_number) * 10
106+
107+
with When("I run base58 encode function"):
108+
r = node.query(
109+
f"SELECT base58Encode('{string_of_all_askii_symbols()*1000}') FORMAT TabSeparated",
110+
query_id=id_for_retry + 0,
111+
)
112+
b58_encoded_string = r.output
113+
114+
with When("I run base64 encode function"):
115+
r = node.query(
116+
f"SELECT base64Encode('{string_of_all_askii_symbols()*1000}') FORMAT TabSeparated",
117+
query_id=id_for_retry + 1,
118+
)
119+
b64_encoded_string = r.output
120+
121+
with When("I run base58 decode function"):
122+
r = node.query(
123+
f"SELECT base58Decode('{b58_encoded_string}') FORMAT TabSeparated",
124+
query_id=id_for_retry + 2,
125+
)
126+
b58_decoded_string = r.output
127+
128+
with When("I run base64 decode function"):
129+
r = node.query(
130+
f"SELECT base64Decode('{b64_encoded_string}') FORMAT TabSeparated",
131+
query_id=id_for_retry + 3,
132+
)
133+
b64_decoded_string = r.output
134+
135+
with Then("I check strings are not changed after encode, decode"):
136+
assert b58_decoded_string == string_of_all_askii_symbols() * 1000, error()
137+
assert b64_decoded_string == string_of_all_askii_symbols() * 1000, error()
138+
139+
for attempt_1 in retries(timeout=100, delay=10):
140+
with attempt_1:
141+
with When("I remember memory usages"):
142+
r = node.query(
143+
f"SELECT max(memory_usage) FROM system.query_log WHERE query_id = '{id_for_retry + 0}' FORMAT TabSeparated"
144+
)
145+
b58_encode_memory_usage = int(r.output)
146+
assert b58_encode_memory_usage > 0, error()
147+
148+
r = node.query(
149+
f"SELECT max(memory_usage) FROM system.query_log WHERE query_id = '{id_for_retry + 1}' FORMAT TabSeparated"
150+
)
151+
b64_encode_memory_usage = int(r.output)
152+
assert b64_encode_memory_usage > 0, error()
153+
154+
r = node.query(
155+
f"SELECT max(memory_usage) FROM system.query_log WHERE query_id = '{id_for_retry + 2}' FORMAT TabSeparated"
156+
)
157+
b58_decode_memory_usage = int(r.output)
158+
assert b58_decode_memory_usage > 0, error()
159+
160+
r = node.query(
161+
f"SELECT max(memory_usage) FROM system.query_log WHERE query_id = '{id_for_retry + 3}' FORMAT TabSeparated"
162+
)
163+
b64_decode_memory_usage = int(r.output)
164+
assert b64_decode_memory_usage > 0, error()
165+
166+
with Then("I check memory usages are similar"):
167+
debug(f"b58_encode_memory_usage: {b58_encode_memory_usage},\n"
168+
f"b64_encode_memory_usage: {b64_encode_memory_usage},\n"
169+
f"b58_decode_memory_usage: {b58_decode_memory_usage},\n"
170+
f"b64_decode_memory_usage: {b64_decode_memory_usage}")
171+
assert b58_encode_memory_usage <= b64_encode_memory_usage * 2, error()
172+
assert b58_decode_memory_usage <= b64_decode_memory_usage * 2, error()
172173

173174

174175
@TestFeature

0 commit comments

Comments
 (0)