package com.chrisfolger.needsmoredojo.testutil; import com.intellij.lang.ASTNode; import com.intellij.lang.javascript.psi.JSElement; import com.intellij.lang.javascript.psi.JSExpression; import com.intellij.lang.javascript.psi.impl.JSArrayLiteralExpressionImpl; import org.apache.commons.lang.NotImplementedException; import static org.mockito.Mockito.mock; public class MockJSArrayLiteralExpression extends JSArrayLiteralExpressionImpl implements MockJSElementInterface { private JSExpression[] expressions; private JSElement lastChild; private MockJSElement bracket; public MockJSArrayLiteralExpression(String[] defines) { super(mock(ASTNode.class)); expressions = new JSExpression[defines.length]; for(int i=0;i<defines.length;i++) { expressions[i] = new MockJSLiteralExpression(defines[i]); } } public MockJSElement getBracket() { return bracket; } public void setBracket(MockJSElement bracket) { this.bracket = bracket; } public void setExpressions(JSExpression[] expressions) { this.expressions = expressions; } @Override public MockJSElementInterface comesBefore(MockJSElementInterface element) { throw new NotImplementedException(); } @Override public void setPrevSibling(MockJSElementInterface element) { throw new NotImplementedException(); } @Override public void setNextSibling(MockJSElementInterface element) { throw new NotImplementedException(); } @Override public JSElement getLastChild() { return lastChild; } @Override public void setParent(MockJSElementInterface element) { throw new NotImplementedException(); } @Override public String printTree() { return MockJSElementInterfaceUtil.printTree(this); } public void setLastChild(JSElement lastChild) { this.lastChild = lastChild; } @Override public JSExpression[] getExpressions() { return expressions; } }