1   /*
2    * ObjectSetEditorModelTest.java
3    *
4    * Created on 2 Март 2006 г., 17:13
5    */
6   
7   package org.weda.model;
8   
9   import org.weda.test.WedaTestCase;
10  import org.weda.model.impl.ObjectSourceEditorModelGroup;
11  import org.weda.model.impl.ObjectSetEditorModel;
12  import org.weda.store.ObjectSource;
13  import org.weda.store.ObjectSourceRegistry;
14  import org.weda.domain.Company;
15  
16  /**
17   *
18   * @author Mikhail Titov
19   */
20  public class ObjectSetEditorModelTest extends WedaTestCase {
21      private ObjectSourceEditorModelGroupTest groupTest;
22      
23      public ObjectSetEditorModelTest(String name) throws Exception {
24          super(name);
25          groupTest = new ObjectSourceEditorModelGroupTest("group-test");
26      }
27      
28      public void test() throws Exception {
29          ObjectSourceEditorModelGroup group = groupTest.createGroup();
30          ObjectSetEditorModel model = new ObjectSetEditorModel();
31          model.setPropertyPath("name");
32          model.setName("name");
33          group.addEditorModel(model);
34          checkModel(model);
35      }
36      
37      public void checkModel(EditorModel model) throws Exception {
38          int pos = groupTest.insertData();
39          assertNotNull(model.getPropertyDescriptor());
40          assertEquals("name", model.getPropertyDescriptor().getName());
41          assertEquals("name 0", model.getValue());
42          model.setValue("new company name");
43          
44          ObjectSourceRegistry dataSourceRegistry = 
45                  (ObjectSourceRegistry)registry
46                      .getService(ObjectSourceRegistry.class);
47          ObjectSource ds = dataSourceRegistry.getObjectSource("company2");
48          assertEquals(
49                  "new company name"
50                  , ((Company)ds.getRowAt(pos)[0]).getName());
51          //ds.cancelModification();
52          ds.saveModification();
53      }
54  }