-
Notifications
You must be signed in to change notification settings - Fork 5
Verify test infrastructure and document network-dependent test failures #94
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: master
Are you sure you want to change the base?
Conversation
|
@astrobc1 it seems there are issues downloading from Google drive in GitHub actions. if I try in the browser the link works. |
1 similar comment
|
@astrobc1 it seems there are issues downloading from Google drive in GitHub actions. if I try in the browser the link works. |
|
@zonca Thanks for the reminder. I will take a look at this later this week, or early 2026. I haven't changed the simulation files since the summer, so I'm actually not sure what's going on. Locally, I have completed or nearly so:
I will ensure the testing files are working as expected once I merge the above into main. |
|
@zonca I still don't know the root cause, but this behavior also started occurring on my other project (HISPEC_DRP) using the same pattern for testing data. I ended up removing the web scraping aspect that beautifulsoup4 is doing and hardcoded the Google Drive file IDs, which solved it. Adding files to the Google Drive testing data folder now requires adding the corresponding file ID to the python package so users can still specify path/filenames, not Google Drive IDs. I think I will take the same approach for liger_iris_pipeline - hard code file IDs. In early 2026, many calibration files the DRS uses will be hosted at Keck. However the DRS will still need some standalone testing files for testing purposes. Lastly, for any test that doesn’t depend on the nature of the data itself, we now generate data products on the fly for those tests. This has made updating tests easier. Eventual end-to-end tests will use other metrics like the calculated SNR for validation. |
|
@astrobc1 ok, would you like me to implement that for |
|
@zonca I think that is well-isolated from what I'm working on. Here are the relevant scripts for HISPEC - https://github.com/oirlab/HISPEC_DRP/tree/main/hispecdrp/utils - see testing_data.py and gdrive.py. Feel free make any other changes/improvements in this context as you see fit for liger_iris_pipeline. Link to Liger IRIS Testing data - Files used in current tests Liger/L1/2024B-P001-001_Liger_IMG_SCI_LVL1_0001_M13-J-10mas-skyscale0.5.fits Liger/Cals/Liger_IMG_DARK_20240924000000_0.0.1.fits IRIS/L1/2024B-P001-001_IRIS_IMG1_SCI_LVL1_0001_M13-J-4mas.fits |
Empty PR to verify test suite functionality and identify environmental constraints.
Test Results
16 total tests:
drive.google.comAnalysis
All failures stem from
download_gdrive_file()attempting to fetch test data from Google Drive. The utility fails with:Passing tests (no external dependencies):
test_load_schema- ASDF schema validationtest_combine_frames- Frame combination logictest_create_dark- Dark frame generationtest_normalize_step- Normalization pipelinetest_parse_subarray_map- Subarray configuration parsingFailing tests (require Google Drive access):
Test infrastructure functions correctly. Failures are environmental, not code defects. GitHub Actions CI with internet access should pass if Google Drive links remain valid.
Warning
Firewall rules blocked me from connecting to one or more addresses (expand for details)
I tried to connect to the following addresses, but was blocked by firewall rules:
drive.google.com/home/REDACTED/.local/bin/pytest pytest -s(dns block)/home/REDACTED/.local/bin/pytest pytest -v(dns block)/home/REDACTED/.local/bin/pytest pytest --tb=no -q(dns block)If you need me to access, download, or install something from one of these locations, you can either:
Original prompt
💡 You can make Copilot smarter by setting up custom instructions, customizing its development environment and configuring Model Context Protocol (MCP) servers. Learn more Copilot coding agent tips in the docs.