无法确定我的脚本是否在 embedded-cassandra 中正确执行

unable to figure out if my scripts executed correctly in embedded-cassandra

我创建了一个使用 embedded-cassandra 并执行一些脚本的单元测试。但是我无法确定脚本 运行 是否成功。

我看到下面两个打印(可能是因为我有两个语句)。有没有办法获取执行的结果并打印到控制台。

WARN c.d.d.c.Connection - /127.0.0.1:9042 did not send an authentication challenge; This is suspicious because the driver expects authentication (configured auth provider = com.datastax.driver.core.PlainTextAuthProvider)
WARN c.d.d.c.Connection - /127.0.0.1:9042 did not send an authentication challenge; This is suspicious because the driver expects authentication (configured auth provider = com.datastax.driver.core.PlainTextAuthProvider)

  "UsersRepository Specs" should {
    "create keyspace" in {
      val factory = new LocalCassandraFactory
      println(s"factory is ${factory}")
      factory.setVersion(("3.11.1")) //TODOM . shall I pick these fromm a config file?
      val statement1 =
        """
          |CREATE KEYSPACE myspace
          |  WITH REPLICATION = {
          |   'class' : 'SimpleStrategy',
          |   'replication_factor' : 1
          |  };
        """.stripMargin

      val statement2 =
        """
          |SELECT * FROM system_schema.keyspaces
        """.stripMargin

      val cqlStatements:CqlStatements = new CqlStatements(statement1,statement2)

      val cassandraFactory = factory.create
      val testCassandra = new TestCassandra();

      try {
        testCassandra.start()
        testCassandra.executeScripts(cqlStatements)
      } finally testCassandra.stop()

    }
  }

使用中可能还有其他问题。虽然我正在创建 TestCassandra。我没有将 cassandraFactory 实例传递给它。所以我想知道 embedded-cassandra 是否已经开始了!!

我试图通过传递 cassandraFactorycqlStatements 来创建 TestCassandra,但出现错误 too many arguments in TestCassandra

无法从配置文件设置版本

您是否使用任何 slf4j 提供商进行日志记录?

查看脚本是否已执行的最简单方法是为 com.github.nosan.embedded.cassandra.test.util.CqlUtils.

启用 debug 级别

如果您没有看到任何异常,则脚本执行没有问题。

I tried to create TestCassandra by passing cassandraFactory and cqlStatements but I got error too many arguments in TestCassandra

我认为你应该使用这个构造函数。

public TestCassandra(CassandraFactory cassandraFactory, CqlScript... scripts) {}

new TestCassandra(cassandraFactory, CqlScripts.statemets(...,...))