0% found this document useful (0 votes)
23 views4 pages

Junit Assignment24

Uploaded by

rajmudhiraj903
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
23 views4 pages

Junit Assignment24

Uploaded by

rajmudhiraj903
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd

package com.

company;
import [Link];
import [Link];
import [Link];

public class Algo {


public boolean isPrime(int n){
boolean isPrime = true;
for(int i = 2 ; 2*i < n ; i++){
if(n%i == 0){
isPrime = false;
}
}
return isPrime;
}

public boolean isPerfect(int x) {


int sum = 0;
for(int i = 1; i<=(x/2); i ++) {
if(x%i == 0) {
sum = sum + i;
}
}
if(sum == x) {
return true;
}else {
return false;
}
}

//Capitalize the first letter and make the rest lowercase


//Capitalize the first letter and make the rest lowercase
public static String capitalizeWords(String s) {
// Trim leading and trailing spaces and split by one or more spaces

if (s != null) {

if(s==""){
return "no input";
}

String[] words = [Link]().split("\\s+");


StringBuilder capitalizedString = new StringBuilder();

for (String word : words) {


if ([Link]() > 0) {
// Capitalize the first letter and make the rest
lowercase
String capitalizedWord =
[Link]([Link](0))
+ [Link](1).toLowerCase();
[Link](capitalizedWord).append(" ");
}
}
// Convert StringBuilder to String and trim the trailing space
return [Link]().trim();
} else {
return "String is null, cannot perform operations.";
}
}

/* There is a biker going on a road trip. The road trip consists of n +


1 points at different altitudes. The biker starts his trip on point 0 with
altitude equal 0.
You are given an integer array gain of length n where gain[i] is the net
gain in altitude between points i and i + 1 for all (0 <= i < n). Return the
highest altitude of a point.

Example 1:
Input: gain = [-5,1,5,0,-7]
Output: 1
Explanation: The altitudes are [0,-5,-4,1,1,-6]. The highest is 1 */
public static int calculateHighestAltitude(int[] gain) {
int currentAltitude = 0;
int highestAltitude = 0;

// Calculate altitudes based on gain


for (int altitudeGain : gain) {
currentAltitude += altitudeGain; // Update current altitude
highestAltitude = [Link](highestAltitude, currentAltitude); //
Update highest altitude
[Link](" " + altitudeGain);
}
return highestAltitude;
}

/*
For two strings s and t, we say "t divides s" if and only if s = t + t +
t + ... + t + t (i.e., t is concatenated with itself one or more times).
Given two strings str1 and str2, return the largest string x such that x
divides both str1 and str2.
Example 1:
Input: str1 = "ABCABC", str2 = "ABC"
Output: "ABC"

Example 2:
Input: str1 = "ABABAB", str2 = "ABAB"
Output: "AB"
*/
public String gcdOfStrings(String str1, String str2) {
String output = "";
if(!(str1+str2).equals(str2+str1)){
return output;
}else{
BigInteger b1= new
BigInteger([Link]([Link]()));
BigInteger b2= new
BigInteger([Link]([Link]()));
BigInteger val = [Link](b2);
output = [Link](0, [Link]());
}
return output;
}
/*
You are given an integer array nums consisting of n elements,
and an integer k. Find a contiguous subarray whose length is
equal to k that has the maximum average value and return this
value. Any answer with a calculation error less than
10-5 (ten to the power of negative five) will be accepted.

Example 1:

Input: nums = [1,12,-5,-6,50,3], k = 4


Output: 12.75000
Explanation: Maximum average is
(12 - 5 - 6 + 50) / 4 = 51 / 4 = 12.75
Example 2:

Input: nums = [5], k = 1


Output: 5.00000
*/

public double findMaxAverage(int[] nums, int k) {


double sum = 0;
for(int i = 0; i < k; i++){
sum = sum + nums[i];
}
[Link]("sum : " + sum);
double avg = sum/k+1;

for(int j = 1; j < [Link] - k + 1; j++){


sum = sum - nums[j-1] + nums[j+k-1];
if(avg < sum/k){
avg = sum/k;
}
[Link]("avg : " + avg);
}
return avg;
}

public int findLast(int[] x, int y) {


//Effects : if x = null throw nullPointerExceptions
//else return the index of the last elements
// in x that equals y
// if no such element exists, return -1
for(int i=[Link]-1 ; i >0 ; i--) {
if(x[i] == y) {
return i;
}
}
return -1;
}

public List<String> getTodos(List<String> list) {


List<String> filteredList = new ArrayList<String>();
for (String topic : list) {
if ([Link]("coverage")) {
[Link](topic);
}else{
[Link]("out of topic");
}

}
return filteredList;
}

1. Design test cases for all operations in the class


2. Create the “algo” instance(object) for testing by using “@Before” or “@BeforeEach”
annotation.
3. Write Junit testing code for each operation (@Test)
4. Execute all test case with coverage and capture the screenshot of testing results
5. The method percentage should be 100%
6. The Line coverage should be more than 90%
7. You can use “assertEquals” or “assertThat” type operation

IntelliJ

You might also like