/interpreter/tags/at2dist110511/test/edu/vub/at/objects/natives/TestFieldMap.java

http://ambienttalk.googlecode.com/ · Java · 72 lines · 45 code · 10 blank · 17 comment · 0 complexity · 069958b0306bdab5eb48f6262018b16c MD5 · raw file

  1. package edu.vub.at.objects.natives;
  2. import edu.vub.at.AmbientTalkTestCase;
  3. import edu.vub.at.objects.natives.grammar.AGSymbol;
  4. /**
  5. * @author tvc
  6. *
  7. * A Unit Test for the FieldMap class.
  8. * Tests the Field Map's behaviour for adding and looking up field names.
  9. */
  10. public class TestFieldMap extends AmbientTalkTestCase {
  11. public static void main(String[] args) {
  12. junit.swingui.TestRunner.run(TestFieldMap.class);
  13. }
  14. private FieldMap map_;
  15. /**
  16. * Constructs the map
  17. * [ x -> 0
  18. * y -> 1
  19. * z -> 2
  20. * u -> 3
  21. * v -> 4
  22. * w -> 5
  23. * a -> 6
  24. * b -> 7 ]
  25. */
  26. protected void setUp() throws Exception {
  27. map_ = new FieldMap();
  28. assertTrue(map_.put(AGSymbol.jAlloc("x")));
  29. map_.put(AGSymbol.jAlloc("y"));
  30. map_.put(AGSymbol.jAlloc("z"));
  31. map_.put(AGSymbol.jAlloc("u"));
  32. assertTrue(map_.put(AGSymbol.jAlloc("v")));
  33. map_.put(AGSymbol.jAlloc("w"));
  34. map_.put(AGSymbol.jAlloc("a"));
  35. map_.put(AGSymbol.jAlloc("b"));
  36. assertFalse(map_.put(AGSymbol.jAlloc("x")));
  37. }
  38. public void testMap() {
  39. assertEquals(0, map_.get(AGSymbol.jAlloc("x")));
  40. assertEquals(1, map_.get(AGSymbol.jAlloc("y")));
  41. assertEquals(2, map_.get(AGSymbol.jAlloc("z")));
  42. assertEquals(3, map_.get(AGSymbol.jAlloc("u")));
  43. assertEquals(4, map_.get(AGSymbol.jAlloc("v")));
  44. assertEquals(5, map_.get(AGSymbol.jAlloc("w")));
  45. assertEquals(6, map_.get(AGSymbol.jAlloc("a")));
  46. assertEquals(7, map_.get(AGSymbol.jAlloc("b")));
  47. assertEquals(-1, map_.get(AGSymbol.jAlloc("c")));
  48. }
  49. public void testRemoval() {
  50. assertEquals(2, map_.get(AGSymbol.jAlloc("z")));
  51. assertEquals(2, map_.remove(AGSymbol.jAlloc("z")));
  52. assertEquals(0, map_.get(AGSymbol.jAlloc("x")));
  53. assertEquals(1, map_.get(AGSymbol.jAlloc("y")));
  54. assertEquals(-1, map_.get(AGSymbol.jAlloc("z")));
  55. assertEquals(2, map_.get(AGSymbol.jAlloc("u")));
  56. assertEquals(3, map_.get(AGSymbol.jAlloc("v")));
  57. assertEquals(4, map_.get(AGSymbol.jAlloc("w")));
  58. assertEquals(5, map_.get(AGSymbol.jAlloc("a")));
  59. assertEquals(6, map_.get(AGSymbol.jAlloc("b")));
  60. assertEquals(-1, map_.remove(AGSymbol.jAlloc("foo")));
  61. }
  62. }