pi-usereq 0.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.g.conf +20 -0
- package/.github/workflows/release-npm.yml +131 -0
- package/.gitignore +270 -0
- package/CHANGELOG.md +221 -0
- package/LICENSE +674 -0
- package/README.md +260 -0
- package/TODO.md +20 -0
- package/docs/pi.dev/agent-document-manifest.json +6399 -0
- package/docs/pi.dev/coding-agent-docs/compaction.md +394 -0
- package/docs/pi.dev/coding-agent-docs/custom-provider.md +596 -0
- package/docs/pi.dev/coding-agent-docs/development.md +71 -0
- package/docs/pi.dev/coding-agent-docs/extensions.md +2262 -0
- package/docs/pi.dev/coding-agent-docs/images/doom-extension.png +0 -0
- package/docs/pi.dev/coding-agent-docs/images/exy.png +0 -0
- package/docs/pi.dev/coding-agent-docs/images/interactive-mode.png +0 -0
- package/docs/pi.dev/coding-agent-docs/images/tree-view.png +0 -0
- package/docs/pi.dev/coding-agent-docs/json.md +82 -0
- package/docs/pi.dev/coding-agent-docs/keybindings.md +175 -0
- package/docs/pi.dev/coding-agent-docs/models.md +392 -0
- package/docs/pi.dev/coding-agent-docs/packages.md +218 -0
- package/docs/pi.dev/coding-agent-docs/prompt-templates.md +67 -0
- package/docs/pi.dev/coding-agent-docs/providers.md +195 -0
- package/docs/pi.dev/coding-agent-docs/rpc.md +1377 -0
- package/docs/pi.dev/coding-agent-docs/sdk.md +1124 -0
- package/docs/pi.dev/coding-agent-docs/session.md +412 -0
- package/docs/pi.dev/coding-agent-docs/settings.md +247 -0
- package/docs/pi.dev/coding-agent-docs/shell-aliases.md +13 -0
- package/docs/pi.dev/coding-agent-docs/skills.md +232 -0
- package/docs/pi.dev/coding-agent-docs/terminal-setup.md +106 -0
- package/docs/pi.dev/coding-agent-docs/termux.md +127 -0
- package/docs/pi.dev/coding-agent-docs/themes.md +295 -0
- package/docs/pi.dev/coding-agent-docs/tmux.md +61 -0
- package/docs/pi.dev/coding-agent-docs/tree.md +231 -0
- package/docs/pi.dev/coding-agent-docs/tui.md +887 -0
- package/docs/pi.dev/coding-agent-docs/windows.md +17 -0
- package/docs/pi.dev/mom-docs/artifacts-server.md +475 -0
- package/docs/pi.dev/mom-docs/events.md +307 -0
- package/docs/pi.dev/mom-docs/new.md +970 -0
- package/docs/pi.dev/mom-docs/sandbox.md +153 -0
- package/docs/pi.dev/mom-docs/slack-bot-minimal-guide.md +399 -0
- package/docs/pi.dev/mom-docs/v86.md +319 -0
- package/docs/pi.dev/pods-docs/gml-4.5.md +189 -0
- package/docs/pi.dev/pods-docs/gpt-oss.md +233 -0
- package/docs/pi.dev/pods-docs/implementation-plan.md +183 -0
- package/docs/pi.dev/pods-docs/kimi-k2.md +197 -0
- package/docs/pi.dev/pods-docs/models.md +116 -0
- package/docs/pi.dev/pods-docs/plan.md +166 -0
- package/docs/pi.dev/pods-docs/qwen3-coder.md +132 -0
- package/images/flowchart-bw.png +0 -0
- package/images/flowchart-bw.svg +102 -0
- package/images/flowchart.md +100 -0
- package/images/flowchart.png +0 -0
- package/images/flowchart.svg +3 -0
- package/package.json +46 -0
- package/req/docs/REFERENCES.md +4554 -0
- package/req/docs/REQUIREMENTS.md +475 -0
- package/req/docs/WORKFLOW.md +1059 -0
- package/scripts/debug-extension.ts +497 -0
- package/scripts/lib/extension-debug-harness.ts +450 -0
- package/scripts/lib/recording-extension-api.ts +786 -0
- package/scripts/lib/sdk-smoke.ts +503 -0
- package/scripts/pi-usereq-debug.sh +330 -0
- package/scripts/tool-args-to-params.ts +208 -0
- package/src/cli.ts +349 -0
- package/src/core/agent-tool-json.ts +621 -0
- package/src/core/compress-files.ts +72 -0
- package/src/core/compress-payload.ts +648 -0
- package/src/core/compress.ts +464 -0
- package/src/core/config.ts +272 -0
- package/src/core/doxygen-parser.ts +318 -0
- package/src/core/errors.ts +31 -0
- package/src/core/extension-status.ts +660 -0
- package/src/core/find-constructs.ts +319 -0
- package/src/core/find-payload.ts +915 -0
- package/src/core/generate-markdown.ts +120 -0
- package/src/core/path-context.ts +196 -0
- package/src/core/pi-notify.ts +430 -0
- package/src/core/pi-usereq-tools.ts +140 -0
- package/src/core/prompts.ts +184 -0
- package/src/core/reference-payload.ts +818 -0
- package/src/core/resources.ts +63 -0
- package/src/core/runtime-project-paths.ts +99 -0
- package/src/core/settings-menu.ts +233 -0
- package/src/core/source-analyzer.ts +1721 -0
- package/src/core/static-check.ts +674 -0
- package/src/core/token-counter.ts +729 -0
- package/src/core/tool-runner.ts +717 -0
- package/src/core/utils.ts +185 -0
- package/src/index.ts +2209 -0
- package/src/resources/guidelines/Google_C++_Style_Guide.md +3711 -0
- package/src/resources/guidelines/Google_Python_Style_Guide.md +3709 -0
- package/src/resources/prompts/analyze.md +130 -0
- package/src/resources/prompts/change.md +227 -0
- package/src/resources/prompts/check.md +139 -0
- package/src/resources/prompts/cover.md +219 -0
- package/src/resources/prompts/create.md +104 -0
- package/src/resources/prompts/fix.md +221 -0
- package/src/resources/prompts/flowchart.md +220 -0
- package/src/resources/prompts/implement.md +163 -0
- package/src/resources/prompts/new.md +226 -0
- package/src/resources/prompts/readme.md +182 -0
- package/src/resources/prompts/recreate.md +213 -0
- package/src/resources/prompts/refactor.md +213 -0
- package/src/resources/prompts/references.md +100 -0
- package/src/resources/prompts/renumber.md +119 -0
- package/src/resources/prompts/workflow.md +202 -0
- package/src/resources/prompts/write.md +99 -0
- package/src/resources/sounds/Machine-alert-beep-sound-effect.mp3 +0 -0
- package/src/resources/sounds/Soft-high-tech-notification-sound-effect.mp3 +0 -0
- package/src/resources/templates/Document_Source_Code_in_Doxygen_Style.md +130 -0
- package/src/resources/templates/HDT_Test_Authoring_Guide.md +318 -0
- package/src/resources/templates/Requirements_Template.md +78 -0
- package/tests/attended-results-scenarios.ts +758 -0
- package/tests/attended-results.test.ts +39 -0
- package/tests/cli-command-option-parity.test.ts +815 -0
- package/tests/debug-extension-harness.test.ts +463 -0
- package/tests/extension-registration.test.ts +2006 -0
- package/tests/fixtures/fixture_c.c +361 -0
- package/tests/fixtures/fixture_cpp.cpp +407 -0
- package/tests/fixtures/fixture_csharp.cs +411 -0
- package/tests/fixtures/fixture_elixir.ex +409 -0
- package/tests/fixtures/fixture_go.go +341 -0
- package/tests/fixtures/fixture_haskell.hs +250 -0
- package/tests/fixtures/fixture_java.java +430 -0
- package/tests/fixtures/fixture_javascript.js +383 -0
- package/tests/fixtures/fixture_kotlin.kt +451 -0
- package/tests/fixtures/fixture_lua.lua +276 -0
- package/tests/fixtures/fixture_perl.pl +310 -0
- package/tests/fixtures/fixture_php.php +433 -0
- package/tests/fixtures/fixture_python.py +502 -0
- package/tests/fixtures/fixture_ruby.rb +345 -0
- package/tests/fixtures/fixture_rust.rs +380 -0
- package/tests/fixtures/fixture_scala.scala +398 -0
- package/tests/fixtures/fixture_shell.sh +276 -0
- package/tests/fixtures/fixture_swift.swift +397 -0
- package/tests/fixtures/fixture_typescript.ts +434 -0
- package/tests/fixtures/fixture_zig.zig +295 -0
- package/tests/fixtures_attended_results/project/compress-line-numbers.json +5 -0
- package/tests/fixtures_attended_results/project/compress.json +5 -0
- package/tests/fixtures_attended_results/project/enable-static-check-invalid-command.json +5 -0
- package/tests/fixtures_attended_results/project/enable-static-check-valid.json +5 -0
- package/tests/fixtures_attended_results/project/files-static-check.json +5 -0
- package/tests/fixtures_attended_results/project/find-line-numbers.json +5 -0
- package/tests/fixtures_attended_results/project/find.json +5 -0
- package/tests/fixtures_attended_results/project/get-base-path.json +5 -0
- package/tests/fixtures_attended_results/project/git-check-clean.json +5 -0
- package/tests/fixtures_attended_results/project/git-check-dirty.json +5 -0
- package/tests/fixtures_attended_results/project/git-path.json +5 -0
- package/tests/fixtures_attended_results/project/git-wt-create-invalid.json +5 -0
- package/tests/fixtures_attended_results/project/git-wt-create-valid.json +5 -0
- package/tests/fixtures_attended_results/project/git-wt-delete-nonexistent.json +5 -0
- package/tests/fixtures_attended_results/project/git-wt-delete-valid.json +5 -0
- package/tests/fixtures_attended_results/project/git-wt-name.json +5 -0
- package/tests/fixtures_attended_results/project/references.json +5 -0
- package/tests/fixtures_attended_results/project/static-check.json +5 -0
- package/tests/fixtures_attended_results/project/tokens.json +5 -0
- package/tests/fixtures_attended_results/standalone/files-compress/fixture_c.c.json +5 -0
- package/tests/fixtures_attended_results/standalone/files-compress/fixture_cpp.cpp.json +5 -0
- package/tests/fixtures_attended_results/standalone/files-compress/fixture_csharp.cs.json +5 -0
- package/tests/fixtures_attended_results/standalone/files-compress/fixture_elixir.ex.json +5 -0
- package/tests/fixtures_attended_results/standalone/files-compress/fixture_go.go.json +5 -0
- package/tests/fixtures_attended_results/standalone/files-compress/fixture_haskell.hs.json +5 -0
- package/tests/fixtures_attended_results/standalone/files-compress/fixture_java.java.json +5 -0
- package/tests/fixtures_attended_results/standalone/files-compress/fixture_javascript.js.json +5 -0
- package/tests/fixtures_attended_results/standalone/files-compress/fixture_kotlin.kt.json +5 -0
- package/tests/fixtures_attended_results/standalone/files-compress/fixture_lua.lua.json +5 -0
- package/tests/fixtures_attended_results/standalone/files-compress/fixture_perl.pl.json +5 -0
- package/tests/fixtures_attended_results/standalone/files-compress/fixture_php.php.json +5 -0
- package/tests/fixtures_attended_results/standalone/files-compress/fixture_python.py.json +5 -0
- package/tests/fixtures_attended_results/standalone/files-compress/fixture_ruby.rb.json +5 -0
- package/tests/fixtures_attended_results/standalone/files-compress/fixture_rust.rs.json +5 -0
- package/tests/fixtures_attended_results/standalone/files-compress/fixture_scala.scala.json +5 -0
- package/tests/fixtures_attended_results/standalone/files-compress/fixture_shell.sh.json +5 -0
- package/tests/fixtures_attended_results/standalone/files-compress/fixture_swift.swift.json +5 -0
- package/tests/fixtures_attended_results/standalone/files-compress/fixture_typescript.ts.json +5 -0
- package/tests/fixtures_attended_results/standalone/files-compress/fixture_zig.zig.json +5 -0
- package/tests/fixtures_attended_results/standalone/files-compress-line-numbers/fixture_c.c.json +5 -0
- package/tests/fixtures_attended_results/standalone/files-compress-line-numbers/fixture_cpp.cpp.json +5 -0
- package/tests/fixtures_attended_results/standalone/files-compress-line-numbers/fixture_csharp.cs.json +5 -0
- package/tests/fixtures_attended_results/standalone/files-compress-line-numbers/fixture_elixir.ex.json +5 -0
- package/tests/fixtures_attended_results/standalone/files-compress-line-numbers/fixture_go.go.json +5 -0
- package/tests/fixtures_attended_results/standalone/files-compress-line-numbers/fixture_haskell.hs.json +5 -0
- package/tests/fixtures_attended_results/standalone/files-compress-line-numbers/fixture_java.java.json +5 -0
- package/tests/fixtures_attended_results/standalone/files-compress-line-numbers/fixture_javascript.js.json +5 -0
- package/tests/fixtures_attended_results/standalone/files-compress-line-numbers/fixture_kotlin.kt.json +5 -0
- package/tests/fixtures_attended_results/standalone/files-compress-line-numbers/fixture_lua.lua.json +5 -0
- package/tests/fixtures_attended_results/standalone/files-compress-line-numbers/fixture_perl.pl.json +5 -0
- package/tests/fixtures_attended_results/standalone/files-compress-line-numbers/fixture_php.php.json +5 -0
- package/tests/fixtures_attended_results/standalone/files-compress-line-numbers/fixture_python.py.json +5 -0
- package/tests/fixtures_attended_results/standalone/files-compress-line-numbers/fixture_ruby.rb.json +5 -0
- package/tests/fixtures_attended_results/standalone/files-compress-line-numbers/fixture_rust.rs.json +5 -0
- package/tests/fixtures_attended_results/standalone/files-compress-line-numbers/fixture_scala.scala.json +5 -0
- package/tests/fixtures_attended_results/standalone/files-compress-line-numbers/fixture_shell.sh.json +5 -0
- package/tests/fixtures_attended_results/standalone/files-compress-line-numbers/fixture_swift.swift.json +5 -0
- package/tests/fixtures_attended_results/standalone/files-compress-line-numbers/fixture_typescript.ts.json +5 -0
- package/tests/fixtures_attended_results/standalone/files-compress-line-numbers/fixture_zig.zig.json +5 -0
- package/tests/fixtures_attended_results/standalone/files-find/fixture_c.c.json +5 -0
- package/tests/fixtures_attended_results/standalone/files-find/fixture_cpp.cpp.json +5 -0
- package/tests/fixtures_attended_results/standalone/files-find/fixture_csharp.cs.json +5 -0
- package/tests/fixtures_attended_results/standalone/files-find/fixture_elixir.ex.json +5 -0
- package/tests/fixtures_attended_results/standalone/files-find/fixture_go.go.json +5 -0
- package/tests/fixtures_attended_results/standalone/files-find/fixture_haskell.hs.json +5 -0
- package/tests/fixtures_attended_results/standalone/files-find/fixture_java.java.json +5 -0
- package/tests/fixtures_attended_results/standalone/files-find/fixture_javascript.js.json +5 -0
- package/tests/fixtures_attended_results/standalone/files-find/fixture_kotlin.kt.json +5 -0
- package/tests/fixtures_attended_results/standalone/files-find/fixture_lua.lua.json +5 -0
- package/tests/fixtures_attended_results/standalone/files-find/fixture_perl.pl.json +5 -0
- package/tests/fixtures_attended_results/standalone/files-find/fixture_php.php.json +5 -0
- package/tests/fixtures_attended_results/standalone/files-find/fixture_python.py.json +5 -0
- package/tests/fixtures_attended_results/standalone/files-find/fixture_ruby.rb.json +5 -0
- package/tests/fixtures_attended_results/standalone/files-find/fixture_rust.rs.json +5 -0
- package/tests/fixtures_attended_results/standalone/files-find/fixture_scala.scala.json +5 -0
- package/tests/fixtures_attended_results/standalone/files-find/fixture_shell.sh.json +5 -0
- package/tests/fixtures_attended_results/standalone/files-find/fixture_swift.swift.json +5 -0
- package/tests/fixtures_attended_results/standalone/files-find/fixture_typescript.ts.json +5 -0
- package/tests/fixtures_attended_results/standalone/files-find/fixture_zig.zig.json +5 -0
- package/tests/fixtures_attended_results/standalone/files-find-line-numbers/fixture_c.c.json +5 -0
- package/tests/fixtures_attended_results/standalone/files-find-line-numbers/fixture_cpp.cpp.json +5 -0
- package/tests/fixtures_attended_results/standalone/files-find-line-numbers/fixture_csharp.cs.json +5 -0
- package/tests/fixtures_attended_results/standalone/files-find-line-numbers/fixture_elixir.ex.json +5 -0
- package/tests/fixtures_attended_results/standalone/files-find-line-numbers/fixture_go.go.json +5 -0
- package/tests/fixtures_attended_results/standalone/files-find-line-numbers/fixture_haskell.hs.json +5 -0
- package/tests/fixtures_attended_results/standalone/files-find-line-numbers/fixture_java.java.json +5 -0
- package/tests/fixtures_attended_results/standalone/files-find-line-numbers/fixture_javascript.js.json +5 -0
- package/tests/fixtures_attended_results/standalone/files-find-line-numbers/fixture_kotlin.kt.json +5 -0
- package/tests/fixtures_attended_results/standalone/files-find-line-numbers/fixture_lua.lua.json +5 -0
- package/tests/fixtures_attended_results/standalone/files-find-line-numbers/fixture_perl.pl.json +5 -0
- package/tests/fixtures_attended_results/standalone/files-find-line-numbers/fixture_php.php.json +5 -0
- package/tests/fixtures_attended_results/standalone/files-find-line-numbers/fixture_python.py.json +5 -0
- package/tests/fixtures_attended_results/standalone/files-find-line-numbers/fixture_ruby.rb.json +5 -0
- package/tests/fixtures_attended_results/standalone/files-find-line-numbers/fixture_rust.rs.json +5 -0
- package/tests/fixtures_attended_results/standalone/files-find-line-numbers/fixture_scala.scala.json +5 -0
- package/tests/fixtures_attended_results/standalone/files-find-line-numbers/fixture_shell.sh.json +5 -0
- package/tests/fixtures_attended_results/standalone/files-find-line-numbers/fixture_swift.swift.json +5 -0
- package/tests/fixtures_attended_results/standalone/files-find-line-numbers/fixture_typescript.ts.json +5 -0
- package/tests/fixtures_attended_results/standalone/files-find-line-numbers/fixture_zig.zig.json +5 -0
- package/tests/fixtures_attended_results/standalone/files-references/fixture_c.c.json +5 -0
- package/tests/fixtures_attended_results/standalone/files-references/fixture_cpp.cpp.json +5 -0
- package/tests/fixtures_attended_results/standalone/files-references/fixture_csharp.cs.json +5 -0
- package/tests/fixtures_attended_results/standalone/files-references/fixture_elixir.ex.json +5 -0
- package/tests/fixtures_attended_results/standalone/files-references/fixture_go.go.json +5 -0
- package/tests/fixtures_attended_results/standalone/files-references/fixture_haskell.hs.json +5 -0
- package/tests/fixtures_attended_results/standalone/files-references/fixture_java.java.json +5 -0
- package/tests/fixtures_attended_results/standalone/files-references/fixture_javascript.js.json +5 -0
- package/tests/fixtures_attended_results/standalone/files-references/fixture_kotlin.kt.json +5 -0
- package/tests/fixtures_attended_results/standalone/files-references/fixture_lua.lua.json +5 -0
- package/tests/fixtures_attended_results/standalone/files-references/fixture_perl.pl.json +5 -0
- package/tests/fixtures_attended_results/standalone/files-references/fixture_php.php.json +5 -0
- package/tests/fixtures_attended_results/standalone/files-references/fixture_python.py.json +5 -0
- package/tests/fixtures_attended_results/standalone/files-references/fixture_ruby.rb.json +5 -0
- package/tests/fixtures_attended_results/standalone/files-references/fixture_rust.rs.json +5 -0
- package/tests/fixtures_attended_results/standalone/files-references/fixture_scala.scala.json +5 -0
- package/tests/fixtures_attended_results/standalone/files-references/fixture_shell.sh.json +5 -0
- package/tests/fixtures_attended_results/standalone/files-references/fixture_swift.swift.json +5 -0
- package/tests/fixtures_attended_results/standalone/files-references/fixture_typescript.ts.json +5 -0
- package/tests/fixtures_attended_results/standalone/files-references/fixture_zig.zig.json +5 -0
- package/tests/fixtures_attended_results/standalone/files-tokens/fixture_c.c.json +5 -0
- package/tests/fixtures_attended_results/standalone/files-tokens/fixture_cpp.cpp.json +5 -0
- package/tests/fixtures_attended_results/standalone/files-tokens/fixture_csharp.cs.json +5 -0
- package/tests/fixtures_attended_results/standalone/files-tokens/fixture_elixir.ex.json +5 -0
- package/tests/fixtures_attended_results/standalone/files-tokens/fixture_go.go.json +5 -0
- package/tests/fixtures_attended_results/standalone/files-tokens/fixture_haskell.hs.json +5 -0
- package/tests/fixtures_attended_results/standalone/files-tokens/fixture_java.java.json +5 -0
- package/tests/fixtures_attended_results/standalone/files-tokens/fixture_javascript.js.json +5 -0
- package/tests/fixtures_attended_results/standalone/files-tokens/fixture_kotlin.kt.json +5 -0
- package/tests/fixtures_attended_results/standalone/files-tokens/fixture_lua.lua.json +5 -0
- package/tests/fixtures_attended_results/standalone/files-tokens/fixture_perl.pl.json +5 -0
- package/tests/fixtures_attended_results/standalone/files-tokens/fixture_php.php.json +5 -0
- package/tests/fixtures_attended_results/standalone/files-tokens/fixture_python.py.json +5 -0
- package/tests/fixtures_attended_results/standalone/files-tokens/fixture_ruby.rb.json +5 -0
- package/tests/fixtures_attended_results/standalone/files-tokens/fixture_rust.rs.json +5 -0
- package/tests/fixtures_attended_results/standalone/files-tokens/fixture_scala.scala.json +5 -0
- package/tests/fixtures_attended_results/standalone/files-tokens/fixture_shell.sh.json +5 -0
- package/tests/fixtures_attended_results/standalone/files-tokens/fixture_swift.swift.json +5 -0
- package/tests/fixtures_attended_results/standalone/files-tokens/fixture_typescript.ts.json +5 -0
- package/tests/fixtures_attended_results/standalone/files-tokens/fixture_zig.zig.json +5 -0
- package/tests/fixtures_attended_results/standalone/test-static-check-command/fixture_c.c.json +5 -0
- package/tests/fixtures_attended_results/standalone/test-static-check-command/fixture_cpp.cpp.json +5 -0
- package/tests/fixtures_attended_results/standalone/test-static-check-command/fixture_csharp.cs.json +5 -0
- package/tests/fixtures_attended_results/standalone/test-static-check-command/fixture_elixir.ex.json +5 -0
- package/tests/fixtures_attended_results/standalone/test-static-check-command/fixture_go.go.json +5 -0
- package/tests/fixtures_attended_results/standalone/test-static-check-command/fixture_haskell.hs.json +5 -0
- package/tests/fixtures_attended_results/standalone/test-static-check-command/fixture_java.java.json +5 -0
- package/tests/fixtures_attended_results/standalone/test-static-check-command/fixture_javascript.js.json +5 -0
- package/tests/fixtures_attended_results/standalone/test-static-check-command/fixture_kotlin.kt.json +5 -0
- package/tests/fixtures_attended_results/standalone/test-static-check-command/fixture_lua.lua.json +5 -0
- package/tests/fixtures_attended_results/standalone/test-static-check-command/fixture_perl.pl.json +5 -0
- package/tests/fixtures_attended_results/standalone/test-static-check-command/fixture_php.php.json +5 -0
- package/tests/fixtures_attended_results/standalone/test-static-check-command/fixture_python.py.json +5 -0
- package/tests/fixtures_attended_results/standalone/test-static-check-command/fixture_ruby.rb.json +5 -0
- package/tests/fixtures_attended_results/standalone/test-static-check-command/fixture_rust.rs.json +5 -0
- package/tests/fixtures_attended_results/standalone/test-static-check-command/fixture_scala.scala.json +5 -0
- package/tests/fixtures_attended_results/standalone/test-static-check-command/fixture_shell.sh.json +5 -0
- package/tests/fixtures_attended_results/standalone/test-static-check-command/fixture_swift.swift.json +5 -0
- package/tests/fixtures_attended_results/standalone/test-static-check-command/fixture_typescript.ts.json +5 -0
- package/tests/fixtures_attended_results/standalone/test-static-check-command/fixture_zig.zig.json +5 -0
- package/tests/fixtures_attended_results/standalone/test-static-check-dummy/fixture_c.c.json +5 -0
- package/tests/fixtures_attended_results/standalone/test-static-check-dummy/fixture_cpp.cpp.json +5 -0
- package/tests/fixtures_attended_results/standalone/test-static-check-dummy/fixture_csharp.cs.json +5 -0
- package/tests/fixtures_attended_results/standalone/test-static-check-dummy/fixture_elixir.ex.json +5 -0
- package/tests/fixtures_attended_results/standalone/test-static-check-dummy/fixture_go.go.json +5 -0
- package/tests/fixtures_attended_results/standalone/test-static-check-dummy/fixture_haskell.hs.json +5 -0
- package/tests/fixtures_attended_results/standalone/test-static-check-dummy/fixture_java.java.json +5 -0
- package/tests/fixtures_attended_results/standalone/test-static-check-dummy/fixture_javascript.js.json +5 -0
- package/tests/fixtures_attended_results/standalone/test-static-check-dummy/fixture_kotlin.kt.json +5 -0
- package/tests/fixtures_attended_results/standalone/test-static-check-dummy/fixture_lua.lua.json +5 -0
- package/tests/fixtures_attended_results/standalone/test-static-check-dummy/fixture_perl.pl.json +5 -0
- package/tests/fixtures_attended_results/standalone/test-static-check-dummy/fixture_php.php.json +5 -0
- package/tests/fixtures_attended_results/standalone/test-static-check-dummy/fixture_python.py.json +5 -0
- package/tests/fixtures_attended_results/standalone/test-static-check-dummy/fixture_ruby.rb.json +5 -0
- package/tests/fixtures_attended_results/standalone/test-static-check-dummy/fixture_rust.rs.json +5 -0
- package/tests/fixtures_attended_results/standalone/test-static-check-dummy/fixture_scala.scala.json +5 -0
- package/tests/fixtures_attended_results/standalone/test-static-check-dummy/fixture_shell.sh.json +5 -0
- package/tests/fixtures_attended_results/standalone/test-static-check-dummy/fixture_swift.swift.json +5 -0
- package/tests/fixtures_attended_results/standalone/test-static-check-dummy/fixture_typescript.ts.json +5 -0
- package/tests/fixtures_attended_results/standalone/test-static-check-dummy/fixture_zig.zig.json +5 -0
- package/tests/fixtures_attended_results/standalone/test-static-check-pylance/fixture_c.c.json +5 -0
- package/tests/fixtures_attended_results/standalone/test-static-check-pylance/fixture_cpp.cpp.json +5 -0
- package/tests/fixtures_attended_results/standalone/test-static-check-pylance/fixture_csharp.cs.json +5 -0
- package/tests/fixtures_attended_results/standalone/test-static-check-pylance/fixture_elixir.ex.json +5 -0
- package/tests/fixtures_attended_results/standalone/test-static-check-pylance/fixture_go.go.json +5 -0
- package/tests/fixtures_attended_results/standalone/test-static-check-pylance/fixture_haskell.hs.json +5 -0
- package/tests/fixtures_attended_results/standalone/test-static-check-pylance/fixture_java.java.json +5 -0
- package/tests/fixtures_attended_results/standalone/test-static-check-pylance/fixture_javascript.js.json +5 -0
- package/tests/fixtures_attended_results/standalone/test-static-check-pylance/fixture_kotlin.kt.json +5 -0
- package/tests/fixtures_attended_results/standalone/test-static-check-pylance/fixture_lua.lua.json +5 -0
- package/tests/fixtures_attended_results/standalone/test-static-check-pylance/fixture_perl.pl.json +5 -0
- package/tests/fixtures_attended_results/standalone/test-static-check-pylance/fixture_php.php.json +5 -0
- package/tests/fixtures_attended_results/standalone/test-static-check-pylance/fixture_python.py.json +5 -0
- package/tests/fixtures_attended_results/standalone/test-static-check-pylance/fixture_ruby.rb.json +5 -0
- package/tests/fixtures_attended_results/standalone/test-static-check-pylance/fixture_rust.rs.json +5 -0
- package/tests/fixtures_attended_results/standalone/test-static-check-pylance/fixture_scala.scala.json +5 -0
- package/tests/fixtures_attended_results/standalone/test-static-check-pylance/fixture_shell.sh.json +5 -0
- package/tests/fixtures_attended_results/standalone/test-static-check-pylance/fixture_swift.swift.json +5 -0
- package/tests/fixtures_attended_results/standalone/test-static-check-pylance/fixture_typescript.ts.json +5 -0
- package/tests/fixtures_attended_results/standalone/test-static-check-pylance/fixture_zig.zig.json +5 -0
- package/tests/fixtures_attended_results/standalone/test-static-check-ruff/fixture_c.c.json +5 -0
- package/tests/fixtures_attended_results/standalone/test-static-check-ruff/fixture_cpp.cpp.json +5 -0
- package/tests/fixtures_attended_results/standalone/test-static-check-ruff/fixture_csharp.cs.json +5 -0
- package/tests/fixtures_attended_results/standalone/test-static-check-ruff/fixture_elixir.ex.json +5 -0
- package/tests/fixtures_attended_results/standalone/test-static-check-ruff/fixture_go.go.json +5 -0
- package/tests/fixtures_attended_results/standalone/test-static-check-ruff/fixture_haskell.hs.json +5 -0
- package/tests/fixtures_attended_results/standalone/test-static-check-ruff/fixture_java.java.json +5 -0
- package/tests/fixtures_attended_results/standalone/test-static-check-ruff/fixture_javascript.js.json +5 -0
- package/tests/fixtures_attended_results/standalone/test-static-check-ruff/fixture_kotlin.kt.json +5 -0
- package/tests/fixtures_attended_results/standalone/test-static-check-ruff/fixture_lua.lua.json +5 -0
- package/tests/fixtures_attended_results/standalone/test-static-check-ruff/fixture_perl.pl.json +5 -0
- package/tests/fixtures_attended_results/standalone/test-static-check-ruff/fixture_php.php.json +5 -0
- package/tests/fixtures_attended_results/standalone/test-static-check-ruff/fixture_python.py.json +5 -0
- package/tests/fixtures_attended_results/standalone/test-static-check-ruff/fixture_ruby.rb.json +5 -0
- package/tests/fixtures_attended_results/standalone/test-static-check-ruff/fixture_rust.rs.json +5 -0
- package/tests/fixtures_attended_results/standalone/test-static-check-ruff/fixture_scala.scala.json +5 -0
- package/tests/fixtures_attended_results/standalone/test-static-check-ruff/fixture_shell.sh.json +5 -0
- package/tests/fixtures_attended_results/standalone/test-static-check-ruff/fixture_swift.swift.json +5 -0
- package/tests/fixtures_attended_results/standalone/test-static-check-ruff/fixture_typescript.ts.json +5 -0
- package/tests/fixtures_attended_results/standalone/test-static-check-ruff/fixture_zig.zig.json +5 -0
- package/tests/helpers.ts +204 -0
- package/tests/oracle-project.test.ts +63 -0
- package/tests/oracle-standalone.test.ts +48 -0
- package/tests/prompt-rendering.test.ts +66 -0
- package/tests/release-workflow.test.ts +133 -0
|
@@ -0,0 +1,409 @@
|
|
|
1
|
+
# @file fixture_elixir.ex
|
|
2
|
+
# @brief Comprehensive Elixir test fixture for parser validation.
|
|
3
|
+
# @details Covers pattern matching, guards, pipe operator, behaviours,
|
|
4
|
+
# GenServer callbacks, supervisors, comprehensions, sigils,
|
|
5
|
+
# structs with enforce_keys, typespecs, and ExUnit testing.
|
|
6
|
+
# Single line comment
|
|
7
|
+
|
|
8
|
+
# ── Main module ───────────────────────────────────────────────────────
|
|
9
|
+
|
|
10
|
+
defmodule MyApp.Server do
|
|
11
|
+
@moduledoc """
|
|
12
|
+
GenServer implementation for managing application state.
|
|
13
|
+
|
|
14
|
+
Handles synchronous calls, asynchronous casts, and info messages.
|
|
15
|
+
Supports state initialization with validated options.
|
|
16
|
+
"""
|
|
17
|
+
|
|
18
|
+
use GenServer
|
|
19
|
+
import Enum
|
|
20
|
+
alias MyApp.Config
|
|
21
|
+
alias MyApp.Server.State
|
|
22
|
+
require Logger
|
|
23
|
+
|
|
24
|
+
@behaviour GenServer
|
|
25
|
+
|
|
26
|
+
# ── Constants ───────────────────────────────────────────────────────
|
|
27
|
+
|
|
28
|
+
# @brief Default timeout for GenServer calls in milliseconds.
|
|
29
|
+
@default_timeout 5_000
|
|
30
|
+
|
|
31
|
+
# @brief Maximum items stored in server state.
|
|
32
|
+
@max_items 1_000
|
|
33
|
+
|
|
34
|
+
# ── Struct ──────────────────────────────────────────────────────────
|
|
35
|
+
|
|
36
|
+
@doc """
|
|
37
|
+
Internal state struct for the server.
|
|
38
|
+
|
|
39
|
+
@field name Server instance name.
|
|
40
|
+
@field port Listening port number.
|
|
41
|
+
@field items List of stored items.
|
|
42
|
+
@field started_at Timestamp of server start.
|
|
43
|
+
"""
|
|
44
|
+
defstruct [:name, :port, items: [], started_at: nil]
|
|
45
|
+
|
|
46
|
+
# ── Typespecs ───────────────────────────────────────────────────────
|
|
47
|
+
|
|
48
|
+
@type t :: %__MODULE__{
|
|
49
|
+
name: String.t(),
|
|
50
|
+
port: non_neg_integer(),
|
|
51
|
+
items: list(any()),
|
|
52
|
+
started_at: DateTime.t() | nil
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
@type option :: {:name, String.t()} | {:port, non_neg_integer()}
|
|
56
|
+
|
|
57
|
+
# ── Public API ──────────────────────────────────────────────────────
|
|
58
|
+
|
|
59
|
+
@doc """
|
|
60
|
+
Start a new server process linked to the caller.
|
|
61
|
+
|
|
62
|
+
@param opts Keyword list of options (:name, :port).
|
|
63
|
+
@return {:ok, pid} on success or {:error, reason} on failure.
|
|
64
|
+
"""
|
|
65
|
+
@spec start_link(keyword()) :: GenServer.on_start()
|
|
66
|
+
def start_link(opts) do
|
|
67
|
+
name = Keyword.get(opts, :name, "default")
|
|
68
|
+
GenServer.start_link(__MODULE__, opts, name: via_tuple(name))
|
|
69
|
+
end
|
|
70
|
+
|
|
71
|
+
@doc """
|
|
72
|
+
Add an item to the server's collection.
|
|
73
|
+
|
|
74
|
+
@param server The server PID or registered name.
|
|
75
|
+
@param item The item to store.
|
|
76
|
+
@return :ok
|
|
77
|
+
"""
|
|
78
|
+
@spec add_item(GenServer.server(), any()) :: :ok
|
|
79
|
+
def add_item(server, item) do
|
|
80
|
+
GenServer.call(server, {:add_item, item})
|
|
81
|
+
end
|
|
82
|
+
|
|
83
|
+
@doc """
|
|
84
|
+
Retrieve all stored items.
|
|
85
|
+
|
|
86
|
+
@param server The server PID or registered name.
|
|
87
|
+
@return List of stored items.
|
|
88
|
+
"""
|
|
89
|
+
@spec get_items(GenServer.server()) :: list(any())
|
|
90
|
+
def get_items(server) do
|
|
91
|
+
GenServer.call(server, :get_items)
|
|
92
|
+
end
|
|
93
|
+
|
|
94
|
+
@doc """
|
|
95
|
+
Asynchronously notify the server of an event.
|
|
96
|
+
|
|
97
|
+
@param server The server PID.
|
|
98
|
+
@param event The event data to process.
|
|
99
|
+
@return :ok
|
|
100
|
+
"""
|
|
101
|
+
@spec notify(GenServer.server(), any()) :: :ok
|
|
102
|
+
def notify(server, event) do
|
|
103
|
+
GenServer.cast(server, {:notify, event})
|
|
104
|
+
end
|
|
105
|
+
|
|
106
|
+
# ── Private helpers ─────────────────────────────────────────────────
|
|
107
|
+
|
|
108
|
+
# @brief Generate a via-tuple for process registration.
|
|
109
|
+
# @param name The server name.
|
|
110
|
+
# @return Via-tuple for Registry lookup.
|
|
111
|
+
defp via_tuple(name) do
|
|
112
|
+
{:via, Registry, {MyApp.Registry, name}}
|
|
113
|
+
end
|
|
114
|
+
|
|
115
|
+
# ── GenServer callbacks ─────────────────────────────────────────────
|
|
116
|
+
|
|
117
|
+
@impl true
|
|
118
|
+
def init(opts) do
|
|
119
|
+
# Validate required options
|
|
120
|
+
name = Keyword.fetch!(opts, :name)
|
|
121
|
+
port = Keyword.get(opts, :port, 4000)
|
|
122
|
+
|
|
123
|
+
state = %__MODULE__{
|
|
124
|
+
name: name,
|
|
125
|
+
port: port,
|
|
126
|
+
started_at: DateTime.utc_now()
|
|
127
|
+
}
|
|
128
|
+
|
|
129
|
+
Logger.info("Server #{name} started on port #{port}")
|
|
130
|
+
{:ok, state}
|
|
131
|
+
end
|
|
132
|
+
|
|
133
|
+
@impl true
|
|
134
|
+
def handle_call({:add_item, item}, _from, state) do
|
|
135
|
+
# Check capacity before adding
|
|
136
|
+
if length(state.items) >= @max_items do
|
|
137
|
+
{:reply, {:error, :capacity_exceeded}, state}
|
|
138
|
+
else
|
|
139
|
+
new_state = %{state | items: [item | state.items]}
|
|
140
|
+
{:reply, :ok, new_state}
|
|
141
|
+
end
|
|
142
|
+
end
|
|
143
|
+
|
|
144
|
+
@impl true
|
|
145
|
+
def handle_call(:get_items, _from, state) do
|
|
146
|
+
{:reply, Enum.reverse(state.items), state}
|
|
147
|
+
end
|
|
148
|
+
|
|
149
|
+
@impl true
|
|
150
|
+
def handle_cast({:notify, event}, state) do
|
|
151
|
+
Logger.debug("Received event: #{inspect(event)}")
|
|
152
|
+
{:noreply, state}
|
|
153
|
+
end
|
|
154
|
+
|
|
155
|
+
@impl true
|
|
156
|
+
def handle_info(:timeout, state) do
|
|
157
|
+
Logger.warn("Server #{state.name} timed out")
|
|
158
|
+
{:noreply, state}
|
|
159
|
+
end
|
|
160
|
+
|
|
161
|
+
# @brief Handle internal state cleanup and maintenance.
|
|
162
|
+
# @param state Current server state.
|
|
163
|
+
# @return Updated state with pruned items.
|
|
164
|
+
defp handle_internal(state) do
|
|
165
|
+
# Prune items exceeding max capacity
|
|
166
|
+
pruned = Enum.take(state.items, @max_items)
|
|
167
|
+
%{state | items: pruned}
|
|
168
|
+
end
|
|
169
|
+
|
|
170
|
+
@doc """
|
|
171
|
+
Define a macro for compile-time code generation.
|
|
172
|
+
|
|
173
|
+
@param expr The expression to wrap.
|
|
174
|
+
@return Quoted AST wrapping the expression.
|
|
175
|
+
"""
|
|
176
|
+
defmacro my_macro(expr) do
|
|
177
|
+
quote do
|
|
178
|
+
result = unquote(expr)
|
|
179
|
+
Logger.debug("Macro result: #{inspect(result)}")
|
|
180
|
+
result
|
|
181
|
+
end
|
|
182
|
+
end
|
|
183
|
+
end
|
|
184
|
+
|
|
185
|
+
# ── Protocol ──────────────────────────────────────────────────────────
|
|
186
|
+
|
|
187
|
+
defprotocol Printable do
|
|
188
|
+
@moduledoc """
|
|
189
|
+
Protocol for types that can be printed as formatted strings.
|
|
190
|
+
"""
|
|
191
|
+
|
|
192
|
+
@doc """
|
|
193
|
+
Convert a value to its formatted string representation.
|
|
194
|
+
|
|
195
|
+
@param data The value to format.
|
|
196
|
+
@return Formatted string.
|
|
197
|
+
"""
|
|
198
|
+
@spec print(t) :: String.t()
|
|
199
|
+
def print(data)
|
|
200
|
+
end
|
|
201
|
+
|
|
202
|
+
# ── Protocol implementation ───────────────────────────────────────────
|
|
203
|
+
|
|
204
|
+
defimpl Printable, for: MyApp.Server do
|
|
205
|
+
@doc """
|
|
206
|
+
Format a server struct for display.
|
|
207
|
+
|
|
208
|
+
@param server The server struct to format.
|
|
209
|
+
@return String in format "Server(name:port)".
|
|
210
|
+
"""
|
|
211
|
+
def print(server) do
|
|
212
|
+
"Server(#{server.name}:#{server.port})"
|
|
213
|
+
end
|
|
214
|
+
end
|
|
215
|
+
|
|
216
|
+
defimpl Printable, for: BitString do
|
|
217
|
+
def print(str) do
|
|
218
|
+
"String(#{str})"
|
|
219
|
+
end
|
|
220
|
+
end
|
|
221
|
+
|
|
222
|
+
# ── Utility module with guards and pipes ──────────────────────────────
|
|
223
|
+
|
|
224
|
+
defmodule MyApp.Utils do
|
|
225
|
+
@moduledoc """
|
|
226
|
+
Utility functions demonstrating pattern matching, guards,
|
|
227
|
+
pipe operators, and comprehensions.
|
|
228
|
+
"""
|
|
229
|
+
|
|
230
|
+
@doc """
|
|
231
|
+
Classify a value using guard clauses and pattern matching.
|
|
232
|
+
|
|
233
|
+
@param value The value to classify.
|
|
234
|
+
@return Atom describing the value's category.
|
|
235
|
+
"""
|
|
236
|
+
@spec classify(any()) :: atom()
|
|
237
|
+
def classify(value) when is_integer(value) and value > 0, do: :positive
|
|
238
|
+
def classify(value) when is_integer(value) and value < 0, do: :negative
|
|
239
|
+
def classify(0), do: :zero
|
|
240
|
+
def classify(value) when is_binary(value), do: :string
|
|
241
|
+
def classify(value) when is_list(value), do: :list
|
|
242
|
+
def classify(_), do: :unknown
|
|
243
|
+
|
|
244
|
+
@doc """
|
|
245
|
+
Process a list using pipe operator for data transformation.
|
|
246
|
+
|
|
247
|
+
@param items List of strings to process.
|
|
248
|
+
@return Sorted list of unique uppercase strings.
|
|
249
|
+
"""
|
|
250
|
+
@spec process_list(list(String.t())) :: list(String.t())
|
|
251
|
+
def process_list(items) do
|
|
252
|
+
items
|
|
253
|
+
|> Enum.map(&String.trim/1)
|
|
254
|
+
|> Enum.reject(&(&1 == ""))
|
|
255
|
+
|> Enum.map(&String.upcase/1)
|
|
256
|
+
|> Enum.uniq()
|
|
257
|
+
|> Enum.sort()
|
|
258
|
+
end
|
|
259
|
+
|
|
260
|
+
@doc """
|
|
261
|
+
Demonstrate for-comprehension with multiple generators and filters.
|
|
262
|
+
|
|
263
|
+
@param range Upper bound for the search space.
|
|
264
|
+
@return List of Pythagorean triples.
|
|
265
|
+
"""
|
|
266
|
+
@spec pythagorean_triples(pos_integer()) :: list(tuple())
|
|
267
|
+
def pythagorean_triples(range) do
|
|
268
|
+
for a <- 1..range,
|
|
269
|
+
b <- a..range,
|
|
270
|
+
c <- b..range,
|
|
271
|
+
a * a + b * b == c * c do
|
|
272
|
+
{a, b, c}
|
|
273
|
+
end
|
|
274
|
+
end
|
|
275
|
+
|
|
276
|
+
@doc """
|
|
277
|
+
Safe division returning :error tuple on zero divisor.
|
|
278
|
+
|
|
279
|
+
@param a Dividend.
|
|
280
|
+
@param b Divisor.
|
|
281
|
+
@return {:ok, result} or {:error, :division_by_zero}.
|
|
282
|
+
"""
|
|
283
|
+
@spec safe_divide(number(), number()) :: {:ok, float()} | {:error, atom()}
|
|
284
|
+
def safe_divide(_, 0), do: {:error, :division_by_zero}
|
|
285
|
+
def safe_divide(a, b), do: {:ok, a / b}
|
|
286
|
+
|
|
287
|
+
@doc """
|
|
288
|
+
Recursively compute factorial with guard clause.
|
|
289
|
+
|
|
290
|
+
@param n Non-negative integer.
|
|
291
|
+
@return Factorial of n.
|
|
292
|
+
"""
|
|
293
|
+
@spec factorial(non_neg_integer()) :: pos_integer()
|
|
294
|
+
def factorial(0), do: 1
|
|
295
|
+
def factorial(n) when n > 0, do: n * factorial(n - 1)
|
|
296
|
+
end
|
|
297
|
+
|
|
298
|
+
# ── Behaviour definition ─────────────────────────────────────────────
|
|
299
|
+
|
|
300
|
+
defmodule MyApp.Plugin do
|
|
301
|
+
@moduledoc """
|
|
302
|
+
Behaviour defining the plugin interface.
|
|
303
|
+
"""
|
|
304
|
+
|
|
305
|
+
@doc "Initialize the plugin with configuration options."
|
|
306
|
+
@callback init(opts :: keyword()) :: {:ok, any()} | {:error, String.t()}
|
|
307
|
+
|
|
308
|
+
@doc "Execute the plugin's main logic."
|
|
309
|
+
@callback execute(state :: any()) :: :ok | {:error, String.t()}
|
|
310
|
+
|
|
311
|
+
@doc "Clean up plugin resources."
|
|
312
|
+
@callback cleanup(state :: any()) :: :ok
|
|
313
|
+
|
|
314
|
+
@optional_callbacks [cleanup: 1]
|
|
315
|
+
end
|
|
316
|
+
|
|
317
|
+
# coverage extension block
|
|
318
|
+
defmodule MyApp.Extra do
|
|
319
|
+
# inline module comment
|
|
320
|
+
defstruct [:name]
|
|
321
|
+
end
|
|
322
|
+
|
|
323
|
+
defmodule MyApp.Audit do
|
|
324
|
+
defstruct [:id]
|
|
325
|
+
end
|
|
326
|
+
|
|
327
|
+
defmodule MyApp.State do
|
|
328
|
+
defstruct [:status]
|
|
329
|
+
end
|
|
330
|
+
|
|
331
|
+
defmodule MyApp.Payload do
|
|
332
|
+
defstruct [:value]
|
|
333
|
+
end
|
|
334
|
+
|
|
335
|
+
defmodule MyApp.Context do
|
|
336
|
+
defstruct [:meta]
|
|
337
|
+
end
|
|
338
|
+
|
|
339
|
+
defprotocol Auditable do
|
|
340
|
+
def audit(data)
|
|
341
|
+
end
|
|
342
|
+
|
|
343
|
+
defprotocol Renderable do
|
|
344
|
+
def render(data)
|
|
345
|
+
end
|
|
346
|
+
|
|
347
|
+
defprotocol Parsable do
|
|
348
|
+
def parse(data)
|
|
349
|
+
end
|
|
350
|
+
|
|
351
|
+
defprotocol Validatable do
|
|
352
|
+
def validate(data)
|
|
353
|
+
end
|
|
354
|
+
|
|
355
|
+
defimpl Auditable, for: Any do
|
|
356
|
+
def audit(data), do: data
|
|
357
|
+
end
|
|
358
|
+
|
|
359
|
+
defimpl Renderable, for: Any do
|
|
360
|
+
def render(data), do: data
|
|
361
|
+
end
|
|
362
|
+
|
|
363
|
+
defimpl Parsable, for: Any do
|
|
364
|
+
def parse(data), do: data
|
|
365
|
+
end
|
|
366
|
+
|
|
367
|
+
defimpl Validatable, for: Any do
|
|
368
|
+
def validate(data), do: data
|
|
369
|
+
end
|
|
370
|
+
|
|
371
|
+
# REQ-COVER-SRS-231 START
|
|
372
|
+
defmodule ReqCoverElixir do
|
|
373
|
+
# @REQ-COVER-SRS-231 block 1
|
|
374
|
+
# @brief Coverage helper construct 1.
|
|
375
|
+
# @details Provides deterministic fixture-level Doxygen coverage block 1.
|
|
376
|
+
# @param value Input value for helper construct 1.
|
|
377
|
+
# @return Output value for helper construct 1.
|
|
378
|
+
def req_cover_elixir_1(value), do: value + 1
|
|
379
|
+
|
|
380
|
+
# @REQ-COVER-SRS-231 block 2
|
|
381
|
+
# @brief Coverage helper construct 2.
|
|
382
|
+
# @details Provides deterministic fixture-level Doxygen coverage block 2.
|
|
383
|
+
# @param value Input value for helper construct 2.
|
|
384
|
+
# @return Output value for helper construct 2.
|
|
385
|
+
def req_cover_elixir_2(value), do: value + 2
|
|
386
|
+
|
|
387
|
+
# @REQ-COVER-SRS-231 block 3
|
|
388
|
+
# @brief Coverage helper construct 3.
|
|
389
|
+
# @details Provides deterministic fixture-level Doxygen coverage block 3.
|
|
390
|
+
# @param value Input value for helper construct 3.
|
|
391
|
+
# @return Output value for helper construct 3.
|
|
392
|
+
def req_cover_elixir_3(value), do: value + 3
|
|
393
|
+
|
|
394
|
+
# @REQ-COVER-SRS-231 block 4
|
|
395
|
+
# @brief Coverage helper construct 4.
|
|
396
|
+
# @details Provides deterministic fixture-level Doxygen coverage block 4.
|
|
397
|
+
# @param value Input value for helper construct 4.
|
|
398
|
+
# @return Output value for helper construct 4.
|
|
399
|
+
def req_cover_elixir_4(value), do: value + 4
|
|
400
|
+
|
|
401
|
+
# @REQ-COVER-SRS-231 block 5
|
|
402
|
+
# @brief Coverage helper construct 5.
|
|
403
|
+
# @details Provides deterministic fixture-level Doxygen coverage block 5.
|
|
404
|
+
# @param value Input value for helper construct 5.
|
|
405
|
+
# @return Output value for helper construct 5.
|
|
406
|
+
def req_cover_elixir_5(value), do: value + 5
|
|
407
|
+
|
|
408
|
+
end
|
|
409
|
+
# REQ-COVER-SRS-231 END
|