Skip to content
Merged
Show file tree
Hide file tree
Changes from 1 commit
Commits
Show all changes
24 commits
Select commit Hold shift + click to select a range
085fc2c
Add test to validate examples in the main PALS repository
EZoni Dec 17, 2025
4e722cc
Merge branch 'main' into run_examples_from_pals
EZoni Feb 9, 2026
22c0f45
Use BeamLine.from_file to read from file
EZoni Feb 9, 2026
82a2486
Start draft of new Lattice class
EZoni Feb 10, 2026
89a5e53
Reexport, rebuild new Lattice class
EZoni Feb 10, 2026
d45ba9d
Replace `line` with `branches`, list of `BeamLine`s only
EZoni Feb 13, 2026
3e0d72a
Simplify For Now
ax3l Feb 17, 2026
11db528
Revert changes to Lattice class
EZoni Feb 18, 2026
10d54f3
Merge branch 'main' into run_examples_from_pals
EZoni Feb 18, 2026
b39c90e
Merge branch 'main' into run_examples_from_pals
EZoni Feb 19, 2026
cfe45e8
Update test
EZoni Feb 19, 2026
69e73ff
Workaround for 'use' syntax
EZoni Feb 19, 2026
0a9732d
Split CI workflow into three separate workflows
EZoni Feb 19, 2026
0e9b38d
Fix upstream examples workflow
EZoni Feb 19, 2026
5960c67
Rename internal examples as local examples
EZoni Feb 19, 2026
d9fe6f3
CI Updates
ax3l Feb 20, 2026
5707a69
Rename test_upstream_examples.py to avoid confusion with pytest
EZoni Feb 20, 2026
ed6f59c
Improve upstream example validation
EZoni Feb 20, 2026
7d77edb
Improve comment on new 'use' syntax
EZoni Feb 20, 2026
926399b
Merge branch 'main' into run_examples_from_pals
EZoni Feb 24, 2026
f066a5b
Do not test with Python 3.10
EZoni Feb 24, 2026
b1c76b7
Add instructions to validation script
EZoni Feb 24, 2026
8ebee3d
Add inline comments before ad-hoc validation
EZoni Feb 24, 2026
127796e
Adopt new naming convention
EZoni Feb 25, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
16 changes: 15 additions & 1 deletion .github/workflows/tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,20 @@ jobs:
- name: Test
run: |
pytest tests -v
- name: Examples
- name: Examples (internal)
run: |
python examples/fodo.py
- name: Examples (external)
run: |
# Copy examples directory from the main PALS repository
cd examples
git clone --no-checkout https://github.com/pals-project/pals.git pals_temp
Comment thread
EZoni marked this conversation as resolved.
Outdated
cd pals_temp
git sparse-checkout init
git sparse-checkout set examples/
git checkout main
Comment thread
EZoni marked this conversation as resolved.
Outdated
# Test all external examples
cd -
for file in pals_temp/examples/*.pals.yaml; do
python test_external_examples.py --path "${file}"
done
26 changes: 26 additions & 0 deletions examples/test_external_examples.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
import argparse
import yaml

from pals import BeamLine


def main():
# Parse command-line arguments
parser = argparse.ArgumentParser()
parser.add_argument(
"--path",
required=True,
help="Path to the example file",
)
args = parser.parse_args()
example_file = args.path
# Read YAML data from file
with open(example_file, "r") as file:
data = yaml.safe_load(file)
# Parse and validate YAML data
print(f"Parsing data from {example_file}...")
BeamLine(**data)
Comment thread
EZoni marked this conversation as resolved.
Outdated


if __name__ == "__main__":
main()
Loading