package fr.umlv.fruits;

import static org.junit.Assert.*;

import org.junit.Test;

public class BasketTest {
  @Test
  public void findFirstItemByCountry() {
    Orange orange1 = new Orange("US", 75);
    Orange orange2 = new Orange("Spain", 75);
    Orange orange3 = new Orange("Spain", 80);
    Basket basket = new Basket();
    basket.add(orange1);
    basket.add(orange2);
    basket.add(orange3);
    assertSame(orange1, basket.findFirstItemByCountry("US"));
    assertSame(orange2, basket.findFirstItemByCountry("Spain"));
  }

  @Test
  public void findFirstItemByCountry2() {
    Orange orange = new Orange("Italy", 60);
    Basket basket = new Basket();
    basket.add(orange);
    assertNull(basket.findFirstItemByCountry("England"));
  }
  
  // this test is not correct, and must be fixed !
  @Test
  public void testWithNull() {
    Basket basket = new Basket();
    basket.add(null);
    basket.findFirstItemByCountry("Swiss");
  }
  
  @Test
  public void getPrice() {
    Orange orange1 = new Orange("US", 75);
    Orange orange2 = new Orange("Spain", 75);
    Basket basket = new Basket();
    basket.add(orange1);
    basket.add(orange2);
    assertEquals(orange1.getPrice() + orange2.getPrice(), basket.getPrice());
  }
}
