package com.orientechnologies.orient.core.sql.parser;
import org.testng.annotations.Test;
@Test
public class OCreateIndexStatementTest extends OParserTestAbstract {
@Test
public void testPlain() {
checkRightSyntax("CREATE INDEX Foo DICTIONARY");
checkWrongSyntax("CREATE INDEX Foo");
checkRightSyntax("CREATE INDEX Foo.bar DICTIONARY");
checkRightSyntax("CREATE INDEX Foo.bar on Foo (bar) UNIQUE");
checkRightSyntax("CREATE INDEX Foo.bar_baz on Foo (bar, baz) UNIQUE");
checkRightSyntax("CREATE INDEX Foo.bar_baz on Foo (bar, @rid) UNIQUE");
checkRightSyntax("CREATE INDEX Foo.bar_baz on Foo (bar by key, baz by value) UNIQUE");
checkRightSyntax("create index Foo.bar on Foo (bar collate CI) UNIQUE");
checkRightSyntax("create index collateTestViaSQL.index on collateTestViaSQL (cip COLLATE CI) NOTUNIQUE");
checkRightSyntax("CREATE INDEX Foo.bar on Foo (bar) UNIQUE METADATA {'foo':'bar'}");
checkRightSyntax("CREATE INDEX Foo.bar_baz on Foo (bar, baz) UNIQUE METADATA {'foo':'bar'}");
checkRightSyntax("CREATE INDEX Foo.bar_baz on Foo (bar by key, baz by value) UNIQUE METADATA {'foo':'bar'}");
checkRightSyntax("CREATE INDEX test unique string,string");
checkRightSyntax("create index OUser.name UNIQUE ENGINE SBTREE STRING");
checkRightSyntax("create index OUser.name UNIQUE engine SBTREE STRING");
}
}