diff options
| author | Tomas Sandven <tomas@sandven.email> | 2022-04-07 10:39:46 +0200 |
|---|---|---|
| committer | Amaan Qureshi <amaanq12@gmail.com> | 2023-02-24 16:39:33 -0500 |
| commit | 06e8a91ce2aac663023d40cf57965ffade72c792 (patch) | |
| tree | afdf45b4e6a9fed2c52bc6a90a27d5ea66bae622 /tests/indent | |
| parent | feat(health): sort parser list for clarity (diff) | |
| download | nvim-treesitter-06e8a91ce2aac663023d40cf57965ffade72c792.tar nvim-treesitter-06e8a91ce2aac663023d40cf57965ffade72c792.tar.gz nvim-treesitter-06e8a91ce2aac663023d40cf57965ffade72c792.tar.bz2 nvim-treesitter-06e8a91ce2aac663023d40cf57965ffade72c792.tar.lz nvim-treesitter-06e8a91ce2aac663023d40cf57965ffade72c792.tar.xz nvim-treesitter-06e8a91ce2aac663023d40cf57965ffade72c792.tar.zst nvim-treesitter-06e8a91ce2aac663023d40cf57965ffade72c792.zip | |
Add YANG indentation tests
Diffstat (limited to 'tests/indent')
| -rw-r--r-- | tests/indent/yang/module.yang | 58 | ||||
| -rw-r--r-- | tests/indent/yang_spec.lua | 23 |
2 files changed, 81 insertions, 0 deletions
diff --git a/tests/indent/yang/module.yang b/tests/indent/yang/module.yang new file mode 100644 index 000000000..29c911fa0 --- /dev/null +++ b/tests/indent/yang/module.yang @@ -0,0 +1,58 @@ +module test-module { + yang-version 1.1; + namespace "http://example.com"; + prefix test; + + import ietf-inet-types { prefix inet; } + import tailf-ncs { + prefix ncs; + } + + description "Multi-line strings has indentation + aligned with the first line."; + + typedef foo { + type enumeration { + enum "foo"; + enum "bar"; + } + } + + ncs:plan-outline test-nano-service { + description "Testing indentation of extension statements."; + + ncs:component-type "ncs:self" { + ncs:state "ncs:init" { + ncs:create { + ncs:nano-callback; + } + } + ncs:state "ncs:ready"; + } + + ncs:component-type "alloc:resource-allocator" { + ncs:state "ncs:init"; + ncs:state "alloc:resources-allocated"; + ncs:state "ncs:ready"; + } + } + + container test { + } + + augment /alloc:resource-allocator { + description "Augmentation for the resource allocator mock services."; + + list test-nano-service { + key "id"; + + leaf id { + type string; + description + "I'm a multi-line string + + Starting on the next line from the statement."; + } + } + } +} diff --git a/tests/indent/yang_spec.lua b/tests/indent/yang_spec.lua new file mode 100644 index 000000000..c5ff2c886 --- /dev/null +++ b/tests/indent/yang_spec.lua @@ -0,0 +1,23 @@ +local Runner = require("tests.indent.common").Runner + +local run = Runner:new(it, "tests/indent/yang", { + tabstop = 2, + shiftwidth = 2, + softtabstop = 0, + expandtab = true, +}) + +describe("indent YANG:", function() + describe("whole file:", function() + run:whole_file(".", { + expected_failures = {}, + }) + end) + + describe("new line:", function() + run:new_line("module.yang", { on_line = 12, text = "# Aligned indentation ended", indent = 2 }) + run:new_line("module.yang", { on_line = 37, text = "# Test", indent = 2 }) + run:new_line("module.yang", { on_line = 40, text = "# Test", indent = 4 }) + run:new_line("module.yang", { on_line = 52, text = "Aligned string!", indent = 4 }) + end) +end) |
