Skip to content

Commit 4610938

Browse files
committed
Fix issue in verify and test user operations
1 parent 1e7939d commit 4610938

File tree

2 files changed

+91
-75
lines changed

2 files changed

+91
-75
lines changed

tests/immu/test_sql_verify.py

+90-59
Original file line numberDiff line numberDiff line change
@@ -24,90 +24,121 @@
2424
class TestVerifySQL:
2525

2626
def test_exec_query(self, wrappedClient: ImmuTestClient):
27-
if(not wrappedClient.serverHigherOrEqualsToVersion("1.2.0")):
28-
return
29-
tabname = wrappedClient.createTestTable("id INTEGER", "name VARCHAR", "test INTEGER NOT NULL", "PRIMARY KEY (id, test)")
30-
wrappedClient.insertToTable(tabname, ["id", "name", "test"], ["@id", "@name", "@test"], {'id': 1, 'name': 'Joe', "test": 3})
31-
wrappedClient.insertToTable(tabname, ["id", "name", "test"], ["@id", "@name", "@test"], {'id': 2, 'name': 'Joe', "test": 2})
32-
wrappedClient.insertToTable(tabname, ["id", "name", "test"], ["@id", "@name", "@test"], {'id': 33, 'name': 'Joe', "test": 111})
33-
wrappedClient.insertToTable(tabname, ["id", "name", "test"], ["@id", "@name", "@test"], {'id': 3, 'name': 'Joe', "test": 1})
34-
result = wrappedClient.simpleSelect(tabname, ["id", "name"], {'id': 1}, "id=@id")
35-
assert(len(result) > 0)
36-
assert(result == [(1, "Joe")])
27+
if (not wrappedClient.serverHigherOrEqualsToVersion("1.2.0")):
28+
return
29+
tabname = wrappedClient.createTestTable(
30+
"id INTEGER", "name VARCHAR", "test INTEGER NOT NULL", "PRIMARY KEY (id, test)")
31+
wrappedClient.insertToTable(tabname, ["id", "name", "test"], [
32+
"@id", "@name", "@test"], {'id': 1, 'name': 'Joe', "test": 3})
33+
wrappedClient.insertToTable(tabname, ["id", "name", "test"], [
34+
"@id", "@name", "@test"], {'id': 2, 'name': 'Joe', "test": 2})
35+
wrappedClient.insertToTable(tabname, ["id", "name", "test"], [
36+
"@id", "@name", "@test"], {'id': 33, 'name': 'Joe', "test": 111})
37+
wrappedClient.insertToTable(tabname, ["id", "name", "test"], [
38+
"@id", "@name", "@test"], {'id': 3, 'name': 'Joe', "test": 1})
39+
result = wrappedClient.simpleSelect(
40+
tabname, ["id", "name"], {'id': 1}, "id=@id")
41+
assert (len(result) > 0)
42+
assert (result == [(1, "Joe")])
3743

3844
ww = wrappedClient.client.verifiableSQLGet(
39-
tabname, [datatypesv2.PrimaryKeyIntValue(1), datatypesv2.PrimaryKeyIntValue(3)]
45+
tabname, [datatypesv2.PrimaryKeyIntValue(
46+
1), datatypesv2.PrimaryKeyIntValue(3)]
4047
)
4148
assert ww.verified == True
4249

4350
def test_varchar(self, wrappedClient: ImmuTestClient):
44-
if(not wrappedClient.serverHigherOrEqualsToVersion("1.2.0")):
45-
return
46-
tabname = wrappedClient.createTestTable("name VARCHAR[256]", "test INTEGER NOT NULL", "PRIMARY KEY (name)")
47-
wrappedClient.insertToTable(tabname, ["name", "test"], ["@name", "@test"], {'id': 1, 'name': 'Joe', "test": 3})
48-
wrappedClient.insertToTable(tabname, ["name", "test"], ["@name", "@test"], {'id': 2, 'name': 'Joe1', "test": 2})
49-
wrappedClient.insertToTable(tabname, ["name", "test"], ["@name", "@test"], {'id': 33, 'name': 'Joe2', "test": 111})
50-
wrappedClient.insertToTable(tabname, ["name", "test"], ["@name", "@test"], {'id': 3, 'name': 'Joe3', "test": 1})
51-
result = wrappedClient.simpleSelect(tabname, ["name"], {'name': "Joe"}, "name=@name")
52-
assert(len(result) > 0)
53-
assert(result == [("Joe",)])
51+
if (not wrappedClient.serverHigherOrEqualsToVersion("1.2.0")):
52+
return
53+
tabname = wrappedClient.createTestTable(
54+
"name VARCHAR[128]", "test INTEGER NOT NULL", "PRIMARY KEY (name)")
55+
wrappedClient.insertToTable(tabname, ["name", "test"], [
56+
"@name", "@test"], {'id': 1, 'name': 'Joe', "test": 3})
57+
wrappedClient.insertToTable(tabname, ["name", "test"], [
58+
"@name", "@test"], {'id': 2, 'name': 'Joe1', "test": 2})
59+
wrappedClient.insertToTable(tabname, ["name", "test"], [
60+
"@name", "@test"], {'id': 33, 'name': 'Joe2', "test": 111})
61+
wrappedClient.insertToTable(tabname, ["name", "test"], [
62+
"@name", "@test"], {'id': 3, 'name': 'Joe3', "test": 1})
63+
result = wrappedClient.simpleSelect(
64+
tabname, ["name"], {'name': "Joe"}, "name=@name")
65+
assert (len(result) > 0)
66+
assert (result == [("Joe",)])
5467

5568
ww = wrappedClient.client.verifiableSQLGet(
5669
tabname, [datatypesv2.PrimaryKeyVarCharValue("Joe")]
5770
)
5871
assert ww.verified == True
5972

6073
def test_boolean(self, wrappedClient: ImmuTestClient):
61-
if(not wrappedClient.serverHigherOrEqualsToVersion("1.2.0")):
62-
return
63-
tabname = wrappedClient.createTestTable("name VARCHAR[256]", "test BOOLEAN NOT NULL", "PRIMARY KEY (name, test)")
64-
wrappedClient.insertToTable(tabname, ["name", "test"], ["@name", "@test"], {'id': 1, 'name': 'Joe', "test": True})
65-
wrappedClient.insertToTable(tabname, ["name", "test"], ["@name", "@test"], {'id': 2, 'name': 'Joe1', "test": False})
66-
wrappedClient.insertToTable(tabname, ["name", "test"], ["@name", "@test"], {'id': 33, 'name': 'Joe2', "test": True})
67-
wrappedClient.insertToTable(tabname, ["name", "test"], ["@name", "@test"], {'id': 3, 'name': 'Joe3', "test": False})
68-
result = wrappedClient.simpleSelect(tabname, ["name"], {'name': "Joe"}, "name=@name")
69-
assert(len(result) > 0)
70-
assert(result == [("Joe",)])
74+
if (not wrappedClient.serverHigherOrEqualsToVersion("1.2.0")):
75+
return
76+
tabname = wrappedClient.createTestTable(
77+
"name VARCHAR[128]", "test BOOLEAN NOT NULL", "PRIMARY KEY (name, test)")
78+
wrappedClient.insertToTable(tabname, ["name", "test"], [
79+
"@name", "@test"], {'id': 1, 'name': 'Joe', "test": True})
80+
wrappedClient.insertToTable(tabname, ["name", "test"], [
81+
"@name", "@test"], {'id': 2, 'name': 'Joe1', "test": False})
82+
wrappedClient.insertToTable(tabname, ["name", "test"], [
83+
"@name", "@test"], {'id': 33, 'name': 'Joe2', "test": True})
84+
wrappedClient.insertToTable(tabname, ["name", "test"], [
85+
"@name", "@test"], {'id': 3, 'name': 'Joe3', "test": False})
86+
result = wrappedClient.simpleSelect(
87+
tabname, ["name"], {'name': "Joe"}, "name=@name")
88+
assert (len(result) > 0)
89+
assert (result == [("Joe",)])
7190

7291
ww = wrappedClient.client.verifiableSQLGet(
73-
tabname, [datatypesv2.PrimaryKeyVarCharValue("Joe"), datatypesv2.PrimaryKeyBoolValue(True)]
92+
tabname, [datatypesv2.PrimaryKeyVarCharValue(
93+
"Joe"), datatypesv2.PrimaryKeyBoolValue(True)]
7494
)
7595
assert ww.verified == True
76-
96+
7797
def test_blob(self, wrappedClient: ImmuTestClient):
78-
if(not wrappedClient.serverHigherOrEqualsToVersion("1.2.0")):
79-
return
80-
tabname = wrappedClient.createTestTable("name BLOB[256]", "test BOOLEAN NOT NULL", "PRIMARY KEY (name, test)")
81-
wrappedClient.insertToTable(tabname, ["name", "test"], ["@name", "@test"], {'id': 1, 'name': b'Joe', "test": True})
82-
wrappedClient.insertToTable(tabname, ["name", "test"], ["@name", "@test"], {'id': 2, 'name': b'Joe1', "test": False})
83-
wrappedClient.insertToTable(tabname, ["name", "test"], ["@name", "@test"], {'id': 33, 'name': b'Joe2', "test": True})
84-
wrappedClient.insertToTable(tabname, ["name", "test"], ["@name", "@test"], {'id': 3, 'name': b'Joe3', "test": False})
85-
result = wrappedClient.simpleSelect(tabname, ["name"], {'name': b"Joe"}, "name=@name")
86-
assert(len(result) > 0)
87-
assert(result == [(b"Joe",)])
98+
if (not wrappedClient.serverHigherOrEqualsToVersion("1.2.0")):
99+
return
100+
tabname = wrappedClient.createTestTable(
101+
"name BLOB[128]", "test BOOLEAN NOT NULL", "PRIMARY KEY (name, test)")
102+
wrappedClient.insertToTable(tabname, ["name", "test"], [
103+
"@name", "@test"], {'id': 1, 'name': b'Joe', "test": True})
104+
wrappedClient.insertToTable(tabname, ["name", "test"], [
105+
"@name", "@test"], {'id': 2, 'name': b'Joe1', "test": False})
106+
wrappedClient.insertToTable(tabname, ["name", "test"], [
107+
"@name", "@test"], {'id': 33, 'name': b'Joe2', "test": True})
108+
wrappedClient.insertToTable(tabname, ["name", "test"], [
109+
"@name", "@test"], {'id': 3, 'name': b'Joe3', "test": False})
110+
result = wrappedClient.simpleSelect(
111+
tabname, ["name"], {'name': b"Joe"}, "name=@name")
112+
assert (len(result) > 0)
113+
assert (result == [(b"Joe",)])
88114

89115
ww = wrappedClient.client.verifiableSQLGet(
90-
tabname, [datatypesv2.PrimaryKeyBlobValue(b"Joe"), datatypesv2.PrimaryKeyBoolValue(True)]
116+
tabname, [datatypesv2.PrimaryKeyBlobValue(
117+
b"Joe"), datatypesv2.PrimaryKeyBoolValue(True)]
91118
)
92119
assert ww.verified == True
93-
94-
120+
95121
def test_ts(self, wrappedClient: ImmuTestClient):
96-
if(not wrappedClient.serverHigherOrEqualsToVersion("1.2.0")):
97-
return
122+
if (not wrappedClient.serverHigherOrEqualsToVersion("1.2.0")):
123+
return
98124
now = datetime.now().astimezone(timezone.utc)
99-
tabname = wrappedClient.createTestTable("name TIMESTAMP", "test BOOLEAN NOT NULL", "PRIMARY KEY (name, test)")
100-
wrappedClient.insertToTable(tabname, ["name", "test"], ["@name", "@test"], {'id': 1, 'name': now, "test": True})
101-
wrappedClient.insertToTable(tabname, ["name", "test"], ["@name", "@test"], {'id': 2, 'name': now + timedelta(seconds=1), "test": False})
102-
wrappedClient.insertToTable(tabname, ["name", "test"], ["@name", "@test"], {'id': 33, 'name': now + timedelta(seconds=2), "test": True})
103-
wrappedClient.insertToTable(tabname, ["name", "test"], ["@name", "@test"], {'id': 3, 'name': now + timedelta(seconds=3), "test": False})
104-
result = wrappedClient.simpleSelect(tabname, ["name"], {'name': now}, "name=@name")
105-
assert(len(result) > 0)
106-
assert(result == [(now,)])
125+
tabname = wrappedClient.createTestTable(
126+
"name TIMESTAMP", "test BOOLEAN NOT NULL", "PRIMARY KEY (name, test)")
127+
wrappedClient.insertToTable(tabname, ["name", "test"], [
128+
"@name", "@test"], {'id': 1, 'name': now, "test": True})
129+
wrappedClient.insertToTable(tabname, ["name", "test"], [
130+
"@name", "@test"], {'id': 2, 'name': now + timedelta(seconds=1), "test": False})
131+
wrappedClient.insertToTable(tabname, ["name", "test"], [
132+
"@name", "@test"], {'id': 33, 'name': now + timedelta(seconds=2), "test": True})
133+
wrappedClient.insertToTable(tabname, ["name", "test"], [
134+
"@name", "@test"], {'id': 3, 'name': now + timedelta(seconds=3), "test": False})
135+
result = wrappedClient.simpleSelect(
136+
tabname, ["name"], {'name': now}, "name=@name")
137+
assert (len(result) > 0)
138+
assert (result == [(now,)])
107139

108140
ww = wrappedClient.client.verifiableSQLGet(
109-
tabname, [datatypesv2.PrimaryKeyTsValue(int(now.timestamp()*1e6)), datatypesv2.PrimaryKeyBoolValue(True)]
141+
tabname, [datatypesv2.PrimaryKeyTsValue(
142+
int(now.timestamp()*1e6)), datatypesv2.PrimaryKeyBoolValue(True)]
110143
)
111144
assert ww.verified == True
112-
113-

tests/immu/test_user_operations.py

+1-16
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,7 @@
2121
import google.protobuf.empty_pb2
2222
import pytest
2323

24+
2425
def get_random_name(length):
2526
return ''.join(random.choice(string.ascii_lowercase) for i in range(length))
2627

@@ -48,28 +49,14 @@ def test_users_functions(self, client: ImmudbClient):
4849
except grpc.RpcError as e:
4950
assert e.details() == 'user already exists'
5051

51-
user1 = "test_"+get_random_name(8)
5252
password = "Pw0:"+get_random_string(12)
5353
database = "defaultdb"
5454
permission = immudb.constants.PERMISSION_RW
5555

56-
try:
57-
resp = client.createUser(user1, "12345", permission, database)
58-
assert False # it is not allowed to create a trivial password
59-
except grpc.RpcError as e:
60-
pass
61-
62-
try:
63-
resp = client.createUser(user1, "12345", permission, database)
64-
assert False # it is not allowed to create a trivial password
65-
except grpc.RpcError as e:
66-
pass
67-
6856
newPassword = "Pw1:"+get_random_string(12)
6957
resp = client.changePassword(user, newPassword, password)
7058
assert type(resp.reply) == google.protobuf.empty_pb2.Empty
7159

72-
7360
with pytest.raises(RpcError):
7461
assert client.setActiveUser(True, "not existing user") == True
7562

@@ -81,8 +68,6 @@ def test_users_functions(self, client: ImmudbClient):
8168
with pytest.raises(RpcError):
8269
client.login(user, newPassword)
8370

84-
8571
assert client.setActiveUser(True, user) == True
8672
# User again active
8773
client.login(user, newPassword)
88-

0 commit comments

Comments
 (0)