incubator-flex-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Erik de Bruin <e...@ixsoftware.nl>
Subject Re: [FalconJx::TestGoogXYZ] Creating tests for emmitters
Date Sun, 30 Dec 2012 20:26:40 GMT
Ah, I'm more sloppy than I thought, sorry again. I did test, but I had
that 'debug' method hanging around, so they all passed.

I like really atomic commits, but that's not at all that easy (I'm not
complaining, mind you), as the changes needed to make some tests pass
are all over the place ;-)

I guess things will improve when we get more experience with the
codebase and with working together, please be patient.

I think I'll take that week off now, too :-)

EdB



On Sun, Dec 30, 2012 at 9:08 PM, Michael Schmalle
<apache@teotigraphix.com> wrote:
> Erik,
>
> Did you run all the tests before you committed? I have 9 failures and had an
> error assertOutDebug not found.
>
> I also see now what happened to the semi-colan debacle.
>
> I should have told you this but when testing a function/method, it will not
> have the semi-colon because it's the larger container, in this case the
> TypeNode emit that will add the semi-colon. So you will test for semi-colons
> when you test a class with methods.
>
> I'm going to fix these tests so they all pass and commit them.
>
> In my experience working with large frameworks and testing them, its not a
> good idea to have a bunch of hanging code not committed. Since we are
> working together it will make it easier if you do more discrete commits
> right now.
>
> We also have to get rid of those NASTY globals, I'm going to add
> configuration variables soon for this so they get reset automatically
> (JSConfiguration) in the setup of the Backend.
>
> Remember run the whole suite before you commit, if you did and they all
> passed I think you are changing to much at a time. :)
>
>
> Mike
>
> Quoting Erik de Bruin <erik@ixsoftware.nl>:
>
>> I've finished implementing the code to make the "Method Members" tests
>> pass. I needed to reroute some of the AS emitter code in order to
>> allow the JS emitter to override the writing of the function closing
>> block so I could output the closing semicolon, please feel free to
>> check my implementation and brutally comment on my hacks :-)
>>
>> EdB
>>
>>
>> On Sat, Dec 29, 2012 at 1:35 AM, Michael Schmalle
>> <apache@teotigraphix.com> wrote:
>>>
>>>
>>> Quoting Erik de Bruin <erik@ixsoftware.nl>:
>>>
>>>> Mike,
>>>>
>>>> New 'layout' looks great!
>>>
>>>
>>>
>>> I figured as much. I sat in front of the package explorer for about 30
>>> minutes thinking about package names in sentences. I knew I would be
>>> looking
>>> and searching through these for hours to come, if you see anything that
>>> should be changed, we should do it sooner than later.
>>>
>>>
>>>> I'm adding test classes one by one, when i have "all" the code for the
>>>> 'asserts' figured out. The tests will fail (obviously), but with the
>>>> tests in place if will be much easier for me to work on the actual
>>>> code. I'll be away for much of next week, but maybe I get some time
>>>> this weekend to work on this a bit more.
>>>
>>>
>>>
>>> Right, I'm sure you have a life as well. I might sneak in and make a
>>> couple
>>> tests work so it might help your context when doing your tasks.
>>>
>>> I think I am going to focus back on AS3 and the walker impl to get it
>>> more
>>> abstract. I'll hand the JS to you for the next couple weeks. :)
>>>
>>>
>>>> EdB
>>>>
>>>>
>>>> On Fri, Dec 28, 2012 at 12:34 PM, Erik de Bruin <erik@ixsoftware.nl>
>>>> wrote:
>>>>>
>>>>>
>>>>> I'm on the commit list, and I try to make it a habit to Update before
>>>>> I start any work, so no need for a separate notification, but thanks.
>>>>>
>>>>> EdB
>>>>>
>>>>>
>>>>> On Fri, Dec 28, 2012 at 12:31 PM, Michael Schmalle
>>>>> <apache@teotigraphix.com> wrote:
>>>>>>
>>>>>>
>>>>>> HAH!
>>>>>>
>>>>>> You got me, wow I was so organized starting this project. :)
>>>>>>
>>>>>> I'm looking about 1-2 hours if everything goes right. I hate these
but
>>>>>> this
>>>>>> is what you get for being a mad scientist sometimes. After this we
>>>>>> should be
>>>>>> good to go, I think all the reorganization will make sense.
>>>>>>
>>>>>> I'll let you know when I commit if you aren't watching the commits
>>>>>> list.
>>>>>> It's funny, I now remember in the very beginning putting the tests
in
>>>>>> js
>>>>>> and
>>>>>> thinking this doesn't make sense...
>>>>>>
>>>>>>
>>>>>> Mike
>>>>>>
>>>>>>
>>>>>> Quoting Erik de Bruin <erik@ixsoftware.nl>:
>>>>>>
>>>>>>> MIke,
>>>>>>>
>>>>>>> When do you expect this 'mother of all refactors' to land? If
'soon',
>>>>>>> I'll hold off on committing more tests and make them work on
the
>>>>>>> 'new'
>>>>>>> code first, no worries.
>>>>>>>
>>>>>>> And I did mean "org.apache.flex.js", it is the package structure
for
>>>>>>> 'compiler.jx.tests'... Maybe that also needs 'a little' refactoring?
>>>>>>>
>>>>>>> EdB
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> On Fri, Dec 28, 2012 at 12:15 PM, Michael Schmalle
>>>>>>> <apache@teotigraphix.com> wrote:
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> Erik,
>>>>>>>>
>>>>>>>> FYI I am doing this refactor right now and it's big, so when
you do
>>>>>>>> an
>>>>>>>> svn
>>>>>>>> update, you will have to rub your eyes for a second. I wanted
to to
>>>>>>>> do
>>>>>>>> this,
>>>>>>>> now your tests in the 'org.apache.flex.js.internal.js.codegen.goog'
>>>>>>>> gave
>>>>>>>> me
>>>>>>>> the reason. ;-) There is no 'org.apache.flex.js' package,
I think
>>>>>>>> you
>>>>>>>> meant
>>>>>>>> 'org.apache.flex.compiler'. :)
>>>>>>>>
>>>>>>>> Before I commit this huge update, I will make sure your tests
are
>>>>>>>> running
>>>>>>>> correctly.
>>>>>>>>
>>>>>>>> Mike
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> Quoting Erik de Bruin <erik@ixsoftware.nl>:
>>>>>>>>
>>>>>>>>> Mike,
>>>>>>>>>
>>>>>>>>> While trying to stay out of your hair in the FalconJx
code, I
>>>>>>>>> thought
>>>>>>>>> I might spend some time translating the tests you wrote
for the AS
>>>>>>>>> output to tests for the JS + 'goog' output. I'm doing
this by
>>>>>>>>> copying
>>>>>>>>> the AS tests, renaming them, converting them to subclasses
of the
>>>>>>>>> AS
>>>>>>>>> tests and pointing them to the 'GoogBackend' (using the
code from
>>>>>>>>> your
>>>>>>>>> test class).
>>>>>>>>>
>>>>>>>>> An observation: some methods of JSGoogEmitter rely on
'globals'
>>>>>>>>> like
>>>>>>>>> 'classDefinition', which are not set when the methods
are called
>>>>>>>>> from
>>>>>>>>> the tests. I'm not very familiar with JUnit (or unit
testing in
>>>>>>>>> general), so a little pointer on how to fix this would
be much
>>>>>>>>> appreciated.
>>>>>>>>>
>>>>>>>>> Meanwhile I'll put all the tests (with the 'assertOut'
commented
>>>>>>>>> out)
>>>>>>>>> in a 'goog' package in 'org.apache.flex.js.internal.js.codegen'.
>>>>>>>>> Maybe
>>>>>>>>> we want to put the 'goog' Emitter classes of the compiler
also in a
>>>>>>>>> 'goog' package, to increase the separation between them
and other
>>>>>>>>> output types?
>>>>>>>>>
>>>>>>>>> EdB
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> --
>>>>>>>>> Ix Multimedia Software
>>>>>>>>>
>>>>>>>>> Jan Luykenstraat 27
>>>>>>>>> 3521 VB Utrecht
>>>>>>>>>
>>>>>>>>> T. 06-51952295
>>>>>>>>> I. www.ixsoftware.nl
>>>>>>>>>
>>>>>>>>
>>>>>>>> --
>>>>>>>> Michael Schmalle - Teoti Graphix, LLC
>>>>>>>> http://www.teotigraphix.com
>>>>>>>> http://blog.teotigraphix.com
>>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> --
>>>>>>> Ix Multimedia Software
>>>>>>>
>>>>>>> Jan Luykenstraat 27
>>>>>>> 3521 VB Utrecht
>>>>>>>
>>>>>>> T. 06-51952295
>>>>>>> I. www.ixsoftware.nl
>>>>>>>
>>>>>>
>>>>>> --
>>>>>> Michael Schmalle - Teoti Graphix, LLC
>>>>>> http://www.teotigraphix.com
>>>>>> http://blog.teotigraphix.com
>>>>>>
>>>>>
>>>>>
>>>>>
>>>>> --
>>>>> Ix Multimedia Software
>>>>>
>>>>> Jan Luykenstraat 27
>>>>> 3521 VB Utrecht
>>>>>
>>>>> T. 06-51952295
>>>>> I. www.ixsoftware.nl
>>>>
>>>>
>>>>
>>>>
>>>>
>>>> --
>>>> Ix Multimedia Software
>>>>
>>>> Jan Luykenstraat 27
>>>> 3521 VB Utrecht
>>>>
>>>> T. 06-51952295
>>>> I. www.ixsoftware.nl
>>>>
>>>
>>> --
>>> Michael Schmalle - Teoti Graphix, LLC
>>> http://www.teotigraphix.com
>>> http://blog.teotigraphix.com
>>>
>>
>>
>>
>> --
>> Ix Multimedia Software
>>
>> Jan Luykenstraat 27
>> 3521 VB Utrecht
>>
>> T. 06-51952295
>> I. www.ixsoftware.nl
>>
>
> --
> Michael Schmalle - Teoti Graphix, LLC
> http://www.teotigraphix.com
> http://blog.teotigraphix.com
>



--
Ix Multimedia Software

Jan Luykenstraat 27
3521 VB Utrecht

T. 06-51952295
I. www.ixsoftware.nl

Mime
View raw message