Re: Unit Tests with newt pkg new

2018-09-11 Thread Fabio Utzig
+1

On Sat, Sep 8, 2018, at 8:04 PM, Kevin Townsend wrote:
> The additions to the newt tool in recent releases makes things like package
> creation much easier, and pulling the code from Github is a good idea to
> keep things up to date.
> 
> In my own workflow, unit tests are a major part of package development
> since I can quickly and easily run functions natively, testing and updating
> the code accordingly. I simply force an intentional assert failure to see
> the printf debug output, edit code, run the unit test again, and on and on.
> 
> I'm also of the opinion that unit tests, aside from their obvious use
> improving code reliability, are an excellent source of 'documentation'
> since you can see the APIs in use for specific edge cases, and they are
> more likely be be kept up to date with breaking API changes.
> 
> I wanted to propose the idea of having the '/test' infrastructure are part
> of the default pkg when you run 'newt pkg new'. You currently need to
> manually create the files for this and it's a lot of repetitive copy,
> paste, rename type work that could be avoided, and might push more people
> to write unit tests?
> 
> My +1 would be to have /test as a standard feature of any package, and you
> can always delete it, but other people might find this delete burden
> inappropriate?
> 
> Kevin


Re: Unit Tests with newt pkg new

2018-09-10 Thread Christopher Collins
On Sun, Sep 09, 2018 at 01:04:35AM +0200, Kevin Townsend wrote:
[...]
> My +1 would be to have /test as a standard feature of any package, and you
> can always delete it, but other people might find this delete burden
> inappropriate?

+1.  I think that is a great idea.

Chris


Unit Tests with newt pkg new

2018-09-08 Thread Kevin Townsend
The additions to the newt tool in recent releases makes things like package
creation much easier, and pulling the code from Github is a good idea to
keep things up to date.

In my own workflow, unit tests are a major part of package development
since I can quickly and easily run functions natively, testing and updating
the code accordingly. I simply force an intentional assert failure to see
the printf debug output, edit code, run the unit test again, and on and on.

I'm also of the opinion that unit tests, aside from their obvious use
improving code reliability, are an excellent source of 'documentation'
since you can see the APIs in use for specific edge cases, and they are
more likely be be kept up to date with breaking API changes.

I wanted to propose the idea of having the '/test' infrastructure are part
of the default pkg when you run 'newt pkg new'. You currently need to
manually create the files for this and it's a lot of repetitive copy,
paste, rename type work that could be avoided, and might push more people
to write unit tests?

My +1 would be to have /test as a standard feature of any package, and you
can always delete it, but other people might find this delete burden
inappropriate?

Kevin