Skip to content

Commit 989afbc

Browse files
committed
[release] Fixes from testing.
1 parent 59adacb commit 989afbc

14 files changed

+154
-8
lines changed
Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
[0] = {
2+
"Name": "eg1",
3+
"IsRunnable": true,
4+
"TargetFileName": "eg1.exe",
5+
"QualifiedTargetFileName": "[example: \\] eg1.exe",
6+
"Source": "<TestRoot>\\bin_with_example\\examples\\eg1.rs",
7+
"Type": "Example",
8+
"Manifest": "<TestRoot>\\bin_with_example\\cargo.toml",
9+
"Path": "testdata\\bin_with_example\\target\\debug\\examples\\eg1.exe",
10+
"AdditionalBuildArgs": "--example \"eg1\""
11+
}
12+
[1] = {
13+
"Name": "eg2",
14+
"IsRunnable": true,
15+
"TargetFileName": "eg2.exe",
16+
"QualifiedTargetFileName": "[example: \\] eg2.exe",
17+
"Source": "<TestRoot>\\bin_with_example\\examples\\eg2\\main.rs",
18+
"Type": "Example",
19+
"Manifest": "<TestRoot>\\bin_with_example\\cargo.toml",
20+
"Path": "testdata\\bin_with_example\\target\\debug\\examples\\eg2.exe",
21+
"AdditionalBuildArgs": "--example \"eg2\""
22+
}

src/RustAnalyzer.TestAdapter.UnitTests/Cargo/ExampleTargetTests.cs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@ public class ExampleTargetTests
1818
[InlineData(@"hello_library\Cargo.toml")]
1919
[InlineData(@"hello_workspace\Cargo.toml")]
2020
[InlineData(@"lib_with_example\Cargo.toml")]
21+
[InlineData(@"bin_with_example\Cargo.toml")]
2122
[InlineData(@"workspace_with_example\lib\Cargo.toml")]
2223
public void GetAllTests(string manifestRelPath)
2324
{
Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
[0] = {
2+
"Name": "hello_world",
3+
"IsRunnable": true,
4+
"TargetFileName": "hello_world.exe",
5+
"QualifiedTargetFileName": "[bin: \\] hello_world.exe",
6+
"Source": "<TestRoot>\\bin_with_example\\cargo.toml",
7+
"Type": "Bin",
8+
"Manifest": "<TestRoot>\\bin_with_example\\cargo.toml",
9+
"Path": "testdata\\bin_with_example\\target\\debug\\hello_world.exe",
10+
"AdditionalBuildArgs": ""
11+
}
12+
[1] = {
13+
"Name": "eg1",
14+
"IsRunnable": true,
15+
"TargetFileName": "eg1.exe",
16+
"QualifiedTargetFileName": "[example: \\] eg1.exe",
17+
"Source": "<TestRoot>\\bin_with_example\\examples\\eg1.rs",
18+
"Type": "Example",
19+
"Manifest": "<TestRoot>\\bin_with_example\\cargo.toml",
20+
"Path": "testdata\\bin_with_example\\target\\debug\\examples\\eg1.exe",
21+
"AdditionalBuildArgs": "--example \"eg1\""
22+
}
23+
[2] = {
24+
"Name": "eg2",
25+
"IsRunnable": true,
26+
"TargetFileName": "eg2.exe",
27+
"QualifiedTargetFileName": "[example: \\] eg2.exe",
28+
"Source": "<TestRoot>\\bin_with_example\\examples\\eg2\\main.rs",
29+
"Type": "Example",
30+
"Manifest": "<TestRoot>\\bin_with_example\\cargo.toml",
31+
"Path": "testdata\\bin_with_example\\target\\debug\\examples\\eg2.exe",
32+
"AdditionalBuildArgs": "--example \"eg2\""
33+
}
Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
[0] = {
2+
"Name": "lib_with_example",
3+
"IsRunnable": false,
4+
"TargetFileName": "liblib_with_example.rlib",
5+
"QualifiedTargetFileName": "[lib: \\] liblib_with_example.rlib",
6+
"Source": "<TestRoot>\\lib_with_example\\cargo.toml",
7+
"Type": "Lib",
8+
"Manifest": "<TestRoot>\\lib_with_example\\cargo.toml",
9+
"Path": "testdata\\lib_with_example\\target\\debug\\liblib_with_example.rlib",
10+
"AdditionalBuildArgs": ""
11+
}
12+
[1] = {
13+
"Name": "eg1",
14+
"IsRunnable": true,
15+
"TargetFileName": "eg1.exe",
16+
"QualifiedTargetFileName": "[example: \\] eg1.exe",
17+
"Source": "<TestRoot>\\lib_with_example\\examples\\eg1.rs",
18+
"Type": "Example",
19+
"Manifest": "<TestRoot>\\lib_with_example\\cargo.toml",
20+
"Path": "testdata\\lib_with_example\\target\\debug\\examples\\eg1.exe",
21+
"AdditionalBuildArgs": "--example \"eg1\""
22+
}
23+
[2] = {
24+
"Name": "eg2",
25+
"IsRunnable": true,
26+
"TargetFileName": "eg2.exe",
27+
"QualifiedTargetFileName": "[example: \\] eg2.exe",
28+
"Source": "<TestRoot>\\lib_with_example\\examples\\eg2\\main.rs",
29+
"Type": "Example",
30+
"Manifest": "<TestRoot>\\lib_with_example\\cargo.toml",
31+
"Path": "testdata\\lib_with_example\\target\\debug\\examples\\eg2.exe",
32+
"AdditionalBuildArgs": "--example \"eg2\""
33+
}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
[0] = {
2+
"Name": "lib",
3+
"IsRunnable": false,
4+
"TargetFileName": "liblib.rlib",
5+
"QualifiedTargetFileName": "[lib: lib\\] liblib.rlib",
6+
"Source": "<TestRoot>\\workspace_with_example\\lib\\cargo.toml",
7+
"Type": "Lib",
8+
"Manifest": "<TestRoot>\\workspace_with_example\\lib\\cargo.toml",
9+
"Path": "testdata\\workspace_with_example\\target\\debug\\liblib.rlib",
10+
"AdditionalBuildArgs": ""
11+
}
12+
[1] = {
13+
"Name": "eg1",
14+
"IsRunnable": true,
15+
"TargetFileName": "eg1.exe",
16+
"QualifiedTargetFileName": "[example: lib\\] eg1.exe",
17+
"Source": "<TestRoot>\\workspace_with_example\\lib\\examples\\eg1.rs",
18+
"Type": "Example",
19+
"Manifest": "<TestRoot>\\workspace_with_example\\lib\\cargo.toml",
20+
"Path": "testdata\\workspace_with_example\\target\\debug\\examples\\eg1.exe",
21+
"AdditionalBuildArgs": "--example \"eg1\""
22+
}
23+
[2] = {
24+
"Name": "eg2",
25+
"IsRunnable": true,
26+
"TargetFileName": "eg2.exe",
27+
"QualifiedTargetFileName": "[example: lib\\] eg2.exe",
28+
"Source": "<TestRoot>\\workspace_with_example\\lib\\examples\\eg2\\main.rs",
29+
"Type": "Example",
30+
"Manifest": "<TestRoot>\\workspace_with_example\\lib\\cargo.toml",
31+
"Path": "testdata\\workspace_with_example\\target\\debug\\examples\\eg2.exe",
32+
"AdditionalBuildArgs": "--example \"eg2\""
33+
}

src/RustAnalyzer.TestAdapter.UnitTests/Cargo/TargetTests.cs

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,8 @@ public class TargetTests
1515
{
1616
[Theory]
1717
[UseReporter(typeof(DiffReporter))]
18+
[InlineData(@"lib_with_example\Cargo.toml")]
19+
[InlineData(@"bin_with_example\Cargo.toml")]
1820
[InlineData(@"hello_library\Cargo.toml")]
1921
[InlineData(@"hello_workspace\Cargo.toml")]
2022
[InlineData(@"hello_workspace\main\Cargo.toml")]
@@ -28,6 +30,7 @@ public class TargetTests
2830
[InlineData(@"workspace_with_tests\Cargo.toml")]
2931
[InlineData(@"workspace_with_tests\adder\Cargo.toml")]
3032
[InlineData(@"workspace_with_tests\add_one\Cargo.toml")]
33+
[InlineData(@"workspace_with_example\lib\Cargo.toml")]
3134
public void ManifestTargetsTests(string manifestRelPath)
3235
{
3336
NamerFactory.AdditionalInformation = manifestRelPath.ReplaceInvalidChars();

src/RustAnalyzer.TestAdapter/Cargo/Manifest.cs

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -149,18 +149,17 @@ private IEnumerable<Target> GetTargets()
149149
return Enumerable.Empty<Target>();
150150
}
151151

152-
var definedTargets = EnumExtensions
152+
var targets = EnumExtensions
153153
.GetEnumValues<TargetType>()
154154
.Where(t => t != TargetType.Example)
155-
.SelectMany(GetTargetsForOneType)
156-
.Concat(ExampleTarget.GetAll(this));
155+
.SelectMany(GetTargetsForOneType);
157156

158-
if (definedTargets.Any())
157+
if (!targets.Any())
159158
{
160-
return definedTargets;
159+
targets = targets.Concat(GetAutoDiscoveredTargets());
161160
}
162161

163-
return GetAutoDiscoveredTargets();
162+
return targets.Concat(ExampleTarget.GetAll(this));
164163
}
165164

166165
/// <summary>

src/RustAnalyzer/VS/DebugLaunchTargetProvider.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -68,7 +68,7 @@ public void LaunchDebugTarget(IWorkspace workspaceContext, IServiceProvider serv
6868
bstrRemoteMachine = null,
6969
cbSize = (uint)System.Runtime.InteropServices.Marshal.SizeOf<VsDebugTargetInfo>(),
7070
grfLaunch = (uint)(noDebugFlag | __VSDBGLAUNCHFLAGS.DBGLAUNCH_Silent | __VSDBGLAUNCHFLAGS.DBGLAUNCH_StopDebuggingOnEnd),
71-
fSendStdoutToOutputWindow = 1,
71+
fSendStdoutToOutputWindow = 0,
7272
clsidCustom = DebugEnginesGuids.NativeOnly_guid,
7373
};
7474

src/RustAnalyzer/VS/FileScanner.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ public async Task<T> ScanContentAsync<T>(string filePath, CancellationToken canc
2727
var owningManifest = filePath.IsManifest() ? Manifest.Create(filePath) : Manifest.GetParentManifestOrThisUnderWorkspace(_workspaceRoot, filePath);
2828
if (owningManifest == null)
2929
{
30-
return (T)(IReadOnlyCollection<T>)Array.Empty<T>();
30+
return null;
3131
}
3232

3333
if (typeof(T) == FileScannerTypeConstants.FileDataValuesType)
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
/target

0 commit comments

Comments
 (0)