Academic Integrity: tutoring, explanations, and feedback — we don’t complete graded work or submit on a student’s behalf.

How to write test code for this java class import java.util.Scanner; class HashT

ID: 3844337 • Letter: H

Question

How to write test code for this java class

import java.util.Scanner;
class HashTable{
   LList keyList[]; //keylist
  
   public HashTable(){
       keyList=new LList[15];//15slot to keylist
       for(int i=0;i<15;i++){
           keyList[i]=new LList();
       }
       String key;
       int option;
       Scanner sc=new Scanner(System.in);
       while(true){
           menu();
           option=sc.nextInt();
           if(option==5){
               break;
           }
           switch(option){
               case 1:
                   System.out.println("Enter key to insert");
                   key=sc.next();
                   insertInfo(key);
                   break;
               case 2:
                   System.out.println("Enter key to delete");
                   key=sc.next();
                   deleteInfo(key);
                   break;
               case 3:
                   System.out.println("Enter key to search");
                   key=sc.next();
                   LList l=findInfo(key);
                   if(l==null){System.out.println("key no found");}
                   else{
                       System.out.println("Key found");
                       System.out.println("Reference::"+l.travers());
                   }
                   break;
               case 4:
                   printTable();
                   break;
               default:
                   System.out.println("Invalid Option");
                   break;
           }
       }
      
   }
   public void menu(){
       System.out.printf(" Enter 1->insert 2->delete 3->search 4->display 5->exit Enter your option::");
      
   }
   //function to calculate hashvalue of a key
   public int hashToKey(String key){
       return ((int)key.charAt(0)+(int)key.charAt(1))%15;
   }
   //insertinfo() to insert a string in hashtable
   public void insertInfo(String infoToStore){
       int val=hashToKey(infoToStore); //calulating hashvalue
       keyList[val].insert(infoToStore); //inserting info in corresponding list
   }
   //findInfo
   public LList findInfo(String infoToFind){
       int val=hashToKey(infoToFind); //calulating hashvalue
       return keyList[val].findInfo(infoToFind);//returning reference to LList object
   }
   //deleteInfo
   public void deleteInfo(String infoToRemove){
       if(findInfo(infoToRemove)!=null){
           int val=hashToKey(infoToRemove); //calulating hashvalue
           keyList[val].deleteInfo(infoToRemove);//removing info
           System.out.println(infoToRemove+" removed at location "+val);
       }
       else{
           System.out.println("Key not found in hashTable");
       }
   }
   //printing hashtable
   public void printTable(){
      
       System.out.println("Location|Value");
       for(int i=0;i<15;i++){
           System.out.println(""+i+" | "+keyList[i].travers());
           System.out.println("--------------------------------------------");
       }
   }
   public static void main(String args[]){
       new HashTable();
   };
  
}
class LList {
   String info;
   LList nextList;
   boolean isEmpty() {
       return(this.nextList == null && this.info == null);
   }
   void insert(String inInfo) {
       if (this.isEmpty()) {
           this.info = inInfo;
           this.nextList = new LList();
           return;
       }
       this.nextList.insert(this.info);
       this.info = inInfo;
   }
   LList nextList() {
       return(this.nextList);
   }
   int lSize() {
       if (this.isEmpty()) {
           return(0);
       }
       return (this.nextList.lSize() + 1); // add one for me
   }

   void deleteInfo(String inInfo) {
       if (this.isEmpty()) {
           return;
       }
       if (!this.info.equals(inInfo)) {
           this.nextList.deleteInfo(inInfo);
       } else { // I have the info
           this.info = this.nextList.info;
           this.nextList.deleteInfo(this.info); // may be null
           if (this.info == null) {
               this.nextList = null; // I am empty now too.
           }
       }
       return;
   }

   String travers() {
       if (this.isEmpty()) {
           return("");
       }
       return (this.info + ", " + this.nextList.travers()); // don't care about the comma
   }
   LList findInfo(String inInfo) {
       if (this.isEmpty()) {return (null);}
       if (this.info.equals(inInfo)) { return (this); }

       return (this.nextList.findInfo(inInfo));
   }
   LList cloneLList() {
       if (this.isEmpty()) { return (new LList()); }
       LList newList = new LList();
       newList.nextList = this.nextList.cloneLList();
       newList.info = this.info;
       return (newList);
   }

}

Explanation / Answer

I attached the skeleton for JUNIT.77

package com.chegg.serial;

import static org.junit.Assert.*;

import org.junit.Before;
import org.junit.Test;

public class HashTable1Test {
   HashTable1 ob;
   @Before
   public void setup(){
       ob = new HashTable1();
   }
      

   @Test
   public void testHashTable1() {
       int a = ob.hashCode();
       assertEquals(a,5);
   }

   @Test
   public void testMenu() {
       fail("Not yet implemented");
   }

   @Test
   public void testHashToKey() {
       fail("Not yet implemented");
   }

   @Test
   public void testInsertInfo() {
       fail("Not yet implemented");
   }

   @Test
   public void testFindInfo() {
       fail("Not yet implemented");
   }

   @Test
   public void testDeleteInfo() {
       fail("Not yet implemented");
   }

   @Test
   public void testPrintTable() {
       fail("Not yet implemented");
   }

   @Test
   public void testMain() {
       fail("Not yet implemented");
   }

}

Hire Me For All Your Tutoring Needs
Integrity-first tutoring: clear explanations, guidance, and feedback.
Drop an Email at
drjack9650@gmail.com
Chat Now And Get Quote