Table of Contents

Class NativeDependencyLock

Namespace
Valheim.Testing.Game
Assembly
Valheim.Testing.Game.dll

An editable, pinned result of Resolve(NativeDependencyRequest). Save a plan with gaps, supply or confirm the missing files in the request, and resolve again; once ready, ReadReady(string) checks the exact files without rediscovering them. Keep this lock private: it contains machine paths.

public sealed class NativeDependencyLock
Inheritance
object
NativeDependencyLock

Properties

CliFiles

public List<NativeDependencyFile> CliFiles { get; set; }

Property Value

List<NativeDependencyFile>

CliManifest

public CliCapabilityManifest CliManifest { get; set; }

Property Value

CliCapabilityManifest

Gaps

public List<NativeDependencyGap> Gaps { get; set; }

Property Value

List<NativeDependencyGap>

Mods

public List<NativeDependencyFile> Mods { get; set; }

Property Value

List<NativeDependencyFile>

OptionalCandidates

public List<string> OptionalCandidates { get; set; }

Property Value

List<string>

OptionalReferences

public List<string> OptionalReferences { get; set; }

Property Value

List<string>

Plugins

public List<NativeDependencyFile> Plugins { get; set; }

Property Value

List<NativeDependencyFile>

Ready

[JsonIgnore]
public bool Ready { get; }

Property Value

bool

Methods

ApplyTo(RegressionInputs, string)

Fills a targeted run's dependency and ValheimCLI fields from this lock, leaving its fixture and mod arms to the caller.

public void ApplyTo(RegressionInputs inputs, string cliManifestPath)

Parameters

inputs RegressionInputs
cliManifestPath string

ReadReady(string)

Loads a previously resolved set, refusing changed files, missing dependencies and a mixed CLI build.

public static NativeDependencyLock ReadReady(string path)

Parameters

path string

Returns

NativeDependencyLock

RequireSameExceptRemovedMod(NativeDependencyLock, string)

Checks an add/remove-mod comparison before either arm starts. The second arm must contain the same selected files in the same order except for removedMod. Its resolved dependency closure may shrink, but it may not acquire a new file; ValheimCLI and explicit optional-reference decisions stay fixed.

public void RequireSameExceptRemovedMod(NativeDependencyLock other, string removedMod)

Parameters

other NativeDependencyLock
removedMod string

RequireSameFixedInputs(NativeDependencyLock)

Requires an A/B comparison to change only the first selected mod. Companions, their resolved dependencies, optional-reference decisions and ValheimCLI must remain byte-identical; otherwise a difference in the native result could be caused by the environment rather than that mod build.

public void RequireSameFixedInputs(NativeDependencyLock other)

Parameters

other NativeDependencyLock

Write(string)

public void Write(string path)

Parameters

path string