diff --git a/.github/actions/test-helloworld/action.yml b/.github/actions/test-helloworld/action.yml index 76b92a70..9ce49ef9 100644 --- a/.github/actions/test-helloworld/action.yml +++ b/.github/actions/test-helloworld/action.yml @@ -1,11 +1,11 @@ -name: 'Test Hello World' -description: 'Test Hello World with specific Go and module versions' +name: "Test Hello World" +description: "Test Hello World with specific Go and module versions" inputs: go-version: - description: 'Go version being tested' + description: "Go version being tested" required: true mod-version: - description: 'Go module version to use' + description: "Go module version to use" required: true runs: using: "composite" @@ -24,12 +24,30 @@ runs: import ( "fmt" "github.com/goplus/lib/c" + "github.com/goplus/lib/cpp/std" ) func main() { fmt.Println("Hello, LLGo!") println("Hello, LLGo!") c.Printf(c.Str("Hello, LLGo!\n")) + c.Printf(std.Str("Hello LLGo by cpp/std.Str\n").CStr()) } EOL go mod tidy - llgo run . + EXPECTED="Hello, LLGo! + Hello, LLGo! + Hello, LLGo! + Hello LLGo by cpp/std.Str" + OUTPUT=$(llgo run . 2>&1) + if echo "$OUTPUT" | grep -qF "$EXPECTED"; then + echo "Basic test passed" + else + echo "Basic test failed" + echo "Expected to contain:" + echo "$EXPECTED" + echo "Got:" + echo "$OUTPUT" + exit 1 + fi + + #TODO(zzy): Test embed targets, need dispatch target dir diff --git a/.github/workflows/release-build.yml b/.github/workflows/release-build.yml index 9e320358..c678d7df 100644 --- a/.github/workflows/release-build.yml +++ b/.github/workflows/release-build.yml @@ -27,7 +27,7 @@ jobs: if: steps.cache-darwin-sysroot.outputs.cache-hit != 'true' run: tar -czvf .sysroot/darwin.tar.gz -C .sysroot darwin - name: Save Darwin sysroot cache - # if: steps.cache-darwin-sysroot.outputs.cache-hit != 'true' + if: steps.cache-darwin-sysroot.outputs.cache-hit != 'true' uses: actions/cache/save@v4 with: path: .sysroot/darwin.tar.gz @@ -171,7 +171,7 @@ jobs: ls -la release-llgo/ echo "${{ github.workspace }}/release-llgo/bin/" >> $GITHUB_PATH - - name: Test Hello World with go.mod 1.21 + - name: Test Hello World uses: ./.github/actions/test-helloworld with: go-version: ${{matrix.go-version}}