Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Appearance settings

Renamed variable name #102

Renamed variable name

Renamed variable name #102

name: E2E Tests on macOS
on:
push:
branches: [ main ]
pull_request:
branches: [ main ]
workflow_dispatch:
jobs:
test-e2e-macos:
runs-on: macos-latest
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Set up Go
uses: actions/setup-go@v4
with:
go-version: '1.24'
- name: Build jfcm
run: |
make build-release
chmod +x jfcm
- name: Set up jfcm environment
run: |
echo "Setting up jfcm environment..."
# Install a test version
./jfcm install 2.74.0
# Use the version to create the shim
./jfcm use 2.74.0
# Add shim to PATH
echo "$HOME/.jfcm/shim" >> $GITHUB_PATH
# Verify shim is working
export PATH="$HOME/.jfcm/shim:$PATH"
which jf
jf --version
- name: Run E2E tests
env:
jfcm_PATH: ${{ github.workspace }}/jfcm
TEST_TIMEOUT: "10m"
run: |
export PATH="$HOME/.jfcm/shim:$PATH"
# Run core functionality tests
echo "Running core functionality tests..."
go test -v -timeout 10m ./tests/e2e/... -run "TestCoreVersionManagement"
# Run alias management tests
echo "Running alias management tests..."
go test -v -timeout 10m ./tests/e2e/... -run "TestAliasManagement"
# Run shim and PATH tests
echo "Running shim and PATH tests..."
go test -v -timeout 10m ./tests/e2e/... -run "TestShimAndPATH"
- name: Test enhanced priority system
env:
jfcm_PATH: ${{ github.workspace }}/jfcm
run: |
export PATH="$HOME/.jfcm/shim:$PATH"
# Install a test version
./jfcm install 2.74.0
# Use the version
./jfcm use 2.74.0
# Verify which jf is being used
which jf
# Test jf execution
jf --version
# Run health check to verify priority
./jfcm health-check --verbose
- name: Test health check with fixes
env:
jfcm_PATH: ${{ github.workspace }}/jfcm
run: |
export PATH="$HOME/.jfcm/shim:$PATH"
# Test health check with fix flag
./jfcm health-check --fix
# Verify PATH configuration
echo "PATH entries:"
echo $PATH | tr ':' '\n' | grep jfcm || echo "No jfcm entries found"
# Test which jf again
which jf
# Final health check
./jfcm health-check
- name: Test latest version functionality
env:
jfcm_PATH: ${{ github.workspace }}/jfcm
run: |
export PATH="$HOME/.jfcm/shim:$PATH"
# Test using latest version
./jfcm use latest
# Verify latest version is active
jf --version
# Check health status
./jfcm health-check
- name: Test performance and security checks
env:
jfcm_PATH: ${{ github.workspace }}/jfcm
run: |
export PATH="$HOME/.jfcm/shim:$PATH"
# Test health check with performance and security flags
./jfcm health-check --performance --security --verbose
- name: Upload test artifacts
if: always()
uses: actions/upload-artifact@v4
with:
name: e2e-test-results-macos
path: |
test-results-*.json
coverage-reports/
retention-days: 7
Morty Proxy This is a proxified and sanitized view of the page, visit original site.