Forge
csharp4405de34
1using CascadeIDE.Services;
2using Xunit;
3using TestContext = Xunit.TestContext;
4
5namespace CascadeIDE.Tests;
6
7public class CSharpLanguageServiceQuickInfoTests
8{
9 [Fact]
10 public void GetQuickInfo_OnMethodName_ReturnsSignatureAndSummary()
11 {
12 const string path = @"D:\Fake\Hover.cs";
13 var src = """
14 namespace N;
15
16 public class C
17 {
18 /// <summary>Tells a story.</summary>
19 public void Tell() { }
20 }
21 """;
22
23 var svc = new CSharpLanguageService();
24 var line = 6;
25 var col = 17;
26 var info = svc.GetQuickInfo(path, src, line, col, TestContext.Current.CancellationToken);
27
28 Assert.NotNull(info);
29 Assert.Contains("Tell", info, StringComparison.Ordinal);
30 Assert.Contains("Tells a story", info, StringComparison.Ordinal);
31 }
32
33 [Fact]
34 public void GetQuickInfo_OutOfRangeLine_ReturnsNull()
35 {
36 const string path = @"D:\Fake\Empty.cs";
37 var src = "class X { }";
38 var svc = new CSharpLanguageService();
39 var info = svc.GetQuickInfo(path, src, line: 99, column: 1, TestContext.Current.CancellationToken);
40 Assert.Null(info);
41 }
42}
43
View only · write via MCP/CIDE