@Test
public void testDiffElements()
{

   ModelList list = modelList().add(1).add("3").add(true);
   for (ModelValue value : list)
   {
      switch (value.getValueType())
      {
         case NUMBER:
            assertEquals(1, value.asValue(ModelNumber.class).getInt());
            break;
         case STRING:
            assertEquals("3", value.asValue(ModelString.class).getValue());
            break;
         case BOOLEAN:
            assertTrue(value.asValue(ModelBoolean.class).getValue());
            break;
         default:
            fail("Expected number, string, or boolean for value type of list");
      }
   }
}