aboutsummaryrefslogtreecommitdiffstats
path: root/tests/query/injections
diff options
context:
space:
mode:
authorlucario387 <hoangtun0810@gmail.com>2023-01-07 19:22:20 +0900
committerGitHub <noreply@github.com>2023-01-07 11:22:20 +0100
commit85d953449125702c7c11f4a2242c328f7a65fd5b (patch)
tree11c2d7a83fd9d267227690622e3eec6a1b01527a /tests/query/injections
parentfix(utils): swap_nodes calculates correct char_delta (#4110) (diff)
downloadnvim-treesitter-85d953449125702c7c11f4a2242c328f7a65fd5b.tar
nvim-treesitter-85d953449125702c7c11f4a2242c328f7a65fd5b.tar.gz
nvim-treesitter-85d953449125702c7c11f4a2242c328f7a65fd5b.tar.bz2
nvim-treesitter-85d953449125702c7c11f4a2242c328f7a65fd5b.tar.lz
nvim-treesitter-85d953449125702c7c11f4a2242c328f7a65fd5b.tar.xz
nvim-treesitter-85d953449125702c7c11f4a2242c328f7a65fd5b.tar.zst
nvim-treesitter-85d953449125702c7c11f4a2242c328f7a65fd5b.zip
allow negative assertion in injection tests (#4107)
* tests(vue, svelte): strengthen tests * fix(html, vue, svelte): fix wrong test format * allow negative assertions in injection tests
Diffstat (limited to 'tests/query/injections')
-rw-r--r--tests/query/injections/html/test-html-injections.html42
-rw-r--r--tests/query/injections/svelte/test-svelte-injections.svelte35
-rw-r--r--tests/query/injections/vue/negative-assertions.vue4
-rw-r--r--tests/query/injections/vue/test-vue-injections.vue84
4 files changed, 48 insertions, 117 deletions
diff --git a/tests/query/injections/html/test-html-injections.html b/tests/query/injections/html/test-html-injections.html
index 536ec8734..4449923c6 100644
--- a/tests/query/injections/html/test-html-injections.html
+++ b/tests/query/injections/html/test-html-injections.html
@@ -5,38 +5,20 @@
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link href="css/style.css" rel="stylesheet">
- <style>
- footer{
-/* ^ css
-*/
- }
- </style>
- <style title="Test Style without type attribute">
- footer{
-/* ^ css
-*/
- }
- </style>
- <style type="text/css" title="test style with defined type attribute">
- footer{
-/* ^ css
-*/
- }
- </style>
+ <style> footer{ } </style>
+ <!-- ^ css -->
+ <style title="Test Style without type attribute"> footer{ } </style>
+ <!-- ^ css -->
+ <style type="text/css" title="test style with defined type attribute"> footer{ } </style>
+ <!-- ^ css -->
</head>
<body>
- <script>
- const x = 1
-// ^ javascript
- </script>
- <script defer>
- const x = 1
-// ^ javascript
- </script>
- <script type="text/javascript">
- const x = 1
-// ^ javascript
- </script>
+ <script> const x = 1 </script>
+ <!-- ^ javascript -->
+ <script defer> const x = 1 </script>
+ <!-- ^ javascript -->
+ <script type="text/javascript"> const x = 1 </script>
+ <!-- ^ javascript -->
<div style="height: 100%">
<!-- ^ css -->
Test div to test css injections for style attributes
diff --git a/tests/query/injections/svelte/test-svelte-injections.svelte b/tests/query/injections/svelte/test-svelte-injections.svelte
index a821dd080..5a9a03300 100644
--- a/tests/query/injections/svelte/test-svelte-injections.svelte
+++ b/tests/query/injections/svelte/test-svelte-injections.svelte
@@ -1,29 +1,14 @@
-<script>
- import Button from "./Button.svelte";
-// ^ javascript
-</script>
-<script lang="ts">
- const foo: number = 1
-// ^ typescript
-</script>
+<script> import Button from "./Button.svelte"; </script>
+<!-- ^ javascript -->
+<script lang="ts"> const foo: number = 1 </script>
+<!-- ^ typescript -->
+<!-- ^ !javascript -->
-<style>
- main {
- font-family: sans-serif;
- text-align: center;
-/* ^ css
-*/
- }
-</style>
-<style lang="scss">
- main {
- font-family: sans-serif;
- text-align: center;
- &:hover {
-// ^ scss
- }
- }
-</style>
+<style> main { font-family: sans-serif; text-align: center; } </style>
+<!-- ^ css -->
+<style lang="scss"> main { &:hover { } } </style>
+<!-- ^ scss -->
+<!-- ^ !css -->
<main>
<h1>Test file</h1>
diff --git a/tests/query/injections/vue/negative-assertions.vue b/tests/query/injections/vue/negative-assertions.vue
new file mode 100644
index 000000000..fdc871919
--- /dev/null
+++ b/tests/query/injections/vue/negative-assertions.vue
@@ -0,0 +1,4 @@
+<script lang="ts"> const foo: number = "1" </script>
+<!-- ^ !javascript -->
+<style lang="scss"> .bar { &-baz { &.page{ } } } </style>
+<!-- ^ !css -->
diff --git a/tests/query/injections/vue/test-vue-injections.vue b/tests/query/injections/vue/test-vue-injections.vue
index c7442a027..4cb4ae215 100644
--- a/tests/query/injections/vue/test-vue-injections.vue
+++ b/tests/query/injections/vue/test-vue-injections.vue
@@ -1,68 +1,28 @@
<template>
<span>{{"Text inside interpolation"}}</span>
- <!-- ^ javascript
--->
+ <!-- ^ javascript -->
- <template lang="pug">
- ul
- li(v-for="item in items")
- a(v-if="item.type == 'link'" :href="item.url") some link title in pug:
-<!-- ^ pug
--->
- </template>
+ <template lang="pug"> a(:href="url") some link title in pug: </template>
+ <!-- ^ pug -->
<template v-if="'text inside directives'"></template>
-<!-- ^ javascript
--->
+<!-- ^ javascript -->
</template>
-<script>
-const foo = "1"
-// ^ javascript
-</script>
-<script defer>
-const foo = "1"
-// ^ javascript
-</script>
-<script lang="js">
-const foo = "1"
-// ^ javascript
-</script>
-<script lang="ts">
-const foo: number = "1"
-// ^ typescript
-</script>
-<style>
-.bar {
-/* ^ css
-*/
-}
-</style>
-<style scoped>
-.page.page--news {
- padding: calc(var(--header-height)) 1rem 0 1rem;
- display: flex;
- justify-content: center;
- align-items: center;
- width: 100vw;
- min-height: calc(var(--vh, 1vh) * 100 - var(--header-height));
- background: rebeccapurple;
-/* ^ css
-*/
-}
-</style>
-<style lang="css">
-.bar {
- justify-content: center;
-/* ^ css
-*/
-}
-</style>
-<style lang="scss">
-.bar {
- &-baz {
- &.page{
-// ^ scss
- }
- }
-}
-</style>
+<script> const foo = "1" </script>
+<!-- ^ javascript -->
+<script defer> const foo = "1" </script>
+<!-- ^ javascript -->
+<script lang="js">function x(){ return 1;}</script>
+<!-- ^ javascript -->
+<script lang="ts"> const foo: number = "1" </script>
+<!-- ^ typescript -->
+<!-- ^ !javascript -->
+<style> .bar { .foo{ } } </style>
+<!-- ^ css -->
+<style scoped> .page.page--news { background: rebeccapurple; } </style>
+<!-- ^ css -->
+<style lang="css"> .bar { justify-content: center; } </style>
+<!-- ^ css -->
+<style lang="scss"> .bar { &-baz { } } </style>
+<!-- ^ scss -->
+<!-- ^ !css -->