Skip to content

Commit 0ff3063

Browse files
committed
test: add infrastructure and integration tests
- Add console MockConsole tests (13 tests) - Expand loading_screen tests with ProgressReporter and render tests - Add version_check_screen snapshot test - Add C# events/delegates/lambdas integration test
1 parent c945e13 commit 0ff3063

File tree

7 files changed

+626
-3
lines changed

7 files changed

+626
-3
lines changed

tests/integration/languages/csharp/extractor.rs

Lines changed: 44 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -588,9 +588,52 @@ namespace ModernCSharp
588588
chunk_counts: {
589589
Conditional: 3,
590590
Class: 7,
591-
Method: 4,
591+
Method: 4,
592592
Namespace: 1,
593593
File: 1,
594594
CodeBlock: 13,
595595
}
596596
}
597+
598+
test_language_extractor! {
599+
name: test_csharp_events_delegates_lambdas,
600+
language: "csharp",
601+
extension: "cs",
602+
source: r#"
603+
using System;
604+
605+
namespace EventSystem
606+
{
607+
public delegate void NotifyHandler(string message);
608+
public delegate int MathOperation(int a, int b);
609+
610+
public class EventPublisher
611+
{
612+
public event EventHandler<string> OnDataReceived;
613+
public event NotifyHandler OnNotify;
614+
615+
public void ProcessData(string data)
616+
{
617+
OnDataReceived?.Invoke(this, data);
618+
OnNotify?.Invoke(data);
619+
}
620+
621+
public void RunWithLambda()
622+
{
623+
Func<int, int, int> add = (a, b) => a + b;
624+
Action<string> print = msg => Console.WriteLine(msg);
625+
var result = add(3, 4);
626+
print($"Result: {result}");
627+
}
628+
}
629+
}
630+
"#,
631+
total_chunks: 13,
632+
chunk_counts: {
633+
Namespace: 1,
634+
Method: 4,
635+
Class: 1,
636+
CodeBlock: 6,
637+
File: 1,
638+
}
639+
}
Lines changed: 141 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,141 @@
1+
---
2+
source: tests/integration/languages/extractor.rs
3+
expression: "serde_json::to_string_pretty(&snapshot_data).unwrap()"
4+
---
5+
{
6+
"chunks": [
7+
{
8+
"chunk_type": "File",
9+
"comment_ranges": [],
10+
"content": "\nusing System;\n\nnamespace EventSystem\n{\n public delegate void NotifyHandler(string message);\n public delegate int MathOperation(int a, int b);\n\n public class EventPublisher\n {\n public event EventHandler<string> OnDataReceived;\n public event NotifyHandler OnNotify;\n\n public void ProcessData(string data)\n {\n OnDataReceived?.Invoke(this, data);\n OnNotify?.Invoke(data);\n }\n\n public void RunWithLambda()\n {\n Func<int, int, int> add = (a, b) => a + b;\n Action<string> print = msg => Console.WriteLine(msg);\n var result = add(3, 4);\n print($\"Result: {result}\");\n }\n }\n}\n",
11+
"end_line": 28,
12+
"language": "csharp",
13+
"name": "entire_file",
14+
"original_indentation": 0,
15+
"start_line": 1
16+
},
17+
{
18+
"chunk_type": "CodeBlock",
19+
"comment_ranges": [],
20+
"content": "namespace EventSystem",
21+
"end_line": 4,
22+
"language": "csharp",
23+
"name": "name",
24+
"original_indentation": 10,
25+
"start_line": 4
26+
},
27+
{
28+
"chunk_type": "Namespace",
29+
"comment_ranges": [],
30+
"content": "namespace EventSystem\n{\n public delegate void NotifyHandler(string message);\n public delegate int MathOperation(int a, int b);\n\n public class EventPublisher\n {\n public event EventHandler<string> OnDataReceived;\n public event NotifyHandler OnNotify;\n\n public void ProcessData(string data)\n {\n OnDataReceived?.Invoke(this, data);\n OnNotify?.Invoke(data);\n }\n\n public void RunWithLambda()\n {\n Func<int, int, int> add = (a, b) => a + b;\n Action<string> print = msg => Console.WriteLine(msg);\n var result = add(3, 4);\n print($\"Result: {result}\");\n }\n }\n}",
31+
"end_line": 28,
32+
"language": "csharp",
33+
"name": "EventSystem",
34+
"original_indentation": 0,
35+
"start_line": 4
36+
},
37+
{
38+
"chunk_type": "Method",
39+
"comment_ranges": [],
40+
"content": " public delegate void NotifyHandler(string message);",
41+
"end_line": 6,
42+
"language": "csharp",
43+
"name": "NotifyHandler",
44+
"original_indentation": 4,
45+
"start_line": 6
46+
},
47+
{
48+
"chunk_type": "Method",
49+
"comment_ranges": [],
50+
"content": " public delegate int MathOperation(int a, int b);",
51+
"end_line": 7,
52+
"language": "csharp",
53+
"name": "MathOperation",
54+
"original_indentation": 4,
55+
"start_line": 7
56+
},
57+
{
58+
"chunk_type": "CodeBlock",
59+
"comment_ranges": [],
60+
"content": " public class EventPublisher",
61+
"end_line": 9,
62+
"language": "csharp",
63+
"name": "name",
64+
"original_indentation": 17,
65+
"start_line": 9
66+
},
67+
{
68+
"chunk_type": "Class",
69+
"comment_ranges": [],
70+
"content": " public class EventPublisher\n {\n public event EventHandler<string> OnDataReceived;\n public event NotifyHandler OnNotify;\n\n public void ProcessData(string data)\n {\n OnDataReceived?.Invoke(this, data);\n OnNotify?.Invoke(data);\n }\n\n public void RunWithLambda()\n {\n Func<int, int, int> add = (a, b) => a + b;\n Action<string> print = msg => Console.WriteLine(msg);\n var result = add(3, 4);\n print($\"Result: {result}\");\n }\n }",
71+
"end_line": 27,
72+
"language": "csharp",
73+
"name": "EventPublisher",
74+
"original_indentation": 4,
75+
"start_line": 9
76+
},
77+
{
78+
"chunk_type": "CodeBlock",
79+
"comment_ranges": [],
80+
"content": " public void ProcessData",
81+
"end_line": 14,
82+
"language": "csharp",
83+
"name": "name",
84+
"original_indentation": 20,
85+
"start_line": 14
86+
},
87+
{
88+
"chunk_type": "Method",
89+
"comment_ranges": [],
90+
"content": " public void ProcessData(string data)\n {\n OnDataReceived?.Invoke(this, data);\n OnNotify?.Invoke(data);\n }",
91+
"end_line": 18,
92+
"language": "csharp",
93+
"name": "ProcessData",
94+
"original_indentation": 8,
95+
"start_line": 14
96+
},
97+
{
98+
"chunk_type": "CodeBlock",
99+
"comment_ranges": [],
100+
"content": " {\n OnDataReceived?.Invoke(this, data);\n OnNotify?.Invoke(data);\n }",
101+
"end_line": 18,
102+
"language": "csharp",
103+
"name": "code_block",
104+
"original_indentation": 8,
105+
"start_line": 15
106+
},
107+
{
108+
"chunk_type": "CodeBlock",
109+
"comment_ranges": [],
110+
"content": " public void RunWithLambda",
111+
"end_line": 20,
112+
"language": "csharp",
113+
"name": "name",
114+
"original_indentation": 20,
115+
"start_line": 20
116+
},
117+
{
118+
"chunk_type": "Method",
119+
"comment_ranges": [],
120+
"content": " public void RunWithLambda()\n {\n Func<int, int, int> add = (a, b) => a + b;\n Action<string> print = msg => Console.WriteLine(msg);\n var result = add(3, 4);\n print($\"Result: {result}\");\n }",
121+
"end_line": 26,
122+
"language": "csharp",
123+
"name": "RunWithLambda",
124+
"original_indentation": 8,
125+
"start_line": 20
126+
},
127+
{
128+
"chunk_type": "CodeBlock",
129+
"comment_ranges": [],
130+
"content": " {\n Func<int, int, int> add = (a, b) => a + b;\n Action<string> print = msg => Console.WriteLine(msg);\n var result = add(3, 4);\n print($\"Result: {result}\");\n }",
131+
"end_line": 26,
132+
"language": "csharp",
133+
"name": "code_block",
134+
"original_indentation": 8,
135+
"start_line": 21
136+
}
137+
],
138+
"source_code": "\nusing System;\n\nnamespace EventSystem\n{\n public delegate void NotifyHandler(string message);\n public delegate int MathOperation(int a, int b);\n\n public class EventPublisher\n {\n public event EventHandler<string> OnDataReceived;\n public event NotifyHandler OnNotify;\n\n public void ProcessData(string data)\n {\n OnDataReceived?.Invoke(this, data);\n OnNotify?.Invoke(data);\n }\n\n public void RunWithLambda()\n {\n Func<int, int, int> add = (a, b) => a + b;\n Action<string> print = msg => Console.WriteLine(msg);\n var result = add(3, 4);\n print($\"Result: {result}\");\n }\n }\n}\n",
139+
"test_name": "test_csharp_events_delegates_lambdas",
140+
"total_chunks": 13
141+
}

0 commit comments

Comments
 (0)