Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
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
22 changes: 8 additions & 14 deletions .github/workflows/test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -13,27 +13,21 @@ on:

jobs:
verify_exercises:
# TODO: replace with another image if required to run the tests (optional)
# apk has an old nu version, so alpine is used to ensure compatibility
runs-on: ubuntu-24.04

steps:
- name: Checkout repository
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332

# TODO: setup any tooling that is required to run the tests (optional)
# E.g. install a specific version of a programming language
# E.g. install packages via apt/apk/yum/etc.
# Find GitHub Actions to setup tooling here:
# - https://github.com/actions/?q=setup&type=&language=
# - https://github.com/actions/starter-workflows/tree/main/ci
# - https://github.com/marketplace?type=actions&query=setup
# - name: Use <setup tooling>
# uses: <action to setup tooling>
- name: Use nushell
run: |
curl -L -o nu.tar.gz https://github.com/nushell/nushell/releases/download/0.104.1/nu-0.104.1-x86_64-unknown-linux-gnu.tar.gz && \
tar -xzf nu.tar.gz && \
sudo mv nu-0.104.1-x86_64-unknown-linux-gnu/* /usr/bin/ && \
rm nu.tar.gz && \
rm -r nu-0.104.1-x86_64-unknown-linux-gnu

# TODO: install any dependencies (optional)
# E.g. npm install, bundle install, etc.
# - name: Install project dependencies
# run: <install dependencies>

- name: Verify all exercises
run: bin/verify-exercises
4 changes: 2 additions & 2 deletions bin/verify-exercises
Original file line number Diff line number Diff line change
Expand Up @@ -42,7 +42,7 @@ unskip_tests() {
}

run_tests() {
noop # TODO: replace this with the command to run the tests for the exercise.
nu tests.nu
# Note: this function runs from within an exercise directory.
# Note: the exercise directory is a temporary directory, so feel
# free to modify its files as needed.
Expand All @@ -68,7 +68,7 @@ verify_exercise() {
cd "${tmp_dir}"

copy_example_or_examplar_to_solution
unskip_tests
# unskip_tests # Nushell currently does not support skipping tests
run_tests
)
}
Expand Down
21 changes: 15 additions & 6 deletions config.json
Original file line number Diff line number Diff line change
Expand Up @@ -8,17 +8,17 @@
"representer": false,
"analyzer": false
},
"blurb": "TODO: add blurb",
"blurb": "Nushell is a modern shell oriented around structured data and pipelines.",
"version": 3,
"online_editor": {
"indent_style": "space",
"indent_size": 4
},
"files": {
"solution": [],
"test": [],
"example": [],
"exemplar": []
"solution": ["%{kebab_slug}.nu"],
"test": ["tests.nu"],
"example": [".meta/example.nu"],
"exemplar": [".meta/exemplar.nu"]
},
"exercises": {
"concept": [],
Expand All @@ -35,5 +35,14 @@
},
"concepts": [],
"key_features": [],
"tags": []
"tags": [
"paradigm/functional",
"typing/static",
"platform/windows",
"platform/mac",
"platform/linux",
"platform/android",
"runtime/language_specific",
"used_for/scripts"
]
}