feat: make generated code more idiomatic to go users #22
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Run Tests | |
on: | |
workflow_dispatch: | |
pull_request: | |
branches: [main] | |
jobs: | |
test: | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout repository | |
uses: actions/checkout@v3 | |
- name: Setup Extism and XTP | |
run: | | |
curl -O https://raw.githubusercontent.com/extism/js-pdk/main/install.sh | |
sh install.sh | |
curl https://static.dylibso.com/cli/install.sh | sh | |
- name: Set up Node.js | |
uses: actions/setup-node@v3 | |
with: | |
node-version: '21' | |
- name: Install | |
run: | | |
npm ci | |
- name: Build | |
run: | | |
npm run build | |
- name: Install TinyGo | |
uses: acifani/[email protected] | |
with: | |
tinygo-version: 0.31.2 | |
binaryen-version: "116" | |
- name: Run test script | |
run: | | |
cd tests && ./test.sh | |
- name: Run Bindgen Test | |
run: | | |
# we already have a folder named bundle | |
# move it before we get the simulation bundle | |
# TODO change the name | |
mv bundle template-bundle | |
# get the latest release | |
RELEASE_INFO=$(curl -s "https://api.github.com/repos/dylibso/xtp-bindgen-test/releases/latest") | |
ASSET_URL=$(echo $RELEASE_INFO | grep -oP '"browser_download_url": "\K(.*bundle.zip)(?=")') | |
if [ -z "$ASSET_URL" ]; then | |
echo "Asset URL not found. Please check the asset name or the repository." | |
exit 1 | |
fi | |
# download and unzip the bundle | |
curl -L -o bundle.zip "$ASSET_URL" | |
unzip bundle.zip | |
cd bundle/ | |
# Using ../template-bundle so we test the head template | |
xtp plugin init --schema-file schema.yaml --template ../template-bundle --path exampleplugin --name exampleplugin --feature stub-with-code-samples | |
xtp plugin build --path exampleplugin | |
xtp plugin test exampleplugin/dist/plugin.wasm --with test.wasm --mock-host mock.wasm | |