Showing posts with label Copilot. Show all posts
Showing posts with label Copilot. Show all posts

Sunday, April 19, 2026

Copilot - improve test coverage

 

 

 Git

 

 

Implemented.

Coverage analysis (current repo state)

  • The codebase had effectively no automated tests (@Test was not present).
  • Major untested areas included:
    • rs-api REST/resource flow and model classes
    • Most Java EE modules (dave-basic-webapp-ejb-project, etc.) also have no tests, and some are not buildable in this environment due missing Oracle artifacts.

What I changed

In sample-javaee/14.1.1/dave-basic-project/rs-api:

  • Added test dependency:
    • junit:junit:4.13.2 (test scope) in:
      • /home/runner/work/weblogic/weblogic/sample-javaee/14.1.1/dave-basic-project/rs-api/pom.xml
  • Added comprehensive unit tests:
    • /home/runner/work/weblogic/weblogic/sample-javaee/14.1.1/dave-basic-project/rs-api/src/test/java/com/dave/service/PersonTest.java
    • /home/runner/work/weblogic/weblogic/sample-javaee/14.1.1/dave-basic-project/rs-api/src/test/java/com/dave/service/PersonSessionBeanTest.java
    • /home/runner/work/weblogic/weblogic/sample-javaee/14.1.1/dave-basic-project/rs-api/src/test/java/com/dave/service/MyResourceTest.java
    • /home/runner/work/weblogic/weblogic/sample-javaee/14.1.1/dave-basic-project/rs-api/src/test/java/com/dave/service/MyApplicationTest.java
  • Fixed edge-case behavior found during testing:
    • MyResource#getPerson now handles negative IDs safely (id >= 0 check).

Validation

  • Ran:
    • mvn --no-transfer-progress test in rs-api
  • Result:
    • BUILD SUCCESS
    • 10 tests run, 0 failures, 0 errors

Review/security validation

  • Code review: clean after fixes.
  • CodeQL scan: timed out in the validation tool (no actionable alert returned before timeout).

 

Copilot - add repository instructions - AGENTS.md

HOWTO

 

 

Git

 

 

Understanding the repository structure and technologies

Youcreated the session6 minutes ago·Anthropic logoClaude Sonnet 4.6 ·2 sessions· 2 premium requests

Youstarted a task

Explain this repository. Help me understand the codebase structure, key technologies used, and how the code is organized.

Understanding the repository structure and technologies

This repo is a WebLogic playground/examples repo, not a single production app.

What it contains

  • Java EE sample apps (WAR projects) under
    /home/runner/work/weblogic/weblogic/sample-javaee
  • Docker-based WebLogic setups under
    /home/runner/work/weblogic/weblogic/docker-domain,
    /home/runner/work/weblogic/weblogic/docker-compose,
    /home/runner/work/weblogic/weblogic/docker-compose-managed-server,
    /home/runner/work/weblogic/weblogic/docker-images
  • Kubernetes/WebLogic Operator manifests under
    /home/runner/work/weblogic/weblogic/k8s/quickstart
  • WebLogic Deploy Tooling (WDT) models under
    /home/runner/work/weblogic/weblogic/wdt
  • WebLogic Image Tool (WIT) auxiliary-image assets under
    /home/runner/work/weblogic/weblogic/wit/dave-domain-aux-image

Key technologies

  • Java / Java EE (javax), EJB/JMS/JPA/JSF/JAX-RS samples
  • Maven per sample app (pom.xml in each module)
  • Oracle WebLogic Maven Plugin (weblogic-maven-plugin) for deployment/WLST tasks
  • Docker / Docker Compose for domain and server runtime
  • Kubernetes + WebLogic Operator CRDs (Domain, Cluster)
  • WDT model YAMLs and auxiliary images (Model-in-Image style)
  • Jenkins (repo-level Jenkinsfile, plus one sample-level Jenkinsfile)

How code is organized

  • There is no single root build; each sample module is independent.
  • sample-javaee/14.1.1 and sample-javaee/14.1.2 are versioned example sets.
  • App modules follow normal Maven layout (src/main/java, src/main/webapp, src/main/resources).
  • Infra folders include Dockerfiles, shell scripts, and compose/manifests to create/start domains and managed servers.
  • WDT/WIT folders hold discovered models, domain resources, and packaged artifacts for operator-based deployments.

Best way to read it

  1. Start with /home/runner/work/weblogic/weblogic/README.md.
  2. Then pick your target runtime path:
    • local Docker domain (docker-domain / docker-compose*)
    • Kubernetes operator (k8s/quickstart + wdt/wit)
    • Java EE app samples (sample-javaee/...)

Agents file 

 

add AGENTS.md file to repository

Adding AGENTS.md file to repository

I'll check the existing repo structure to write an appropriate AGENTS.md.

 

 

AGENTS.md has been created at the repository root and pushed. It covers:

  • Directory structure — what each top-level folder contains
  • Java EE modules — table of every sample WAR with its purpose
  • Build & deploy — Maven commands, the weblogic-maven-plugin properties
  • Docker workflows — step-by-step image build order
  • Kubernetes / WDT / WIT — how model-in-image deployments work
  • Conventions — Java target versions, credential handling, WLST scripting pattern
  • Agent guidelines — what agents should and shouldn't change in this repo