コード例 #1
0
        public void TestUnresolvedImportFrom()
        {
            var testWriter   = CreateTestWriter(@"ImportNameTest/MyProject");
            var configWriter = testWriter.ConfigWriter;

            configWriter.AddBuildSpec(@"project.dsc", @"
namespace MyProject
{
    export const y0 = importFrom(""MyLibC"").x;
}");

            testWriter.AddExtraFile(@"../AuxLib/MyLibB/package.dsc", @"
export const x = 41 + 1;");

            testWriter.AddExtraFile(@"../AuxLib/MyLibB/package.config.dsc", @"
module({ name: ""MyLibB"" });");

            SourceResolverTestObject resolver = configWriter.AddSourceResolver();

            resolver.AddPackage("../AuxLib/MyLibB");

            configWriter.AddDefaultSourceResolver();

            var result = Evaluate(testWriter, @"project.dsc", new[] { "MyProject.y0" });

            result.ExpectErrorCode((int)global::BuildXL.FrontEnd.Core.Tracing.LogEventId.CannotBuildWorkspace, count: 1);
            result.ExpectErrorMessageSubstrings(new[] { "No resolver was found that owns module 'MyLibC'" });
        }
コード例 #2
0
        public void TestImportFrom()
        {
            var testWriter   = CreateTestWriter(@"ImportNameTest/MyProject");
            var configWriter = testWriter.ConfigWriter;

            configWriter.AddBuildSpec(@"project.dsc", @"
namespace MyProject
{
    export const y0 = importFrom(""MyLibB"").x;
}");

            testWriter.AddExtraFile(@"../AuxLib/MyLibB/package.dsc", @"
export const x = 41 + 1;");

            testWriter.AddExtraFile(@"../AuxLib/MyLibB/package.config.dsc", @"
module({ name: ""MyLibB"" });");

            SourceResolverTestObject resolver = configWriter.AddSourceResolver();

            resolver.AddPackage("../AuxLib/MyLibB");

            configWriter.AddDefaultSourceResolver();

            var result = Evaluate(testWriter, @"project.dsc", new[] { "MyProject.y0" });

            result.ExpectNoError();
            result.ExpectValues(count: 1);

            Assert.Equal(42, result.Values[0]);
        }