ExpressionToCodeLib 2.0.0-alpha6
See the version list below for details.
dotnet add package ExpressionToCodeLib --version 2.0.0-alpha6
NuGet\Install-Package ExpressionToCodeLib -Version 2.0.0-alpha6
<PackageReference Include="ExpressionToCodeLib" Version="2.0.0-alpha6" />
paket add ExpressionToCodeLib --version 2.0.0-alpha6
#r "nuget: ExpressionToCodeLib, 2.0.0-alpha6"
// Install ExpressionToCodeLib as a Cake Addin #addin nuget:?package=ExpressionToCodeLib&version=2.0.0-alpha6&prerelease // Install ExpressionToCodeLib as a Cake Tool #tool nuget:?package=ExpressionToCodeLib&version=2.0.0-alpha6&prerelease
Generates valid, readable C# from an expression tree, and can annotate that code with runtime values. This can
be useful for code generation and for unit testing: ExpressionToCode detects NUnit, xUnit.NET and MSTest and
uses their assertions if available, and a normal Exception otherwise (so it runs fine outside those specific unit
testing frameworks too).
ExpressionToCode was inspired by Power Asssert.NET. It differs from PowerAssert.NET by supporting a much larger
portion of the lambda syntax and to respect C#'s normal operator precedence, in addition to general polish.
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET Framework | net40-client is compatible. |
This package has no dependencies.
NuGet packages (8)
Showing the top 5 NuGet packages that depend on ExpressionToCodeLib:
Package | Downloads |
---|---|
TestBase
*TestBase* gives you a flying start with - fluent assertions that are easy to extend - sharp error messages - tools to help you test with “heavyweight” dependencies on - AspNetCore.Mvc, AspNet.Mvc or WebApi Contexts - HttpClient - Ado.Net - Streams & Logging - Mix & match with your favourite test runners & assertions. ``` UnitUnderTest.Action() .ShouldNotBeNull() .ShouldEqualByValueExceptFor(new {Id=1, Descr=expected}, ignoreList ) .Payload .ShouldMatchIgnoringCase("I expected this") .Should(someOtherPredicate); .Items .ShouldAll(predicate) .ShouldContain(item) .ShouldNotContain(predicate) .Where(predicate) .SingleOrAssertFail() .ShouldEqualByValue().ShouldEqualByValueExceptFor(...).ShouldEqualByValueOnMembers() work with all kinds of object and collections, and report what differed. string.ShouldMatch(pattern).ShouldNotMatch().ShouldBeEmpty().ShouldNotBeEmpty() .ShouldNotBeNullOrEmptyOrWhiteSpace().ShouldEqualIgnoringCase() .ShouldContain().ShouldStartWith().ShouldEndWith().ShouldBeContainedIn(), ... numeric.ShouldBeBetween().ShouldEqualWithTolerance()....GreaterThan....LessThan...GreaterOrEqualTo ... ienumerable.ShouldAll().ShouldContain().ShouldNotContain().ShouldBeEmpty().ShouldNotBeEmpty() ... stream.ShouldHaveSameStreamContentAs().ShouldContain() value.ShouldBe().ShouldNotBe().ShouldBeOfType().ShouldBeAssignableTo()... ``` Testable Logging is in packages Extensions.Logging.ListOfString and Serilog.Sinks.ListOfString ``` // Extensions.Logging.ListOfString var log = new List<String>(); ILogger mslogger= new LoggerFactory().AddStringListLogger(log).CreateLogger("Test2"); // Serilog.Sinks.ListOfString Serilog.Logger slogger= new LoggerConfiguration().WriteTo.StringList(log).CreateLogger(); ``` |
|
ProgressOnderwijsUtils
Collection of utilities developed by ProgressOnderwijs |
|
TestBase.AdoNet
TestBase.AdoNet TestBase.FakeDb ------------------ Fake and verify AdoNet queries and commands ``` - fakeDbConnection.SetupForQuery(IEnumerable<TFakeData>; ) - fakeDbConnection.SetupForQuery(IEnumerable<Tuple<TFakeDataForTable1,TFakeDataForTable2>> ) - fakeDbConnection.SetupForQuery(fakeData, new[] {"FieldName1", FieldName2"}) - fakeDbConnection.SetupForExecuteNonQuery(rowsAffected) - fakeDbConnection.ShouldHaveUpdated("tableName", [Optional] fieldList, whereClauseField) - fakeDbConnection.ShouldHaveSelected("tableName", [Optional] fieldList, whereClauseField) - fakeDbConnection.ShouldHaveUpdated("tableName", [Optional] fieldList, whereClauseField) - fakeDbConnection.ShouldHaveDeleted("tableName", whereClauseField) - fakeDbConnection.ShouldHaveInvoked(cmd => predicate(cmd)) - fakeDbConnection.ShouldHaveExecutedStoredProcedure("name") - fakeDbConnection.ShouldHaveXXX().ShouldHaveParameter("name", value) - fakeDbConnection.Verify(x=>x.CommandText.Matches("Insert [case] .*") && x.Parameters["id"].Value==1) ``` TestBase.RecordingDb -------------------- * `new RecordingDbConnection(IDbConnection)` helps you profile Ado.Net Db calls See also - TestBase - TestBase.Mvc - TestBase.AdoNet - Serilog.Sinks.ListOfString - Extensions.Logging.ListOfString |
|
ExpressiveAssertions
Flexible assertion library leveraging the .NET expression tree syntax |
|
FranSync.DependencyInjection.WindsorCastle
FranSync.Configuration |
GitHub repositories
This package is not used by any popular GitHub repositories.
Version | Downloads | Last updated |
---|---|---|
3.5.0 | 14,476 | 8/19/2022 |
3.4.1 | 1,090 | 5/23/2022 |
3.4.0 | 12,615 | 2/21/2021 |
3.3.0 | 33,448 | 9/12/2019 |
3.2.0 | 16,938 | 2/10/2019 |
3.1.0 | 23,532 | 7/10/2018 |
3.1.0-alpha | 1,615 | 7/10/2018 |
3.0.0 | 12,040 | 6/27/2018 |
3.0.0-beta1 | 1,557 | 6/26/2018 |
3.0.0-alpha4 | 1,457 | 6/15/2018 |
3.0.0-alpha3 | 1,568 | 6/15/2018 |
3.0.0-alpha2 | 1,555 | 6/12/2018 |
3.0.0-alpha1 | 1,542 | 6/3/2018 |
2.7.0 | 112,928 | 2/19/2018 |
2.6.0 | 1,829 | 2/16/2018 |
2.6.0-signed | 1,680 | 2/16/2018 |
2.5.1 | 14,339 | 10/30/2017 |
2.5.0 | 2,077 | 9/20/2017 |
2.4.1 | 1,784 | 8/23/2017 |
2.4.0 | 2,053 | 6/1/2017 |
2.3.0 | 1,769 | 6/1/2017 |
2.2.0 | 1,751 | 5/10/2017 |
2.1.0 | 1,828 | 5/5/2017 |
2.0.0 | 2,974 | 4/26/2017 |
2.0.0-beta7 | 1,545 | 4/10/2017 |
2.0.0-beta6 | 1,465 | 3/30/2017 |
2.0.0-beta5 | 1,512 | 3/30/2017 |
2.0.0-beta4 | 1,556 | 3/26/2017 |
2.0.0-beta3 | 1,568 | 3/26/2017 |
2.0.0-beta2 | 1,597 | 1/25/2017 |
2.0.0-alpha9 | 1,624 | 1/25/2017 |
2.0.0-alpha6 | 2,555 | 7/29/2016 |
2.0.0-alpha4 | 2,254 | 2/24/2016 |
2.0.0-alpha | 1,841 | 2/7/2016 |
1.5.4 | 43,685 | 7/7/2015 |
1.5.3 | 3,707 | 6/15/2015 |
1.5.2 | 7,852 | 3/22/2015 |
1.5.1 | 2,089 | 3/10/2015 |
1.5.0 | 2,214 | 3/7/2015 |
1.4.8 | 2,722 | 1/21/2015 |
1.4.7 | 2,039 | 1/11/2015 |
1.4.6 | 4,109 | 8/30/2014 |
1.4.5 | 6,017 | 5/29/2014 |
1.4.4 | 8,897 | 4/9/2013 |
1.4.3 | 2,088 | 4/5/2013 |
1.4.2 | 2,036 | 3/29/2013 |
1.4.1 | 2,033 | 3/26/2013 |
1.4.0 | 2,034 | 3/12/2013 |
1.3.0 | 2,133 | 3/11/2013 |
1.2.0 | 1,962 | 3/8/2013 |
1.1.0.1 | 2,071 | 3/7/2013 |
1.1.0 | 2,049 | 3/7/2013 |
Improve pseudocode generator and make it configurable.