Question: Using your methods from lab 1 0 do the following: Write at least two Junit tests for the method you wrote that does the compute.
Using your methods from lab do the following:
Write at least two Junit tests for the method you wrote that does the compute.
Write at least two Junit tests for the method you wrote that does the retrieve.
Write at least two Junit tests for the method you wrote that does the updateinsert
Write at least one Junit test that is meant to fail
"SoccerDatabase."
package socc;
import java.util.ArrayList;
import java.util.Collections;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
SoccerDatabase class without 'public' modifier
class SoccerDatabase
Sample data for jersey numbers
private static int jerseyNumbers ;
Sample data for matches
private static List matches new ArrayList;
Sample data for players
private static List players new ArrayList;
Static block to initialize match data
static
matches.addnew MatchTeam A "Team B;
matches.addnew MatchTeam C "Team D;
matches.addnew MatchTeam E "Team F;
Finds the most popular jersey number among players.
@return The most popular jersey number.
public static int findMostPopularJerseyNumber
Map frequencyMap new HashMap;
Count frequency of each jersey number
for int number : jerseyNumbers
frequencyMap.putnumber frequencyMap.getOrDefaultnumber;
int popularNumber maxFrequency ;
Find the jersey number with the highest frequency
for MapEntry entry : frequencyMap.entrySet
if entrygetValue maxFrequency
popularNumber entry.getKey;
maxFrequency entry.getValue;
return popularNumber;
Retrieves the top highestscoring matches.
@return A list of the top highestscoring matches.
public static List getTopHighestScoringMatches
Sort matches by score in descending order
Collections.sortmatchesm m Integer.comparemgetScore mgetScore;
Return the top matches
return matches.subList Math.minmatchessize;
Updates or inserts a player into the database.
@param id Player ID
@param name Player name.
@param jerseyNumber Player's jersey number.
public static void updateOrInsertPlayerint id String name, int jerseyNumber
Check if player already exists
for Player player : players
if playerid id
player.name name;
player.jerseyNumber jerseyNumber;
System.out.printlnPlayer updated: player;
return;
Add new player if not found
Player newPlayer new Playerid name, jerseyNumber;
players.addnewPlayer;
System.out.printlnNew player added: newPlayer;
Match class to represent a soccer match
static class Match
private String team;
private String team;
private int score;
public MatchString team String team int score
this.team team;
this.team team;
this.score score;
public int getScore
return score;
@Override
public String toString
return team vs team: score goals";
Player class to represent a soccer player
static class Player
int id;
String name;
int jerseyNumber;
public Playerint id String name, int jerseyNumber
this.id id;
this.name name;
this.jerseyNumber jerseyNumber;
@Override
public String toString
return "Player ID: id Name: name Jersey Number: jerseyNumber;
Main class to test the functionality
public class Main
public static void mainString args
Test finding the most popular jersey number
System.out.printlnMost Popular Jersey Number: SoccerDatabase.findMostPopularJerseyNumber;
Test retrieving the top highestscoring matches
System.out.println
Top HighestScoring Matches:";
for SoccerDatabaseMatch match : SoccerDatabase.getTopHighestScoringMatches
System.out.printlnmatch;
Test updating or inserting players
System.out.println
Updating or Inserting Players:";
SoccerDatabase.updateOrInsertPlayer "Player One", ;
SoccerDatabase.updateOrInsertPlayer "Player Two", ;
SoccerDatabase.updateOrInsertPlayer "Player One Updated", ;
Step by Step Solution
There are 3 Steps involved in it
1 Expert Approved Answer
Step: 1 Unlock
Question Has Been Solved by an Expert!
Get step-by-step solutions from verified subject matter experts
Step: 2 Unlock
Step: 3 Unlock
