On Tue, Mar 20, 2012 at 10:56 AM, Thilini Ishaka <[email protected]> wrote:

>
>
> On Tue, Mar 20, 2012 at 10:50 AM, Chintana Wilamuna <[email protected]>wrote:
>
>> Hi,
>>
>> Try doing a # gem install zip
>>
> Yes.
> sudo apt-get install libzip-ruby1.8
>

libzip-ruby1.9.1 is latest it seems.

thanks,

>
>
>>
>> You need to have rubygems installed - http://rubygems.org/pages/download
>>
>>     -Chintana
>>
>>
>> On Tue, Mar 20, 2012 at 5:44 AM, Afkham Azeez <[email protected]> wrote:
>>
>>> How do you manually run this ruby script?
>>>
>>> ruby gen_emma_coverage.rb instrument
>>> /System/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Home
>>>
>>> Above command did not work on Mac OS X.
>>>
>>> I got the following error.
>>>
>>> gen_emma_coverage.rb:3:in `require': no such file to load -- zip/zip
>>> (LoadError)
>>> from gen_emma_coverage.rb:3
>>>
>>>
>>> On Tue, Mar 20, 2012 at 9:59 AM, Charitha Kankanamge 
>>> <[email protected]>wrote:
>>>
>>>> *.em file (EMMA meta data holder) has been generated by "instr" command
>>>> (xargs -n 1 $JAVA_HOME/jre/bin/java -cp emma.jar emma instr -m
>>>> overwrite -cp < jarlist.txt), so this command execution did not happen
>>>> correctly or failed.
>>>>
>>>> [1] http://emma.sourceforge.net/userguide/ar01s02s03.html
>>>>
>>>>
>>>>
>>>> On Tue, Mar 20, 2012 at 9:12 AM, Afkham Azeez <[email protected]> wrote:
>>>>
>>>>> OK. I got the hang of it. But now it is failing with the following
>>>>> error.
>>>>>
>>>>> Caused by: java.io.FileNotFoundException: Source
>>>>> '/Users/azeez/projects/wso2/org/carbon/kernel/trunk/distribution/integration/tests/target/carbontmp1332214836127/wso2carbon-core-4.0.0-SNAPSHOT/coverage.em'
>>>>> does not exist
>>>>>  at org.apache.commons.io.FileUtils.copyFile(FileUtils.java:767)
>>>>> at
>>>>> org.apache.commons.io.FileUtils.copyFileToDirectory(FileUtils.java:706)
>>>>>  at
>>>>> org.apache.commons.io.FileUtils.copyFileToDirectory(FileUtils.java:670)
>>>>> at
>>>>> org.wso2.carbon.integration.framework.utils.ServerUtils.instrumentJarsForEmma(ServerUtils.java:232)
>>>>>  at
>>>>> org.wso2.carbon.integration.framework.utils.ServerUtils.startServerUsingCarbonHome(ServerUtils.java:55)
>>>>>
>>>>>
>>>>> On Tue, Mar 20, 2012 at 8:44 AM, Afkham Azeez <[email protected]> wrote:
>>>>>
>>>>>> Can you please explain how that method works?
>>>>>>
>>>>>> 1. What does the following block do?
>>>>>>
>>>>>> for (File file : new File(emmaHome).listFiles()) {
>>>>>>                 if
>>>>>> (file.getName().startsWith("org.wso2.carbon.integration.core")) {
>>>>>>                     ArchiveManipulator archiveManipulator = new
>>>>>> ArchiveManipulator();
>>>>>>
>>>>>> archiveManipulator.extract(file.getAbsolutePath(), emmaHome);
>>>>>>                 } else if (file.getName().startsWith("emma")) {
>>>>>>                     emmaJarName = file.getName();
>>>>>>                 }
>>>>>>             }
>>>>>>
>>>>>>
>>>>>> 2. What does the following block do?
>>>>>>
>>>>>> for (File file : new File[]{new File(carbonHome), emmaOutput}) {
>>>>>>                 FileUtils.copyFileToDirectory(new File(carbonHome +
>>>>>> File.separator + "lib" +
>>>>>>                         File.separator + "emma.jar"), file);
>>>>>>                 FileUtils.copyFileToDirectory(new File(emmaHome +
>>>>>> "gen_emma_coverage.rb"), file);
>>>>>>                 FileUtils.copyFileToDirectory(new File(jarList),
>>>>>> file);
>>>>>>             }
>>>>>>
>>>>>> gen_emma_coverage.rb is inside the resources directory in the Maven
>>>>>> module. How does it get picked?
>>>>>>
>>>>>>
>>>>>> On Tue, Mar 20, 2012 at 8:28 AM, Thilini Ishaka <[email protected]>wrote:
>>>>>>
>>>>>>> If I recall, we initially generated the coverage report manually by
>>>>>>> using below set of steps.
>>>>>>> Then the ServerUtils is used to handle that.
>>>>>>>
>>>>>>> 1. Create a jarlist.txt
>>>>>>> eg:* find
>>>>>>> /home/thilini/Desktop/wso2greg-3.6.0/repository/components/plugins/ >>
>>>>>>> /home/thilini/Desktop/wso2greg-3.6.0/repository/components/plugins/jarlist.txt
>>>>>>> *  (jarlist.txt should contain absolute paths of jars. Remove
>>>>>>> unwanted jars from the list. If not there will be issues when starting 
>>>>>>> the
>>>>>>> server)
>>>>>>>
>>>>>>> 2. xargs -n 1 $JAVA_HOME/jre/bin/java -cp emma.jar emma instr -m
>>>>>>> overwrite -cp < jarlist.txt
>>>>>>> 3. ruby dynamicImportsPatcher.rb < jarlist.txt  (Before running
>>>>>>> this step need to install rubyzip. Use sudo apt-get install
>>>>>>> libzip-ruby1.8)
>>>>>>> 4. Copy emma.jar to */repository/components/plugins,
>>>>>>> /repository/components/lib *and */lib *directories.
>>>>>>> 4. Start Carbon Server
>>>>>>> 5. Do the test
>>>>>>> 6. Shutdown server
>>>>>>> 7. cp wso2greg-3.6.0/coverage.ec .
>>>>>>> 8. java -cp emma.jar emma report -r html -in coverage.em,coverage.ec
>>>>>>>
>>>>>>> <http://coverage.ec/>Thanks
>>>>>>> Thilini
>>>>>>>
>>>>>>> On Tue, Mar 20, 2012 at 8:02 AM, Afkham Azeez <[email protected]>wrote:
>>>>>>>
>>>>>>>> Emma has been disabled for the past few months, and inevitably, the
>>>>>>>> code that does the instrumentation does not work. Can the person who 
>>>>>>>> wrote
>>>>>>>> the following method please explain how it works?
>>>>>>>>
>>>>>>>> public synchronized static void instrumentJarsForEmma(String
>>>>>>>> carbonHome) throws IOException {
>>>>>>>>         String workingDir = System.getProperty("user.dir");
>>>>>>>>         try {
>>>>>>>>             System.setProperty("user.dir", carbonHome);
>>>>>>>>             String emmaHome = System.getProperty("emma.home");
>>>>>>>>             if (emmaHome == null) {
>>>>>>>>                 return;
>>>>>>>>             } else if (!emmaHome.endsWith(File.separator)) {
>>>>>>>>                 emmaHome += File.separator;
>>>>>>>>             }
>>>>>>>>             File emmaOutput = new
>>>>>>>> File(System.getProperty("emma.output"));
>>>>>>>>             if (!emmaOutput.exists()) {
>>>>>>>>                 FileUtils.forceMkdir(emmaOutput);
>>>>>>>>             }
>>>>>>>>             String emmaJarName = null;
>>>>>>>>             for (File file : new File(emmaHome).listFiles()) {
>>>>>>>>                 if
>>>>>>>> (file.getName().startsWith("org.wso2.carbon.integration.core")) {
>>>>>>>>                     ArchiveManipulator archiveManipulator = new
>>>>>>>> ArchiveManipulator();
>>>>>>>>
>>>>>>>> archiveManipulator.extract(file.getAbsolutePath(), emmaHome);
>>>>>>>>                 } else if (file.getName().startsWith("emma")) {
>>>>>>>>                     emmaJarName = file.getName();
>>>>>>>>                 }
>>>>>>>>             }
>>>>>>>>
>>>>>>>>             if (emmaJarName == null) {
>>>>>>>>                 return;
>>>>>>>>             }
>>>>>>>>
>>>>>>>>             String jarList = System.getProperty("jar.list");
>>>>>>>>
>>>>>>>>
>>>>>>>>             FileUtils.copyFile(new File(emmaHome + emmaJarName),
>>>>>>>>                     new File(carbonHome + File.separator +
>>>>>>>> "repository" +
>>>>>>>>                             File.separator + "components" +
>>>>>>>> File.separator + "plugins" +
>>>>>>>>                             File.separator + "emma.jar"));
>>>>>>>>             FileUtils.copyFile(new File(emmaHome + emmaJarName),
>>>>>>>>                     new File(carbonHome + File.separator +
>>>>>>>> "repository" +
>>>>>>>>                             File.separator + "components" +
>>>>>>>> File.separator + "lib" +
>>>>>>>>                             File.separator + "emma.jar"));
>>>>>>>>             FileUtils.copyFile(new File(emmaHome + emmaJarName),
>>>>>>>>                     new File(carbonHome + File.separator + "lib" +
>>>>>>>>                             File.separator + "emma.jar"));
>>>>>>>>             for (File file : new File[]{new File(carbonHome),
>>>>>>>> emmaOutput}) {
>>>>>>>>                 FileUtils.copyFileToDirectory(new File(carbonHome +
>>>>>>>> File.separator + "lib" +
>>>>>>>>                         File.separator + "emma.jar"), file);
>>>>>>>>                 FileUtils.copyFileToDirectory(new File(emmaHome +
>>>>>>>> "gen_emma_coverage.rb"), file);
>>>>>>>>                 FileUtils.copyFileToDirectory(new File(jarList),
>>>>>>>> file);
>>>>>>>>             }
>>>>>>>>
>>>>>>>>             String temp;
>>>>>>>>             Process process = Runtime.getRuntime().exec(new
>>>>>>>> String[]{"ruby",
>>>>>>>>                     "gen_emma_coverage.rb", "instrument",
>>>>>>>> System.getenv("JAVA_HOME")}, null,
>>>>>>>>                     new File(carbonHome));
>>>>>>>>             BufferedReader reader = new BufferedReader(
>>>>>>>>                     new
>>>>>>>> InputStreamReader(process.getInputStream()));
>>>>>>>>             try {
>>>>>>>>                 while ((temp = reader.readLine()) != null) {
>>>>>>>>                     System.out.println(temp);
>>>>>>>>                 }
>>>>>>>>             } catch (IOException ignored) {
>>>>>>>>             }
>>>>>>>>             FileUtils.copyFileToDirectory(new File(carbonHome +
>>>>>>>> File.separator + "coverage.em"),
>>>>>>>>                     emmaOutput);
>>>>>>>>         } finally {
>>>>>>>>             System.setProperty("user.dir", workingDir);
>>>>>>>>         }
>>>>>>>>     }
>>>>>>>>
>>>>>>>> --
>>>>>>>> *Afkham Azeez*
>>>>>>>> Director of Architecture; WSO2, Inc.; http://wso2.com
>>>>>>>> Member; Apache Software Foundation; http://www.apache.org/
>>>>>>>> * <http://www.apache.org/>**
>>>>>>>> email: **[email protected]* <[email protected]>* cell: +94 77 3320919
>>>>>>>> blog: **http://blog.afkham.org* <http://blog.afkham.org>*
>>>>>>>> twitter: 
>>>>>>>> **http://twitter.com/afkham_azeez*<http://twitter.com/afkham_azeez>
>>>>>>>> *
>>>>>>>> linked-in: **http://lk.linkedin.com/in/afkhamazeez*
>>>>>>>> *
>>>>>>>> *
>>>>>>>> *Lean . Enterprise . Middleware*
>>>>>>>>
>>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> --
>>>>>>> *Regards*
>>>>>>>
>>>>>>> *Thilini Ishaka*
>>>>>>> *WSO2 Inc. http://wso2.com
>>>>>>> *
>>>>>>> *Mobile: +94 71 840 8171 *
>>>>>>> *            +94 77 211 8797*
>>>>>>> *Bolg: thiliniishaka.blogspot.com*
>>>>>>>
>>>>>>>
>>>>>>
>>>>>>
>>>>>> --
>>>>>> *Afkham Azeez*
>>>>>> Director of Architecture; WSO2, Inc.; http://wso2.com
>>>>>> Member; Apache Software Foundation; http://www.apache.org/
>>>>>> * <http://www.apache.org/>**
>>>>>> email: **[email protected]* <[email protected]>* cell: +94 77 3320919
>>>>>> blog: **http://blog.afkham.org* <http://blog.afkham.org>*
>>>>>> twitter: 
>>>>>> **http://twitter.com/afkham_azeez*<http://twitter.com/afkham_azeez>
>>>>>> *
>>>>>> linked-in: **http://lk.linkedin.com/in/afkhamazeez*
>>>>>> *
>>>>>> *
>>>>>> *Lean . Enterprise . Middleware*
>>>>>>
>>>>>>
>>>>>
>>>>>
>>>>> --
>>>>> *Afkham Azeez*
>>>>> Director of Architecture; WSO2, Inc.; http://wso2.com
>>>>> Member; Apache Software Foundation; http://www.apache.org/
>>>>> * <http://www.apache.org/>**
>>>>> email: **[email protected]* <[email protected]>* cell: +94 77 3320919
>>>>> blog: **http://blog.afkham.org* <http://blog.afkham.org>*
>>>>> twitter: 
>>>>> **http://twitter.com/afkham_azeez*<http://twitter.com/afkham_azeez>
>>>>> *
>>>>> linked-in: **http://lk.linkedin.com/in/afkhamazeez*
>>>>> *
>>>>> *
>>>>> *Lean . Enterprise . Middleware*
>>>>>
>>>>>
>>>>> _______________________________________________
>>>>> Dev mailing list
>>>>> [email protected]
>>>>> http://wso2.org/cgi-bin/mailman/listinfo/dev
>>>>>
>>>>>
>>>>
>>>
>>>
>>> --
>>> *Afkham Azeez*
>>> Director of Architecture; WSO2, Inc.; http://wso2.com
>>> Member; Apache Software Foundation; http://www.apache.org/
>>> * <http://www.apache.org/>**
>>> email: **[email protected]* <[email protected]>* cell: +94 77 3320919
>>> blog: **http://blog.afkham.org* <http://blog.afkham.org>*
>>> twitter: **http://twitter.com/afkham_azeez*<http://twitter.com/afkham_azeez>
>>> *
>>> linked-in: **http://lk.linkedin.com/in/afkhamazeez*
>>> *
>>> *
>>> *Lean . Enterprise . Middleware*
>>>
>>>
>>
>>
>> --
>> Chintana Wilamuna
>> Associate Technical Lead
>> WSO2, Inc.; http://wso2.com
>> lean.enterprise.middleware
>>
>> phone: +94 75 211 1106
>> blog: http://engwar.com/
>> photos: http://flickr.com/photos/chintana
>> linkedin: http://www.linkedin.com/in/engwar
>> twitter: twitter.com/std_err
>>
>>
>
>
> --
> *Regards*
>
> *Thilini Ishaka*
> *WSO2 Inc. http://wso2.com
> *
> *Mobile: +94 71 840 8171 *
> *            +94 77 211 8797*
> *Bolg: thiliniishaka.blogspot.com*
>
>
> _______________________________________________
> Dev mailing list
> [email protected]
> http://wso2.org/cgi-bin/mailman/listinfo/dev
>
>


-- 
Supun Malinga,

Software Engineer,
WSO2 Inc.
http://wso2.com
http://wso2.org
email - [email protected] <[email protected]>
mobile - 071 56 91 321
_______________________________________________
Dev mailing list
[email protected]
http://wso2.org/cgi-bin/mailman/listinfo/dev

Reply via email to