Skip to content

Commit 38a53de

Browse files
authored
Merge pull request #732 from weaviate/fix_backup_tests
Remove uneeded mock test to fix CI
2 parents e148f6a + 954f155 commit 38a53de

File tree

1 file changed

+0
-249
lines changed

1 file changed

+0
-249
lines changed

test/backup/test_backup.py

Lines changed: 0 additions & 249 deletions
Original file line numberDiff line numberDiff line change
@@ -12,255 +12,6 @@
1212

1313

1414
class TestBackup(unittest.TestCase):
15-
@patch("weaviate.backup.backup.Backup.get_create_status")
16-
def test_create(self, mock_status):
17-
"""
18-
Test the `create` method.
19-
"""
20-
21-
# error messages
22-
backup_type_err_msg = lambda dt: f"'backup_id' must be of type str. Given type: {dt}."
23-
storage_val_err_msg = lambda val: (
24-
f"'backend' must have one of these values: {STORAGE_NAMES}. " f"Given value: {val}."
25-
)
26-
include_type_err_msg = lambda dt: (
27-
"'include_classes' must be of type str, list of str or None. " f"Given type: {dt}."
28-
)
29-
exclude_type_err_msg = lambda dt: (
30-
"'exclude_classes' must be of type str, list of str or None. " f"Given type: {dt}."
31-
)
32-
wait_type_err_msg = lambda dt: (
33-
f"'wait_for_completion' must be of type bool. Given type: {dt}."
34-
)
35-
include_exclude_err_msg = (
36-
"Either 'include_classes' OR 'exclude_classes' can be set, not both."
37-
)
38-
connection_err_msg = "Backup creation failed due to connection error."
39-
status_code_err_msg = "Backup creation"
40-
backup_failed_err_msg = lambda status: f"Backup failed: {status}"
41-
42-
# invalid calls
43-
44-
with self.assertRaises(TypeError) as error:
45-
Backup(None).create(
46-
backup_id=b"My-bucket",
47-
backend="s3",
48-
)
49-
check_error_message(self, error, backup_type_err_msg(bytes))
50-
51-
with self.assertRaises(ValueError) as error:
52-
Backup(None).create(
53-
backup_id="My-bucket",
54-
backend=b"s3",
55-
)
56-
check_error_message(self, error, storage_val_err_msg(b"s3"))
57-
58-
with self.assertRaises(ValueError) as error:
59-
Backup(None).create(
60-
backup_id="My-bucket",
61-
backend="s4",
62-
)
63-
check_error_message(self, error, storage_val_err_msg("s4"))
64-
65-
with self.assertRaises(TypeError) as error:
66-
Backup(None).create(
67-
backup_id="My-bucket",
68-
backend="s3",
69-
include_classes=b"MyClass",
70-
)
71-
check_error_message(self, error, include_type_err_msg(bytes))
72-
73-
with self.assertRaises(TypeError) as error:
74-
Backup(None).create(
75-
backup_id="My-bucket",
76-
backend="s3",
77-
exclude_classes=b"MyClass",
78-
)
79-
check_error_message(self, error, exclude_type_err_msg(bytes))
80-
81-
with self.assertRaises(TypeError) as error:
82-
Backup(None).create(
83-
backup_id="My-bucket",
84-
backend="s3",
85-
include_classes="MyClass1",
86-
exclude_classes="MyClass2",
87-
)
88-
check_error_message(self, error, include_exclude_err_msg)
89-
90-
with self.assertRaises(TypeError) as error:
91-
Backup(None).create(
92-
backup_id="My-bucket",
93-
backend="s3",
94-
include_classes="MyClass1",
95-
exclude_classes=[],
96-
wait_for_completion=0,
97-
)
98-
check_error_message(self, error, wait_type_err_msg(int))
99-
100-
mock_conn = mock_connection_func("post", side_effect=RequestsConnectionError)
101-
with self.assertRaises(RequestsConnectionError) as error:
102-
Backup(mock_conn).create(
103-
backup_id="My-bucket",
104-
backend="s3",
105-
)
106-
check_error_message(self, error, connection_err_msg)
107-
108-
mock_conn = mock_connection_func("post", status_code=404)
109-
with self.assertRaises(UnexpectedStatusCodeException) as error:
110-
Backup(mock_conn).create(
111-
backup_id="My-bucket",
112-
backend="s3",
113-
)
114-
check_startswith_error_message(self, error, status_code_err_msg)
115-
116-
mock_conn = mock_connection_func(
117-
"post", status_code=200, return_json={"classes": ["Test"], "error": "Test2"}
118-
)
119-
mock_status.return_value = {"status": "FAILED", "error": "test"}
120-
with self.assertRaises(BackupFailedException) as error:
121-
Backup(mock_conn).create(
122-
backup_id="My-bucket",
123-
backend="s3",
124-
wait_for_completion=True,
125-
)
126-
check_error_message(
127-
self,
128-
error,
129-
backup_failed_err_msg({"classes": ["Test"], "error": "test", "status": "FAILED"}),
130-
)
131-
132-
# valid calls
133-
mock_conn = mock_connection_func("post", status_code=200, return_json={"status": "TEST"})
134-
mock_status.return_value = {"status": "FAILED", "error": "test"}
135-
result = Backup(mock_conn).create(
136-
backup_id="My-Bucket",
137-
backend="s3",
138-
)
139-
self.assertDictEqual(result, {"status": "TEST"})
140-
mock_conn.post.assert_called_with(
141-
path="/backups/s3",
142-
weaviate_object={
143-
"id": "my-bucket",
144-
"config": {},
145-
"include": [],
146-
"exclude": [],
147-
},
148-
)
149-
150-
mock_conn = mock_connection_func("post", status_code=200, return_json={"status": "TEST"})
151-
mock_status.return_value = {"status": "FAILED", "error": "test"}
152-
result = Backup(mock_conn).create(
153-
backup_id="My-Bucket", backend="gcs", include_classes="myClass"
154-
)
155-
self.assertDictEqual(result, {"status": "TEST"})
156-
mock_conn.post.assert_called_with(
157-
path="/backups/gcs",
158-
weaviate_object={
159-
"id": "my-bucket",
160-
"config": {},
161-
"include": ["MyClass"],
162-
"exclude": [],
163-
},
164-
)
165-
166-
mock_conn = mock_connection_func("post", status_code=200, return_json={"status": "TEST"})
167-
mock_status.return_value = {"status": "FAILED", "error": "test"}
168-
result = Backup(mock_conn).create(
169-
backup_id="My-Bucket", backend="filesystem", include_classes=["class1", "Class2"]
170-
)
171-
self.assertDictEqual(result, {"status": "TEST"})
172-
mock_conn.post.assert_called_with(
173-
path="/backups/filesystem",
174-
weaviate_object={
175-
"id": "my-bucket",
176-
"config": {},
177-
"include": ["Class1", "Class2"],
178-
"exclude": [],
179-
},
180-
)
181-
182-
mock_conn = mock_connection_func("post", status_code=200, return_json={"status": "TEST"})
183-
mock_status.return_value = {"status": "FAILED", "error": "test"}
184-
result = Backup(mock_conn).create(
185-
backup_id="My-Bucket",
186-
backend="s3",
187-
exclude_classes="myClass",
188-
include_classes=None,
189-
)
190-
self.assertDictEqual(result, {"status": "TEST"})
191-
mock_conn.post.assert_called_with(
192-
path="/backups/s3",
193-
weaviate_object={
194-
"id": "my-bucket",
195-
"config": {},
196-
"include": [],
197-
"exclude": ["MyClass"],
198-
},
199-
)
200-
201-
mock_conn = mock_connection_func("post", status_code=200, return_json={"status": "TEST"})
202-
mock_status.return_value = {"status": "FAILED", "error": "test"}
203-
result = Backup(mock_conn).create(
204-
backup_id="My-Bucket",
205-
backend="s3",
206-
exclude_classes=["class1", "Class2"],
207-
include_classes=[],
208-
)
209-
self.assertDictEqual(result, {"status": "TEST"})
210-
mock_conn.post.assert_called_with(
211-
path="/backups/s3",
212-
weaviate_object={
213-
"id": "my-bucket",
214-
"config": {},
215-
"include": [],
216-
"exclude": ["Class1", "Class2"],
217-
},
218-
)
219-
220-
mock_conn = mock_connection_func("post", status_code=200, return_json={"status": "TEST"})
221-
mock_status.return_value = {"status": "SUCCESS"}
222-
result = Backup(mock_conn).create(
223-
backup_id="My-Bucket2",
224-
backend="s3",
225-
wait_for_completion=True,
226-
)
227-
self.assertDictEqual(result, {"status": "SUCCESS"})
228-
mock_conn.post.assert_called_with(
229-
path="/backups/s3",
230-
weaviate_object={
231-
"id": "my-bucket2",
232-
"config": {},
233-
"include": [],
234-
"exclude": [],
235-
},
236-
)
237-
238-
with patch("weaviate.backup.backup.sleep") as mock_sleep:
239-
240-
def override_mock_status():
241-
mock_status.return_value = {"status": "SUCCESS"}
242-
243-
mock_sleep.side_effect = lambda n: override_mock_status()
244-
mock_conn = mock_connection_func(
245-
"post", status_code=200, return_json={"status": "TEST"}
246-
)
247-
mock_status.return_value = {"status": "TRANSFERRING"}
248-
result = Backup(mock_conn).create(
249-
backup_id="my-Bucket_2",
250-
backend="gcs",
251-
wait_for_completion=True,
252-
)
253-
self.assertDictEqual(result, {"status": "SUCCESS"})
254-
mock_conn.post.assert_called_with(
255-
path="/backups/gcs",
256-
weaviate_object={
257-
"id": "my-bucket_2",
258-
"config": {},
259-
"include": [],
260-
"exclude": [],
261-
},
262-
)
263-
26415
def test_get_create_status(self):
26516
"""
26617
Test the `get_create_status` method.

0 commit comments

Comments
 (0)