Giter Site home page Giter Site logo

Comments (6)

japj avatar japj commented on July 18, 2024 1

Yes, I can indeed confirm this fixes the issue.
Again, @jeffkl thank you very much for this library and quick response!

from msbuildprojectcreator.

jeffkl avatar jeffkl commented on July 18, 2024

Yes you'll just need to create a ProjectCollection and attach a BinaryLogger.

string binLogPath = Path.Combine(TestRootPath, "test.binlog");

using (ProjectCollection projectCollection = new ProjectCollection())
{
    projectCollection.RegisterLogger(new BinaryLogger
    {
        Parameters = $"LogFile={binLogPath}",
    });

    ProjectCreator.Templates
        .LogsMessage(
            text: "$(Property1)",
            projectCollection: projectCollection)
        .Property("Property1", "Hello World")
        .Save(GetTempFileName(".proj"))
        .TryBuild(out bool result);

        result.ShouldBeTrue();
}

File.Exists(binLogPath).ShouldBeTrue();

from msbuildprojectcreator.

japj avatar japj commented on July 18, 2024

Hi @jeffkl , thanks for this example.
Initially it seems to work ok, but I ran into some issues:

  • It seems when I change the TryBuild with

    .TryBuild(out bool result, out BuildOutput buildOutput);
    

    then the actual binlog file that is generated seems to be corrupt.
    (it only contains "error", although the build was actually succeeded).

  • Also, in this case the list of embedded msbuild files is empty.

from msbuildprojectcreator.

jeffkl avatar jeffkl commented on July 18, 2024

Thanks for letting me know, turns out that's a bug. I'm working on a fix: #45

from msbuildprojectcreator.

jeffkl avatar jeffkl commented on July 18, 2024

Fix is published, https://github.com/jeffkl/MSBuildProjectCreator/releases/tag/v1.3.7

from msbuildprojectcreator.

japj avatar japj commented on July 18, 2024

Awesome! I will try it tomorrow at work and let you know if I run into anything else.

We are working on writing c# based unit tests for our custom Msbuild sdk and have been using binlog files a lot as a way of analyzing β€œreal” build issues so want to use that too in case of test failures to help with analysis.

When looking at some of the MSBuildSdks I realized that there were actually c# based unit tests based on this fluent api, this is greatly appreciated!

from msbuildprojectcreator.

Related Issues (18)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    πŸ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. πŸ“ŠπŸ“ˆπŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❀️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.