Hi Taher,

While at it, FYI: I'd love to see this flight 
https://issues.apache.org/jira/browse/INFRA-3590

See also https://issues.apache.org/jira/browse/OFBIZ-4757

Jacques


Le 26/05/2016 à 19:24, Taher Alkhateeb a écrit :
Hi Adam

Ok your objection is a good enough "no" for me to back off. I will try to
think of a way to work on the integration as you suggested.

I am not picking specifically on your work. However the entire startup
logic has many problems and lengthy messy code scattered all over the
place. I am trying as much as I can to "cut out" code until some one says
no like your good self.

I will fix the build.xml to ensure correct behavior in cobertura.

Taher Alkhateeb

On Thursday, 26 May 2016, Adam Heath <[email protected]> wrote:

Let me restate, do not remove the code coverage tool; fix the integration.

Every single time I used code coverage to design more tests, I *always*
found bugs.  Real bugs.  And, I also found unreachable code.  I'll give an
example:

==
public void printMap(Map value) {
   if (value == null) {
     return;
   }
   String foo = safeToString(value);
   System.err.println(foo);
}

private String safeToString(Object value) {
   if (value == null) {
     return null;
   }
   return value.toString();
}
==

Granted, the above unreachable code in safeToString *code* be discovered
with deep study, but an *automated* tool makes it much easier to find.
And, the above example is a *very* simple example. Please take a look at
the test cases for UtilCache.

On 05/26/2016 11:26 AM, Adam Heath wrote:

Not to Pierre, but ugly and broken?  How so?  Please expand with concrete
issues.

ps: I'm the original integrator of cobertura into ofbiz.

pps: I have a local branch that converted ofbiz to maven, and actually
produced a runnable output.  Should I revive that?

On 05/26/2016 07:54 AM, Pierre Smits wrote:

+1 as it never got off the ground properly. We can always revisit later
when desire to do so rises again.

I use Sonar, but that is another subject.

Best regards,

Pierre Smits

ORRTIZ.COM <http://www.orrtiz.com>
OFBiz based solutions & services

OFBiz Extensions Marketplace
http://oem.ofbizci.net/oci-2/

On Thu, May 26, 2016 at 2:46 PM, Taher Alkhateeb <
[email protected]

wrote:
Hello everyone,

As part of the refactoring process, I suggest to completely remove
cobertura and sonar from the framework. My proposal is based on the
following:

- The startup logic is more complex because of the existence of legacy
classes (Instrumenter, InstrumenterWorker, etc ...).
- No one (AFAIK) is actively using cobertura or sonar, and the targets
in
build.xml are actually broken
- The way cobertura is integrated with ofbiz is poor and ugly
- Before integrating cobertura, ofbiz first needs a better testing
framework that allows for TDD and red-green-refactor. Otherwise, this
whole
issue with test coverage is a moot point
- Too much complexity and legacy code in build.xml, common.xml, ivy.xml,
macros.xml and others. It's just really ugly

All the code that I saw for cobertura is just ugly and broken. Now it's
perfectly fine to reintroduce cobertura cleanly in the future, but I
would
not use the existing code anyway, I would just wipe it all out and start
fresh.

I'm not sure whether we need to vote on this? Appreciate your feedback.

Taher Alkhateeb



Reply via email to