import com.google.sps.utilities.GetLabelCategories;
import com.google.sps.utilities.CommonUtils;
import com.google.sps.utilities.TestUtils;
import com.google.sps.data.Event;
import com.google.sps.data.User;
import org.junit.Assert;
import org.junit.Test;
import java.util.Arrays;
import java.util.Set;
import java.util.HashSet;
import org.junit.runner.RunWith;
import org.junit.runners.JUnit4;
import java.io.FileNotFoundException;

@RunWith(JUnit4.class)
public final class GetLabelCategoriesTest {
  private static final Set<String> LABELS =
      new HashSet<>(Arrays.asList("Tech", "Work"));
  private static final Set<String> INTERESTS =
      new HashSet<>(Arrays.asList("Conservation", "Food"));
  private static final Set<String> SKILLS =
      new HashSet<>(Arrays.asList("Cooking"));

  @Test
  public void ValidateGetEventRelevancy() throws FileNotFoundException {
      Event event = TestUtils.newEvent().toBuilder().setLabels(LABELS).build();
      User user = TestUtils.newUser().toBuilder().setInterests(INTERESTS).setSkills(SKILLS).build();

    GetLabelCategories g = new GetLabelCategories();

     System.out.println(g.getEventRelevancy( new HashSet<>(Arrays.asList(event)), user));

    // Given an empty String, verify that an empty JSON object is returned
    Assert.assertEquals("", "");
  }
}
@@ -528,16 +528,22 @@
 String%3E 
+EVENT_
 LABELS =
@@ -582,20 +582,26 @@
 st(%22
-Tech%22, %22Work
+Sports%22, %22Robotics
 %22));
@@ -636,16 +636,21 @@
 String%3E 
+USER_
 INTEREST
@@ -692,28 +692,30 @@
 st(%22
-Conservation%22, %22Food
+Sports%22, %22Food & Drink
 %22));
@@ -798,29 +798,36 @@
 st(%22
-Cooking
+Robotics
 %22));%0A%0A
+//
   
+ 
 @Test%0A
+// 
   pu
@@ -840,67 +840,1310 @@
 oid 
-ValidateGetEventRelevancy() throws FileNotFoundException %7B%0A
+noMatches() throws FileNotFoundException %7B%0A//   %7D%0A%0A//   @Test%0A//   public void directAndSoftMatch() throws FileNotFoundException %7B%0A//   %7D%0A%0A  @Test%0A  /* Test getEventRelevancy() with direct match event labels only. No category relations. */%0A  public void directMatchOnly() throws FileNotFoundException %7B%0A      Event event = TestUtils.newEventNoLabels().toBuilder().setLabels(EVENT_LABELS).build();%0A      Event event2 = TestUtils.newEventNoLabels();%0A      User user = TestUtils.newUserNoInterestSkills().toBuilder().setInterests(USER_INTERESTS).setSkills(SKILLS).build();%0A%0A    GetLabelCategories g = new GetLabelCategories();%0A%0A     System.out.println(g.getEventRelevancy( new HashSet%3C%3E(Arrays.asList(event, event2)), user));%0A%0A    // Given an empty String, verify that an empty JSON object is returned%0A    Assert.assertEquals(%22%22, %22%22);%0A  %7D%0A%0A//   @Test%0A//   /* Test getEventRelevancy() with category relations, basketball is a subcategory of sports */%0A//   public void getEventRelevancy_SoftMatch() throws FileNotFoundException %7B%0A//   Set%3CString%3E EVENT_LABELS =%0A//       new HashSet%3C%3E(Arrays.asList(%22Sports%22, %22Robotics%22));%0A//   Set%3CString%3E USER_INTERESTS =%0A//       new HashSet%3C%3E(Arrays.asList(%22Basketball%22, %22Food & Drink%22));%0A//   Set%3CString%3E SKILLS =%0A//       new HashSet%3C%3E(Arrays.asList(%22Painting%22));%0A%0A// 
     
@@ -2176,16 +2176,24 @@
 newEvent
+NoLabels
 ().toBui
@@ -2209,16 +2209,22 @@
 tLabels(
+EVENT_
 LABELS).
@@ -2228,24 +2228,135 @@
 S).build();%0A
+//       Event event2 = TestUtils.newEventNoLabels();%0A//       Event event3 = TestUtils.newEventNoLabels();%0A// 
       User u
@@ -2378,16 +2378,32 @@
 .newUser
+NoInterestSkills
 ().toBui
@@ -2422,16 +2422,21 @@
 terests(
+USER_
 INTEREST
@@ -2458,36 +2458,39 @@
 ILLS).build();%0A%0A
+//
     
+ 
 GetLabelCategori
@@ -2515,32 +2515,34 @@
 lCategories();%0A%0A
+//
      System.out.
@@ -2598,21 +2598,30 @@
 .asList(
+ 
 event
+, event3
 )), user
@@ -2613,36 +2613,46 @@
  event3)), user)
+.get(1)
 );%0A%0A
+// 
     // Given an 
@@ -2702,32 +2702,35 @@
 ect is returned%0A
+// 
     Assert.asser
@@ -2742,17 +2742,20 @@
 ls(%22%22, %22%22);%0A
+// 
   %7D%0A%7D

add tests