package cscie99.team2.lingolearn.server.confuser;

package cscie99.team2.lingolearn.server.confuser;

import static org.junit.Assert.*;

import java.util.List;

import cscie99.team2.lingolearn.shared.Card;

/**
 * This class tests to make sure that the values being generated by the confuser algorithm are valid.
 */
public class ConfuserTest {
  // The confuser instance to use for tests
  private static Confuser confuser;
  
  /**
   * Make sure the confuser algorithm code is using the correct data.
   */
  @Before
  public void setUp() {
    // TODO Extend this with the correct resource file path
    this.confuser = new Confuser();
  }
  
  
  /**
   * Test to make sure kanji subsitution works correctly.
   */
  @Test
  public void kanjiSubsitutionTest() {
    fail("Not implimented");
  }

  /**
   * Test to make sure that we can extend kanji with valid hiragana.
   */
  @Test
  public void kanjiBoundriesTest() {
    // Test to make sure 青い (blue) is extended correctly
    Card card = new Card();
    card.setKanji("青い");
    card.setHiragana("あおい");
    List<String> results = confuser.getKanjiBoundries(card);
    assertEquals(1, results.size());
    assertEquals(results.get(0), "青おい");
    
    // TODO Test to make sure 話す is extended correctly
    
    // TODO Test to make sure 食べ難い is extended correctly
    
    // TODO Test to make sure お結び is extended correctly
    
  }
  
  /**
   * Test to make sure vowels are elongated correctly for hiragana
   * and katagana words.
   */
  @Test
  public void vowelElongationTest() {
    fail("Not implimented");
  }
  
  /**
   * Test to make sure the small tsu character (ッ) is being manipulated 
   * correctly.
   */
  @Test
  public void smallTsuManipulation() {
    fail("Not implimented");
  }
  
  /**
   * Test to make sure the n character (ん, ン) is being manipulated 
   * correctly for hiragana and katakana.
   */
  @Test
  public void nManipulation() {
    fail("Not implimented");
  }
}

Update ConfuserTest.java