Skip to content

Commit

Permalink
Test both with clean instances.
Browse files Browse the repository at this point in the history
  • Loading branch information
wasabii committed Jul 25, 2022
1 parent c98ae57 commit 0d23ad7
Showing 1 changed file with 47 additions and 22 deletions.
69 changes: 47 additions & 22 deletions src/IKVM.Maven.Sdk.Tasks.Tests/MavenReferenceItemResolveTests.cs
Original file line number Diff line number Diff line change
Expand Up @@ -154,30 +154,55 @@ public void Can_resolve_maven_references_with_cache()
var engine = new Mock<IBuildEngine>();
var errors = new List<BuildErrorEventArgs>();
engine.Setup(x => x.LogErrorEvent(It.IsAny<BuildErrorEventArgs>())).Callback((BuildErrorEventArgs e) => errors.Add(e));
var t = new MavenReferenceItemResolve();
t.BuildEngine = engine.Object;
t.CacheFile = cacheFile;
t.Repositories = new[] { GetCentralRepositoryItem() };

var i1 = new TaskItem("javax.inject:javax.inject:1");
i1.SetMetadata(MavenReferenceItemMetadata.GroupId, "javax.inject");
i1.SetMetadata(MavenReferenceItemMetadata.ArtifactId, "javax.inject");
i1.SetMetadata(MavenReferenceItemMetadata.Version, "1");
i1.SetMetadata(MavenReferenceItemMetadata.Scope, "compile");
t.References = new[] { i1 };
t.Execute().Should().BeTrue();
errors.Should().BeEmpty();

var cacheFileText = File.ReadAllText(cacheFile);
t.Execute().Should().BeTrue();

t.ResolvedReferences.Should().Contain(i => i.ItemSpec == "maven$javax.inject:javax.inject:1");
t.ResolvedReferences.Should().OnlyContain(i => !string.IsNullOrWhiteSpace(i.ItemSpec));
t.ResolvedReferences.Should().OnlyContain(i => i.ItemSpec.StartsWith("maven$"));
t.ResolvedReferences.Should().OnlyContain(i => !string.IsNullOrWhiteSpace(i.GetMetadata(IkvmReferenceItemMetadata.Compile)));
{
var t = new MavenReferenceItemResolve();
t.BuildEngine = engine.Object;
t.CacheFile = cacheFile;
t.Repositories = new[] { GetCentralRepositoryItem() };

var i1 = new TaskItem("javax.inject:javax.inject:1");
i1.SetMetadata(MavenReferenceItemMetadata.GroupId, "javax.inject");
i1.SetMetadata(MavenReferenceItemMetadata.ArtifactId, "javax.inject");
i1.SetMetadata(MavenReferenceItemMetadata.Version, "1");
i1.SetMetadata(MavenReferenceItemMetadata.Scope, "compile");
t.References = new[] { i1 };
t.Execute().Should().BeTrue();
errors.Should().BeEmpty();

t.ResolvedReferences.Should().Contain(i => i.ItemSpec == "maven$javax.inject:javax.inject:1");
t.ResolvedReferences.Should().OnlyContain(i => !string.IsNullOrWhiteSpace(i.ItemSpec));
t.ResolvedReferences.Should().OnlyContain(i => i.ItemSpec.StartsWith("maven$"));
t.ResolvedReferences.Should().OnlyContain(i => !string.IsNullOrWhiteSpace(i.GetMetadata(IkvmReferenceItemMetadata.Compile)));

var r = t.ResolvedReferences.FirstOrDefault(i => i.ItemSpec == "maven$javax.inject:javax.inject:1");
r.GetMetadata(IkvmReferenceItemMetadata.FallbackAssemblyVersion).Should().Be("1.0");
}

{
var t = new MavenReferenceItemResolve();
t.BuildEngine = engine.Object;
t.CacheFile = cacheFile;
t.Repositories = new[] { GetCentralRepositoryItem() };

var i1 = new TaskItem("javax.inject:javax.inject:1");
i1.SetMetadata(MavenReferenceItemMetadata.GroupId, "javax.inject");
i1.SetMetadata(MavenReferenceItemMetadata.ArtifactId, "javax.inject");
i1.SetMetadata(MavenReferenceItemMetadata.Version, "1");
i1.SetMetadata(MavenReferenceItemMetadata.Scope, "compile");
t.References = new[] { i1 };
t.Execute().Should().BeTrue();
errors.Should().BeEmpty();

t.ResolvedReferences.Should().Contain(i => i.ItemSpec == "maven$javax.inject:javax.inject:1");
t.ResolvedReferences.Should().OnlyContain(i => !string.IsNullOrWhiteSpace(i.ItemSpec));
t.ResolvedReferences.Should().OnlyContain(i => i.ItemSpec.StartsWith("maven$"));
t.ResolvedReferences.Should().OnlyContain(i => !string.IsNullOrWhiteSpace(i.GetMetadata(IkvmReferenceItemMetadata.Compile)));

var r = t.ResolvedReferences.FirstOrDefault(i => i.ItemSpec == "maven$javax.inject:javax.inject:1");
r.GetMetadata(IkvmReferenceItemMetadata.FallbackAssemblyVersion).Should().Be("1.0");
}

var r = t.ResolvedReferences.FirstOrDefault(i => i.ItemSpec == "maven$javax.inject:javax.inject:1");
r.GetMetadata(IkvmReferenceItemMetadata.FallbackAssemblyVersion).Should().Be("1.0");
}

}
Expand Down

0 comments on commit 0d23ad7

Please sign in to comment.