Skip to repository content

tenant.openagents/omega

No repository description is available.

OpenAgents Git authority 2026-07-28T03:01:27.914Z Public web read
NIP-34 coordinate30617:7649603503856e5148d571eac2766b288a8ff1e9e35d380337a1d2b0015b4f92:omega
MaintainersHidden in public view
References2 branches · 1 tag
Read-only clonegit clone https://openagents.com/git/tenant.openagents/omega.git
Browse files

runnables.scm

215 lines · 6.5 KB · text
1; Functions names start with `Test`
2(((function_declaration
3  name: (_) @run
4  (#match? @run "^Test.*")
5  (#not-match? @run "^TestMain$"))) @_
6  (#set! tag go-test))
7
8; Suite test methods (testify/suite)
9((method_declaration
10  receiver: (parameter_list
11    (parameter_declaration
12      type: [
13        (pointer_type
14          (type_identifier) @_suite_name)
15        (type_identifier) @_suite_name
16      ]))
17  name: (field_identifier) @run @_subtest_name
18  (#match? @_subtest_name "^Test.*")
19  (#match? @_suite_name ".*Suite")) @_
20  (#set! tag go-testify-suite))
21
22; `go:generate` comments
23(((comment) @_comment @run
24  (#match? @_comment "^//go:generate"))
25  (#set! tag go-generate))
26
27; `t.Run`
28(((call_expression
29  function: (selector_expression
30    field: _ @run @_name
31    (#eq? @_name "Run"))
32  arguments: (argument_list
33    .
34    [
35      (interpreted_string_literal)
36      (raw_string_literal)
37    ] @_subtest_name
38    .
39    (func_literal
40      parameters: (parameter_list
41        (parameter_declaration
42          name: (identifier) @_param_name
43          type: (pointer_type
44            (qualified_type
45              package: (package_identifier) @_pkg
46              name: (type_identifier) @_type
47              (#eq? @_pkg "testing")
48              (#eq? @_type "T")))))) @_second_argument))) @_
49  (#set! tag go-subtest))
50
51; Functions names start with `Example`
52(((function_declaration
53  name: (_) @run @_name
54  (#match? @_name "^Example.*"))) @_
55  (#set! tag go-example))
56
57; Functions names start with `Benchmark`
58(((function_declaration
59  name: (_) @run @_name
60  (#match? @_name "^Benchmark.*"))) @_
61  (#set! tag go-benchmark))
62
63; Functions names start with `Fuzz`
64(((function_declaration
65  name: (_) @run @_name
66  (#match? @_name "^Fuzz"))) @_
67  (#set! tag go-fuzz))
68
69; go run
70(((function_declaration
71  name: (_) @run
72  (#eq? @run "main"))) @_
73  (#set! tag go-main))
74
75; Table test cases - slice and map with explicit variable
76((short_var_declaration
77  left: (expression_list
78    (identifier) @_collection_var)
79  right: (expression_list
80    (composite_literal
81      type: [
82        (slice_type)
83        (map_type
84          key: (type_identifier) @_key_type
85          (#eq? @_key_type "string"))
86      ]
87      body: (literal_value
88        ([
89          (literal_element
90            (literal_value
91              ((keyed_element
92                (literal_element
93                  (identifier) @_field_name)
94                (literal_element
95                  [
96                    (interpreted_string_literal) @run @_table_test_case_name
97                    (raw_string_literal) @run @_table_test_case_name
98                  ]))
99                ","?)+))
100          (keyed_element
101            (literal_element
102              [
103                (interpreted_string_literal) @run @_table_test_case_name
104                (raw_string_literal) @run @_table_test_case_name
105              ]))
106        ] @run_item
107          ","?)+))))
108  (for_statement
109    (range_clause
110      left: (expression_list
111        [
112          ((identifier)
113            (identifier) @_loop_var_inner)
114          (identifier) @_loop_var_outer
115        ])
116      right: (identifier) @_range_var
117      (#eq? @_range_var @_collection_var))
118    body: (block
119      (statement_list
120        (expression_statement
121          (call_expression
122            function: (selector_expression
123              operand: (identifier)
124              field: (field_identifier) @_run_method
125              (#eq? @_run_method "Run"))
126            arguments: (argument_list
127              .
128              [
129                (selector_expression
130                  operand: (identifier) @_tc_var
131                  (#eq? @_tc_var @_loop_var_inner)
132                  field: (field_identifier) @_field_check)
133                (identifier) @_arg_var
134                (#eq? @_arg_var @_loop_var_outer)
135              ]
136              .
137              (func_literal
138                parameters: (parameter_list
139                  (parameter_declaration
140                    type: (pointer_type
141                      (qualified_type
142                        package: (package_identifier) @_pkg
143                        name: (type_identifier) @_type
144                        (#eq? @_pkg "testing")
145                        (#eq? @_type "T")))))))))))) @_
146  (#set! tag go-table-test-case))
147
148; Table test cases - slice and map declared right inside the loop without
149; explicit variable
150((for_statement
151  (range_clause
152    left: (expression_list
153      [
154        ((identifier)
155          (identifier) @_loop_var_inner)
156        (identifier) @_loop_var_outer
157      ])
158    right: (composite_literal
159      type: [
160        (slice_type)
161        (map_type
162          key: (type_identifier) @_key_type
163          (#eq? @_key_type "string"))
164      ]
165      body: (literal_value
166        ([
167          (literal_element
168            (literal_value
169              ((keyed_element
170                (literal_element
171                  (identifier) @_field_name)
172                (literal_element
173                  [
174                    (interpreted_string_literal) @run @_table_test_case_name
175                    (raw_string_literal) @run @_table_test_case_name
176                  ]))
177                ","?)+))
178          (keyed_element
179            (literal_element
180              [
181                (interpreted_string_literal) @run @_table_test_case_name
182                (raw_string_literal) @run @_table_test_case_name
183              ]))
184        ] @run_item
185          ","?)+)))
186  body: (block
187    (statement_list
188      (expression_statement
189        (call_expression
190          function: (selector_expression
191            operand: (identifier)
192            field: (field_identifier) @_run_method
193            (#eq? @_run_method "Run"))
194          arguments: (argument_list
195            .
196            [
197              (selector_expression
198                operand: (identifier) @_tc_var
199                (#eq? @_tc_var @_loop_var_inner)
200                field: (field_identifier) @_field_check)
201              (identifier) @_arg_var
202              (#eq? @_arg_var @_loop_var_outer)
203            ]
204            .
205            (func_literal
206              parameters: (parameter_list
207                (parameter_declaration
208                  type: (pointer_type
209                    (qualified_type
210                      package: (package_identifier) @_pkg
211                      name: (type_identifier) @_type
212                      (#eq? @_pkg "testing")
213                      (#eq? @_type "T")))))))))))) @_
214  (#set! tag go-table-test-case-without-explicit-variable))
215
Served at tenant.openagents/omega Member data and write actions are omitted.