• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

devonfw / IDEasy / 20003978026

07 Dec 2025 12:09PM UTC coverage: 70.101% (+0.2%) from 69.903%
20003978026

push

github

web-flow
#39: refactoring to extract package-manager logic out of node/npm (#1638)

3892 of 6090 branches covered (63.91%)

Branch coverage included in aggregate %.

9955 of 13663 relevant lines covered (72.86%)

3.15 hits per line

Source File
Press 'n' to go to next uncovered line, 'b' for previous

33.33
cli/src/main/java/com/devonfw/tools/ide/tool/uv/Uv.java
1
package com.devonfw.tools.ide.tool.uv;
2

3
import java.nio.file.Path;
4
import java.util.List;
5
import java.util.Set;
6

7
import com.devonfw.tools.ide.common.Tag;
8
import com.devonfw.tools.ide.context.IdeContext;
9
import com.devonfw.tools.ide.process.ProcessContext;
10
import com.devonfw.tools.ide.process.ProcessMode;
11
import com.devonfw.tools.ide.process.ProcessResult;
12
import com.devonfw.tools.ide.tool.LocalToolCommandlet;
13
import com.devonfw.tools.ide.tool.ToolCommandlet;
14
import com.devonfw.tools.ide.version.VersionIdentifier;
15

16
/**
17
 * {@link ToolCommandlet} for <a href="https://docs.astral.sh/uv/">uv</a>.
18
 */
19
public class Uv extends LocalToolCommandlet {
1✔
20

21

22
  /**
23
   * The constructor.
24
   *
25
   * @param context the {@link IdeContext}.
26
   */
27
  public Uv(IdeContext context) {
28

29
    super(context, "uv", Set.of(Tag.PYTHON));
6✔
30
  }
1✔
31

32
  /**
33
   * Installs a specified version of {@code Python} in the given directory using the {@code uv} environment manager.
34
   *
35
   * @param installationPath the target {@link Path} where {@code Python} should be installed
36
   * @param resolvedVersion the {@link VersionIdentifier} of the {@code Python} version to install
37
   * @param processContext the {@link ProcessContext} used to execute the {@code uv} command
38
   */
39
  public void installPython(Path installationPath, VersionIdentifier resolvedVersion, ProcessContext processContext) {
40

41
    processContext.directory(installationPath);
×
42
    ProcessResult result = runTool(processContext, ProcessMode.DEFAULT_CAPTURE, List.of("venv", "--python", resolvedVersion.toString()));
×
43
    assert result.isSuccessful();
×
44
  }
×
45
}
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc