|
1 | | -import sys, os, unittest, asyncio |
| 1 | +import sys, os, unittest, asyncio, re |
2 | 2 | from unittest.mock import MagicMock |
3 | 3 | sys.path.append(os.path.abspath(os.path.join(os.path.dirname(__file__), '..'))) |
4 | 4 | from pystackql import StackQL, magic, magics, StackqlMagic, StackqlServerMagic |
@@ -354,23 +354,36 @@ def run_magic_statement_test(self, line, cell, expect_none=False): |
354 | 354 | # Validate the outcome. |
355 | 355 | checks = [] |
356 | 356 | # Check that the output contains expected content |
357 | | - if not expect_none: |
358 | | - checks.append("OK" in result["message"].iloc[0]) |
| 357 | + if expect_none: |
| 358 | + checks.append(result is None) |
| 359 | + else: |
| 360 | + if self.server_mode: |
| 361 | + checks.append("OK" in result["message"].iloc[0]) |
| 362 | + else: |
| 363 | + pattern = registry_pull_resp_pattern('github') |
| 364 | + message = result["message"].iloc[0] if "message" in result.columns else "" |
| 365 | + checks.append(bool(re.search(pattern, message))) |
| 366 | + # Check dataframe exists and is populated as expected |
359 | 367 | checks.append('stackql_df' in self.shell.user_ns) |
360 | | - checks.append("OK" in self.shell.user_ns['stackql_df']["message"].iloc[0]) |
361 | | - return checks |
| 368 | + if self.server_mode: |
| 369 | + checks.append("OK" in self.shell.user_ns['stackql_df']["message"].iloc[0]) |
| 370 | + else: |
| 371 | + pattern = registry_pull_resp_pattern('github') |
| 372 | + message = self.shell.user_ns['stackql_df']["message"].iloc[0] if 'stackql_df' in self.shell.user_ns else "" |
| 373 | + checks.append(bool(re.search(pattern, message))) |
| 374 | + return checks, result |
362 | 375 |
|
363 | 376 | def test_line_magic_statement(self): |
364 | | - checks = self.run_magic_statement_test(line=self.statement, cell=None) |
365 | | - self.print_test_result(f"Line magic statement test\n{str(checks)}", *checks) |
| 377 | + checks, result = self.run_magic_statement_test(line=self.statement, cell=None) |
| 378 | + self.print_test_result(f"Line magic statement test\n{result}", *checks) |
366 | 379 |
|
367 | 380 | def test_cell_magic_statement(self): |
368 | | - checks = self.run_magic_statement_test(line="", cell=self.statement) |
369 | | - self.print_test_result(f"Cell magic statement test\n{str(checks)}", *checks) |
| 381 | + checks, result = self.run_magic_statement_test(line="", cell=self.statement) |
| 382 | + self.print_test_result(f"Cell magic statement test\n{result}", *checks) |
370 | 383 |
|
371 | 384 | def test_cell_magic_statement_no_output(self): |
372 | | - checks = self.run_magic_statement_test(line="--no-display", cell=self.statement, expect_none=True) |
373 | | - self.print_test_result(f"Cell magic statement test (with --no-display)\n{str(checks)}", *checks) |
| 385 | + checks, result = self.run_magic_statement_test(line="--no-display", cell=self.statement, expect_none=True) |
| 386 | + self.print_test_result(f"Cell magic statement test (with --no-display)\n{result}", *checks) |
374 | 387 |
|
375 | 388 | class StackQLMagicTests(BaseStackQLMagicTests, unittest.TestCase): |
376 | 389 |
|
|
0 commit comments