Question: package algs11; import static org.junit.Assert.*; import org.junit.Rule; import org.junit.Test; import org.junit.rules.Timeout; public class HW2bTest { @Rule public Timeout globalTimeout = Timeout.seconds(5); @Test public void test01UnionEqualSets()

package algs11;

import static org.junit.Assert.*;

import org.junit.Rule; import org.junit.Test; import org.junit.rules.Timeout;

public class HW2bTest {

@Rule public Timeout globalTimeout = Timeout.seconds(5);

@Test public void test01UnionEqualSets() { // s1 = {1, -1, 0}; // s1 = {1, -1, 0}; ArrayIntSet s1 = new ArrayIntSet(10); ArrayIntSet s2 = new ArrayIntSet(10); s1.addElement(1); s1.addElement(-1); s1.addElement(0); s2.addElement(1); s2.addElement(-1); s2.addElement(0);

s1.union(s2); assertEquals(3, s1.size()); assertTrue(s1.contains(1)); assertTrue(s1.contains(-1)); assertTrue(s1.contains(0)); assertEquals(3, s2.size()); assertTrue(s2.contains(1)); assertTrue(s2.contains(-1)); assertTrue(s2.contains(0));

s2.union(s1); assertEquals(3, s1.size()); assertTrue(s1.contains(1)); assertTrue(s1.contains(-1)); assertTrue(s1.contains(0)); assertEquals(3, s2.size()); assertTrue(s2.contains(1)); assertTrue(s2.contains(-1)); assertTrue(s2.contains(0)); }

@Test public void test01IntersectEmpty() { // s1 = {} // s2 = {} ArrayIntSet s1 = new ArrayIntSet(5); ArrayIntSet s2 = new ArrayIntSet(5);

s1.intersect(s2); assertEquals(0, s1.size()); assertEquals(0, s2.size());

s2.intersect(s1); assertEquals(0, s1.size()); assertEquals(0, s2.size()); }

@Test public void test01IntersectNoDuplicates() { // s1 = {1, -1, 0}; // s2 = {-4, 2, 9}; ArrayIntSet s1 = new ArrayIntSet(10); ArrayIntSet s2 = new ArrayIntSet(10); s1.addElement(1); s1.addElement(-1); s1.addElement(0); s2.addElement(-4); s2.addElement(9); s2.addElement(2);

s1.intersect(s2); assertEquals(0, s1.size()); assertFalse(s1.contains(1)); assertFalse(s1.contains(-1)); assertFalse(s1.contains(0)); assertFalse(s1.contains(-4)); assertFalse(s1.contains(2)); assertFalse(s1.contains(9));

assertEquals(3, s2.size()); assertFalse(s2.contains(1)); assertFalse(s2.contains(-1)); assertFalse(s2.contains(0)); assertTrue(s2.contains(-4)); assertTrue(s2.contains(2)); assertTrue(s2.contains(9));

// s1 = {1, -1, 0}; // s2 = {-4, 2, 9}; s1 = new ArrayIntSet(10); s2 = new ArrayIntSet(10); s1.addElement(1); s1.addElement(-1); s1.addElement(0); s2.addElement(-4); s2.addElement(9); s2.addElement(2);

s2.intersect(s1); assertEquals(0, s2.size()); assertFalse(s2.contains(1)); assertFalse(s2.contains(-1)); assertFalse(s2.contains(0)); assertFalse(s2.contains(-4)); assertFalse(s2.contains(2)); assertFalse(s2.contains(9));

assertEquals(3, s1.size()); assertTrue(s1.contains(1)); assertTrue(s1.contains(-1)); assertTrue(s1.contains(0)); assertFalse(s1.contains(-4)); assertFalse(s1.contains(2)); assertFalse(s1.contains(9)); }

@Test public void test01IntersectSomeDuplicates() { // s1= { 1, -1, 0 }; // s2 = { 0, 2, 1 }; ArrayIntSet s1 = new ArrayIntSet(5); ArrayIntSet s2 = new ArrayIntSet(5); s1.addElement(1); s1.addElement(-1); s1.addElement(0); s2.addElement(0); s2.addElement(2); s2.addElement(1);

s1.intersect(s2); assertEquals(2, s1.size()); assertTrue(s1.contains(1)); assertTrue(s1.contains(0)); assertFalse(s1.contains(-1)); assertFalse(s1.contains(2));

assertEquals(3, s2.size()); assertFalse(s2.contains(-1)); assertTrue(s2.contains(0)); assertTrue(s2.contains(1)); assertTrue(s2.contains(2));

// s1= { 1, -1, 0 }; // s2 = { 0, 2, 1 }; s1 = new ArrayIntSet(5); s2 = new ArrayIntSet(5); s1.addElement(1); s1.addElement(-1); s1.addElement(0); s2.addElement(0); s2.addElement(2); s2.addElement(1);

s2.intersect(s1); assertEquals(2, s2.size()); assertTrue(s2.contains(1)); assertTrue(s2.contains(0)); assertFalse(s2.contains(-1)); assertFalse(s2.contains(2));

assertEquals(3, s1.size()); assertTrue(s1.contains(-1)); assertTrue(s1.contains(0)); assertTrue(s1.contains(1)); assertFalse(s1.contains(2)); }

@Test public void test01IntersectEqualSets() { // s1 = { 1, -1, 0 }; // s2 = { 1, -1, 0 }; ArrayIntSet s1 = new ArrayIntSet(5); ArrayIntSet s2 = new ArrayIntSet(5); s1.addElement(1); s1.addElement(-1); s1.addElement(0); s2.addElement(-1); s2.addElement(0); s2.addElement(1);

s1.intersect(s2); assertEquals(3, s1.size()); assertTrue(s1.contains(1)); assertTrue(s1.contains(-1)); assertTrue(s1.contains(0));

assertEquals(3, s2.size()); assertTrue(s2.contains(1)); assertTrue(s2.contains(-1)); assertTrue(s2.contains(0));

s2.intersect(s1); assertEquals(3, s1.size()); assertTrue(s1.contains(1)); assertTrue(s1.contains(-1)); assertTrue(s1.contains(0));

assertEquals(3, s2.size()); assertTrue(s2.contains(1)); assertTrue(s2.contains(-1)); assertTrue(s2.contains(0)); }

}

Step by Step Solution

There are 3 Steps involved in it

1 Expert Approved Answer
Step: 1 Unlock blur-text-image
Question Has Been Solved by an Expert!

Get step-by-step solutions from verified subject matter experts

Step: 2 Unlock
Step: 3 Unlock

Students Have Also Explored These Related Databases Questions!