File tree Expand file tree Collapse file tree 2 files changed +15
-0
lines changed Expand file tree Collapse file tree 2 files changed +15
-0
lines changed Original file line number Diff line number Diff line change
1
+ import pymongo
2
+ from bson .binary import Binary
3
+ from django .conf import settings
4
+ from django .db import connections
1
5
from django .test import TestCase , skipUnlessDBFeature
2
6
3
7
4
8
@skipUnlessDBFeature ("supports_queryable_encryption" )
5
9
class EncryptionTestCase (TestCase ):
6
10
databases = {"default" , "encrypted" }
7
11
maxDiff = None
12
+
13
+ def assertEncrypted (self , model , field ):
14
+ # Access encrypted database from an unencrypted connection
15
+ conn_params = connections ["default" ].get_connection_params ()
16
+ db_name = settings .DATABASES ["encrypted" ]["NAME" ]
17
+ with pymongo .MongoClient (** conn_params ) as new_connection :
18
+ db = new_connection [db_name ]
19
+ collection = db [model ._meta .db_table ]
20
+ data = collection .find_one ({}, {field : 1 , "_id" : 0 })
21
+ self .assertIsInstance (data [field ], Binary )
Original file line number Diff line number Diff line change @@ -60,6 +60,7 @@ def test_array(self):
60
60
self .assertEqual (len (self .movie .cast ), 2 )
61
61
self .assertEqual (self .movie .cast [0 ].name , "Actor One" )
62
62
self .assertEqual (self .movie .cast [1 ].name , "Actor Two" )
63
+ self .assertEncrypted (self .movie , "cast" )
63
64
64
65
65
66
class FieldTests (EncryptionTestCase ):
You can’t perform that action at this time.
0 commit comments