Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package Heaps;
- import org.junit.jupiter.api.Test;
- import static org.junit.jupiter.api.Assertions.*;
- import java.util.Arrays;
- /**
- * JUnit Tests for {@see HeapArray}
- * Testing is done by checking if heap removals will create a sorted array.
- * @author Ashley Liew
- */
- public class TestHeapArray {
- private final int NUM_ELEMENTS = 100;
- private final int BOUND = 100;
- @Test
- public void testMinHeap(){
- HeapArray<Integer> minHeap = new HeapArray<>(true);
- int[] values = new int[NUM_ELEMENTS];
- for (int i = 0; i < NUM_ELEMENTS; i++){
- int randomValue = (int) (Math.random() * BOUND) + 0;
- values[i] = randomValue;
- minHeap.insert(randomValue);
- }
- Arrays.sort(values);
- int[] result = new int[NUM_ELEMENTS];
- for (int i = 0; i < NUM_ELEMENTS; i++){
- result[i] = minHeap.remove();
- }
- assertTrue(Arrays.compare(values, result) == 0);
- }
- @Test
- public void testMaxHeap(){
- HeapArray<Integer> maxHeap = new HeapArray<>(false);
- int[] values = new int[NUM_ELEMENTS];
- for (int i = 0; i < NUM_ELEMENTS; i++){
- int randomValue = (int) (Math.random() * BOUND) + 0;
- values[i] = randomValue;
- maxHeap.insert(randomValue);
- }
- Arrays.sort(values);
- int[] result = new int[NUM_ELEMENTS];
- for (int i = 0; i < NUM_ELEMENTS; i++){
- result[(NUM_ELEMENTS - 1) - i] = maxHeap.remove();
- }
- assertTrue(Arrays.compare(values, result) == 0);
- }
- }
Add Comment
Please, Sign In to add comment