mirror of
https://github.com/ivuorinen/tree-sitter-shellspec.git
synced 2026-02-12 14:51:32 +00:00
feat: implement complete tree-sitter-shellspec grammar with comprehensive testing
- Add full ShellSpec grammar extending tree-sitter-bash - Support all ShellSpec constructs: Describe, Context, It, hooks, utilities - Include Data block parsing with statements and argument styles - Add 61 comprehensive test cases covering real-world patterns - Implement optimized GitHub workflows with CI/CD automation - Configure complete development tooling (linting, formatting, pre-commit) - Add comprehensive documentation and contribution guidelines - Optimize grammar conflicts to zero warnings - Support editor integration for Neovim, VS Code, Emacs Breaking Changes: - Initial release, no previous API to break BREAKING CHANGE: Initial implementation of tree-sitter-shellspec grammar # Conflicts: # .github/workflows/codeql.yml # .github/workflows/pr-lint.yml # .pre-commit-config.yaml # Conflicts: # .github/workflows/pr-lint.yml # Conflicts: # .github/workflows/pr-lint.yml
This commit is contained in:
34
test/spec/17.putsn_puts_directive_spec.sh
Normal file
34
test/spec/17.putsn_puts_directive_spec.sh
Normal file
@@ -0,0 +1,34 @@
|
||||
#shellcheck shell=sh
|
||||
|
||||
Describe '%putsn directive'
|
||||
Example 'outputs arguments'
|
||||
foo() { %putsn value; }
|
||||
When call foo
|
||||
The entire output should eq "value${SHELLSPEC_LF}"
|
||||
End
|
||||
End
|
||||
|
||||
Describe '%= directive'
|
||||
Example 'is alias for %putsn'
|
||||
# shellcheck disable=SC2276
|
||||
foo() { %= value; }
|
||||
When call foo
|
||||
The entire output should eq "value${SHELLSPEC_LF}"
|
||||
End
|
||||
End
|
||||
|
||||
Describe '%puts directive'
|
||||
Example 'outputs arguments without last <LF>'
|
||||
foo() { %puts value; }
|
||||
When call foo
|
||||
The entire output should eq "value"
|
||||
End
|
||||
End
|
||||
|
||||
Describe '%- directive'
|
||||
Example 'is alias for %puts'
|
||||
foo() { %- value; }
|
||||
When call foo
|
||||
The entire output should eq "value"
|
||||
End
|
||||
End
|
||||
Reference in New Issue
Block a user