From 580d3c2795b161f99666db1fb0682bd8928ae6a3 Mon Sep 17 00:00:00 2001 From: lavanya-92 <37185412+lavanya-92@users.noreply.github.com> Date: Sun, 25 Jul 2021 16:03:42 +0530 Subject: [PATCH] Add files via upload --- README.md | 71 ++++++++++++++++++- pom.xml | 70 ++++++++++++++++++ .../examples/maven/java/HelloWorld.java | 13 ++++ .../examples/maven/java/HelloWorldTest.java | 22 ++++++ 4 files changed, 175 insertions(+), 1 deletion(-) create mode 100644 pom.xml create mode 100644 src/main/java/org/jacoco/examples/maven/java/HelloWorld.java create mode 100644 src/test/java/org/jacoco/examples/maven/java/HelloWorldTest.java diff --git a/README.md b/README.md index 581ae95..f9764b7 100644 --- a/README.md +++ b/README.md @@ -1 +1,70 @@ -# JavaRepo \ No newline at end of file +# [Codecov][0] Java Example + +[![Build Status](https://travis-ci.org/codecov/example-java.svg?branch=master)](https://travis-ci.org/codecov/example-java) +[![codecov](https://codecov.io/gh/codecov/example-java/branch/master/graph/badge.svg)](https://codecov.io/gh/codecov/example-java) +[![FOSSA Status](https://app.fossa.com/api/projects/git%2Bgithub.com%2Fcodecov%2Fexample-java.svg?type=shield)](https://app.fossa.com/projects/git%2Bgithub.com%2Fcodecov%2Fexample-java?ref=badge_shield) + +## Guide + +### Travis Setup + +Add the following to your `.travis.yml`: +```yml +language: java +after_success: + - bash <(curl -s https://codecov.io/bash) +``` + +### Produce Coverage Reports +1. Add JaCoCo Plugin to your pom.xml file, [see here](https://github.com/codecov/example-java/blob/master/pom.xml#L43-L61) + +## Caveats + +#### Private Repo +You will need to add the following your `.travis.yml`: +```yml +env: + global: + - CODECOV_TOKEN=:uuid-repo-token +``` + +#### JaCoCo Reports + +- Make sure you are using the latest version of JaCoCo. There are issues with previous versions of JaCoCo. +- JaCoCo reports can expire - Codecov will reject reports that are older than 12 hours. The logs contain details if a report expired. + +## Support + +### FAQ +- Q: How do I enable multi-module projects?
A: In your `pom.xml` file please append a list of modules in your projects: +```xml + + + module_a/ + module_b/ + + +``` +- Q: Seeing `Skipping JaCoCo execution due to missing execution data file`?
A: Please see [http://stackoverflow.com/questions/18107375/...](http://stackoverflow.com/questions/18107375/getting-skipping-jacoco-execution-due-to-missing-execution-data-file-upon-exec). +- We should talk about using other CIs here. +- Q: Does Codecov accept `jacoco.exec` reports?
A: **No**, these files are not supported. Please produce a `xml` file as detailed in the pom.xml file at [codecov/example-java][1]. +- Q: Is there a Gradle example?
A: **Yes**, enter [codecov/example-gradle][2] +- Q: Is there a Android example?
A: **Yes**, enter [codecov/example-android][3] +- Q: Is there a Maven example?
A: **Yes**, enter [codecov/example-maven][4] + +1. More documentation at https://docs.codecov.io +2. Configure codecov through the `codecov.yml` https://docs.codecov.io/docs/codecov-yaml +3. View source and learn more about [Codecov Global Uploader](https://github.com/codecov/codecov-bash) + +We are happy to help if you have any questions. Please contact email our Support at [support@codecov.io](mailto:support@codecov.io) + +[0]: https://codecov.io/ +[1]: https://github.com/codecov/example-java +[2]: https://github.com/codecov/example-gradle +[3]: https://github.com/codecov/example-android +[4]: https://github.com/codecov/example-java-maven +[5]: https://docs.codecov.io/docs/about-the-codecov-bash-uploader#section-upload-token + + +## License +[![FOSSA Status](https://app.fossa.com/api/projects/git%2Bgithub.com%2Fcodecov%2Fexample-java.svg?type=large)](https://app.fossa.com/projects/git%2Bgithub.com%2Fcodecov%2Fexample-java?ref=badge_large) diff --git a/pom.xml b/pom.xml new file mode 100644 index 0000000..8923188 --- /dev/null +++ b/pom.xml @@ -0,0 +1,70 @@ + + + + + + 4.0.0 + + org.jacoco + org.jacoco.examples.maven.java + 1.0-SNAPSHOT + jar + + JaCoCo Maven plug-in example for Java project + http://www.eclemma.org/jacoco + + UTF-8 + 1.8 + 1.8 + + + + + junit + junit + 4.13.2 + test + + + + + src/main/java + + + org.jacoco + jacoco-maven-plugin + 0.8.7 + + + + prepare-agent + + + + report + test + + report + + + + + + org.apache.maven.plugins + maven-compiler-plugin + 3.8.1 + + + + + diff --git a/src/main/java/org/jacoco/examples/maven/java/HelloWorld.java b/src/main/java/org/jacoco/examples/maven/java/HelloWorld.java new file mode 100644 index 0000000..15edac4 --- /dev/null +++ b/src/main/java/org/jacoco/examples/maven/java/HelloWorld.java @@ -0,0 +1,13 @@ +package org.jacoco.examples.maven.java; + +public class HelloWorld { + + public String getMessage(boolean bigger) { + if (bigger) { + return "Hello Universe!"; + } else { + return "Hello World!"; + } + } + +} diff --git a/src/test/java/org/jacoco/examples/maven/java/HelloWorldTest.java b/src/test/java/org/jacoco/examples/maven/java/HelloWorldTest.java new file mode 100644 index 0000000..6b8451e --- /dev/null +++ b/src/test/java/org/jacoco/examples/maven/java/HelloWorldTest.java @@ -0,0 +1,22 @@ +package org.jacoco.examples.maven.java; + +import static org.junit.Assert.*; + +import org.junit.Before; +import org.junit.Test; + +public class HelloWorldTest { + + private HelloWorld subject; + + @Before + public void setup() { + subject = new HelloWorld(); + } + + @Test + public void testGetMessage() { + assertEquals("Hello World!", subject.getMessage(false)); + } + +}