My feelings in order of importance are:
1) For sure we should not be adding things to the SB API just for testing.
That's going to make for a bad API.
2) We should test everything we can test through the SB API
3) Things that are impossible to test through the SB API need some other way to
test them.
a) One way would be to add some SBTest headers that augment the SB API's
and add stuff just for testing.
They would depend on the SB API and you would SWIG & include them in the
test harness. Tests that use them
would have to be marked as such since you wouldn't be able to run them
against an installed lldb, but...
b) Another way is to write something like C++ unit tests
I kind of prefer (a) because it seems likely to me that maintaining tests
based on this is less likely to depend
on irrelevant implementation details of the lldb_private API's. And it
means we only have one test harness to maintain.
OTOH, in the case of SBArgs, as I said earlier I'm not totally convinced you
couldn't come up with a decent reason such a thing might be useful...
Jim
> On Mar 11, 2015, at 3:05 PM, Zachary Turner <[email protected]> wrote:
>
> In http://reviews.llvm.org/D8265#139320, @clayborg wrote:
>
>> You can also test with setting the "target.run-args":
>>
>> (lldb) settings set target.run-args "one 1" 'two 2' three
>> (lldb) settings show target.run-args
>> target.run-args (arguments) =
>> [0]: "one 1"
>> [1]: "two 2"
>> [2]: "three"
>>
>>
>
>
> I'm also not crazy about this. it's not testing the real thing. A long time
> ago I proposed C++ based unit tests and the reaction wasn't very warm, but on
> the other hand now we're saying "don't add classes to the public API just for
> testing". Put together, this sounds like "we don't need to test everything".
> I know that's not the intention, but the point is these two statements don't
> really reconcile very well with each other. If the SB API is the way to
> test things, then we should be able to add things to it for the purpose of
> testing. If it's not, then we need to get gtest up and running on all
> platforms and all build systems and we need to start writing unit tests.
>
>
> http://reviews.llvm.org/D8265
>
> EMAIL PREFERENCES
> http://reviews.llvm.org/settings/panel/emailpreferences/
>
>
_______________________________________________
lldb-commits mailing list
[email protected]
http://lists.cs.uiuc.edu/mailman/listinfo/lldb-commits