use of com.android.tools.idea.uibuilder.fixtures.ComponentDescriptor in project android by JetBrains.
the class NlModelTest method testRemoveFirstChild.
public void testRemoveFirstChild() throws Exception {
ModelBuilder modelBuilder = createDefaultModelBuilder(false);
NlModel model = modelBuilder.build();
assertEquals("NlComponent{tag=<LinearLayout>, bounds=[0,0:1000x1000, instance=0}\n" + " NlComponent{tag=<TextView>, bounds=[100,100:100x100, instance=1}\n" + " NlComponent{tag=<Button>, bounds=[100,200:100x100, instance=2}", myTreeDumper.toTree(model.getComponents()));
// Remove first child
ComponentDescriptor parent = modelBuilder.findByPath(LINEAR_LAYOUT);
assertThat(parent).isNotNull();
parent.removeChild(modelBuilder.findByPath(LINEAR_LAYOUT, TEXT_VIEW));
modelBuilder.updateModel(model, false);
assertEquals("NlComponent{tag=<LinearLayout>, bounds=[0,0:1000x1000, instance=0}\n" + " NlComponent{tag=<Button>, bounds=[100,200:100x100, instance=2}", myTreeDumper.toTree(model.getComponents()));
}
use of com.android.tools.idea.uibuilder.fixtures.ComponentDescriptor in project android by JetBrains.
the class NlModelTest method testChangedPropertiesWithIds.
@SuppressWarnings("ConstantConditions")
public void testChangedPropertiesWithIds() throws Exception {
boolean preserveXmlTags = false;
// We include id's in the tags here since (due to attribute
// changes between the two elements
boolean includeIds = true;
ModelBuilder modelBuilder = createDefaultModelBuilder(includeIds);
NlModel model = modelBuilder.build();
assertEquals("NlComponent{tag=<LinearLayout>, bounds=[0,0:1000x1000, instance=0}\n" + " NlComponent{tag=<TextView>, bounds=[100,100:100x100, instance=1}\n" + " NlComponent{tag=<Button>, bounds=[100,200:100x100, instance=2}", myTreeDumper.toTree(model.getComponents()));
// Change some attributes; this means that our finger print comparison (which
// hashes all tag names and attributes) won't work
ComponentDescriptor button = modelBuilder.findByPath(LINEAR_LAYOUT, BUTTON);
assertThat(button).isNotNull();
ComponentDescriptor textView = modelBuilder.findByPath(LINEAR_LAYOUT, TEXT_VIEW);
assertThat(textView).isNotNull();
button.withAttribute("style", "@style/Foo");
textView.withAttribute("style", "@style/Foo");
modelBuilder.updateModel(model, preserveXmlTags);
// Everything should be identical
assertEquals("NlComponent{tag=<LinearLayout>, bounds=[0,0:1000x1000, instance=0}\n" + " NlComponent{tag=<TextView>, bounds=[100,100:100x100, instance=1}\n" + " NlComponent{tag=<Button>, bounds=[100,200:100x100, instance=2}", myTreeDumper.toTree(model.getComponents()));
}
use of com.android.tools.idea.uibuilder.fixtures.ComponentDescriptor in project android by JetBrains.
the class NlModelTest method testAddChild.
public void testAddChild() throws Exception {
ModelBuilder modelBuilder = createDefaultModelBuilder(false);
NlModel model = modelBuilder.build();
assertEquals("NlComponent{tag=<LinearLayout>, bounds=[0,0:1000x1000, instance=0}\n" + " NlComponent{tag=<TextView>, bounds=[100,100:100x100, instance=1}\n" + " NlComponent{tag=<Button>, bounds=[100,200:100x100, instance=2}", myTreeDumper.toTree(model.getComponents()));
// Add child
ComponentDescriptor parent = modelBuilder.findByPath(LINEAR_LAYOUT);
assertThat(parent).isNotNull();
parent.addChild(component(EDIT_TEXT).withBounds(100, 100, 100, 100).width("100dp").height("100dp"), null);
modelBuilder.updateModel(model, false);
assertEquals("NlComponent{tag=<LinearLayout>, bounds=[0,0:1000x1000, instance=0}\n" + " NlComponent{tag=<TextView>, bounds=[100,100:100x100, instance=1}\n" + " NlComponent{tag=<Button>, bounds=[100,200:100x100, instance=2}\n" + " NlComponent{tag=<EditText>, bounds=[100,100:100x100, instance=3}", myTreeDumper.toTree(model.getComponents()));
}
use of com.android.tools.idea.uibuilder.fixtures.ComponentDescriptor in project android by JetBrains.
the class NlModelTest method testTransposeChildren.
public void testTransposeChildren() throws Exception {
ModelBuilder modelBuilder = createDefaultModelBuilder(false);
NlModel model = modelBuilder.build();
assertEquals("NlComponent{tag=<LinearLayout>, bounds=[0,0:1000x1000, instance=0}\n" + " NlComponent{tag=<TextView>, bounds=[100,100:100x100, instance=1}\n" + " NlComponent{tag=<Button>, bounds=[100,200:100x100, instance=2}", myTreeDumper.toTree(model.getComponents()));
// Remove last child
ComponentDescriptor parent = modelBuilder.findByPath(LINEAR_LAYOUT);
ComponentDescriptor button = modelBuilder.findByPath(LINEAR_LAYOUT, BUTTON);
ComponentDescriptor textView = modelBuilder.findByPath(LINEAR_LAYOUT, TEXT_VIEW);
assertThat(parent).isNotNull();
parent.children(button, textView);
modelBuilder.updateModel(model, false);
assertEquals("NlComponent{tag=<LinearLayout>, bounds=[0,0:1000x1000, instance=0}\n" + " NlComponent{tag=<Button>, bounds=[100,200:100x100, instance=2}\n" + " NlComponent{tag=<TextView>, bounds=[100,100:100x100, instance=1}", myTreeDumper.toTree(model.getComponents()));
}
use of com.android.tools.idea.uibuilder.fixtures.ComponentDescriptor in project android by JetBrains.
the class NlModelTest method testRemoveLastChild.
public void testRemoveLastChild() throws Exception {
ModelBuilder modelBuilder = createDefaultModelBuilder(false);
NlModel model = modelBuilder.build();
assertEquals("NlComponent{tag=<LinearLayout>, bounds=[0,0:1000x1000, instance=0}\n" + " NlComponent{tag=<TextView>, bounds=[100,100:100x100, instance=1}\n" + " NlComponent{tag=<Button>, bounds=[100,200:100x100, instance=2}", myTreeDumper.toTree(model.getComponents()));
// Remove last child
ComponentDescriptor parent = modelBuilder.findByPath(LINEAR_LAYOUT);
assertThat(parent).isNotNull();
parent.removeChild(modelBuilder.findByPath(LINEAR_LAYOUT, BUTTON));
modelBuilder.updateModel(model, false);
assertEquals("NlComponent{tag=<LinearLayout>, bounds=[0,0:1000x1000, instance=0}\n" + " NlComponent{tag=<TextView>, bounds=[100,100:100x100, instance=1}", myTreeDumper.toTree(model.getComponents()));
}
Aggregations