AutoPoco
Blog posts on the OSS - AutoPoco
What's that? I skipped a number? Actually I didn't, but 0.3 wasn't particularly major so making a blog entry seemed a bit redundant :)
What have I added? Glad you asked:
Method Invocation
During configuration, you can now set up data sources for parameters of methods, just pass in raw values or just call a method with no arguments.
It's all been done in a strongly-typed manner to fit in with the rest of AutoPoco.
x.Include<SimpleMethodClass>()
...
posted @ Thursday, April 15, 2010 9:19 AM |
I noticed a bit of traffic coming from somewhere I didn't recognise, so I went over to check it out...
It was just ranty link bait so I won't bother linking it, but it reminded me of a stance I took a few years ago while I was still just using the MS provided frameworks and software like a good little drone...
Starting with the obvious - "We already have NBuilder and AutoFixture so what on earth do we need another one of these for? "
When I set out to write AutoPoco, the fact that there were existing projects wasn't even a consideration for...
posted @ Friday, April 09, 2010 9:37 PM |
I've added some features to AutoPoco to make it actually functional
Configuration can now be done automatically:
IGenerationSessionFactory factory = AutoPocoContainer.Configure(x =>
{
x.Conventions(c =>
{
c.UseDefaultConventions();
});
x.AddFromAssemblyContainingType<SimpleUser>();
});
As to start with, meaningful data isn't always required - just non-nulls and sensible defaults.
Collections can now be created with controlled content, for example:
mSession.List<SimpleUser>()
.Random(5)
...
posted @ Thursday, April 08, 2010 1:48 AM |
** Update: Version 0.2 Now Released**
The product of one weekend and a bank holiday's code, I wanted to simplify the way we were generating test data for our tests, and writing a class called <ObjectName>Builder with lots of permutations for overriding various properties for every single object I wanted to generate was getting tedious.
I also wanted to have a go at writing something that exposed a fluent interface that could be extended using extension methods, and combined convention with configuration to do its job in an easily configurable fashion.
Combining these two into a project was a fun thing to do,...
posted @ Tuesday, April 06, 2010 8:54 AM |