How to use usingSid method of org.testcontainers.containers.OracleContainer class

Best Testcontainers-java code snippet using org.testcontainers.containers.OracleContainer.usingSid

Source:OracleContainer.java Github

copy

Full Screen

...33 private static final List<String> ORACLE_SYSTEM_USERS = Arrays.asList(DEFAULT_SYSTEM_USER, DEFAULT_SYS_USER);34 private String databaseName = DEFAULT_DATABASE_NAME;35 private String username = APP_USER;36 private String password = APP_USER_PASSWORD;37 private boolean usingSid = false;38 /**39 * @deprecated use {@link OracleContainer(DockerImageName)} instead40 */41 @Deprecated42 public OracleContainer() {43 this(DEFAULT_IMAGE_NAME.withTag(DEFAULT_TAG));44 }45 public OracleContainer(String dockerImageName) {46 this(DockerImageName.parse(dockerImageName));47 }48 public OracleContainer(final DockerImageName dockerImageName) {49 super(dockerImageName);50 dockerImageName.assertCompatibleWith(DEFAULT_IMAGE_NAME);51 preconfigure();52 }53 public OracleContainer(Future<String> dockerImageName) {54 super(dockerImageName);55 preconfigure();56 }57 private void preconfigure() {58 this.waitStrategy = new LogMessageWaitStrategy()59 .withRegEx(".*DATABASE IS READY TO USE!.*\\s")60 .withTimes(1)61 .withStartupTimeout(Duration.of(DEFAULT_STARTUP_TIMEOUT_SECONDS, SECONDS));62 63 withConnectTimeoutSeconds(DEFAULT_CONNECT_TIMEOUT_SECONDS);64 addExposedPorts(ORACLE_PORT, APEX_HTTP_PORT);65 }66 @Override67 protected void waitUntilContainerStarted() {68 getWaitStrategy().waitUntilReady(this);69 }70 @NotNull71 @Override72 public Set<Integer> getLivenessCheckPortNumbers() {73 return singleton(getMappedPort(ORACLE_PORT));74 }75 @Override76 public String getDriverClassName() {77 return "oracle.jdbc.OracleDriver";78 }79 @Override80 public String getJdbcUrl() {81 return isUsingSid() ? 82 "jdbc:oracle:thin:" + "@" + getHost() + ":" + getOraclePort() + ":" + getSid() :83 "jdbc:oracle:thin:" + "@" + getHost() + ":" + getOraclePort() + "/" + getDatabaseName();84 }85 @Override86 public String getUsername() {87 // An application user is tied to the database, and therefore not authenticated to connect to SID.88 return isUsingSid() ? DEFAULT_SYSTEM_USER : username;89 }90 @Override91 public String getPassword() {92 return password;93 }94 @Override95 public String getDatabaseName() {96 return databaseName;97 }98 protected boolean isUsingSid() {99 return usingSid;100 }101 @Override102 public OracleContainer withUsername(String username) {103 if (StringUtils.isEmpty(username)) {104 throw new IllegalArgumentException("Username cannot be null or empty");105 }106 if (ORACLE_SYSTEM_USERS.contains(username.toLowerCase())) {107 throw new IllegalArgumentException("Username cannot be one of " + ORACLE_SYSTEM_USERS);108 }109 this.username = username;110 return self();111 }112 @Override113 public OracleContainer withPassword(String password) {114 if (StringUtils.isEmpty(password)) {115 throw new IllegalArgumentException("Password cannot be null or empty");116 }117 this.password = password;118 return self();119 }120 @Override121 public OracleContainer withDatabaseName(String databaseName) {122 if (StringUtils.isEmpty(databaseName)) {123 throw new IllegalArgumentException("Database name cannot be null or empty");124 }125 if (DEFAULT_DATABASE_NAME.equals(databaseName.toLowerCase())) {126 throw new IllegalArgumentException("Database name cannot be set to " + DEFAULT_DATABASE_NAME);127 }128 this.databaseName = databaseName;129 return self();130 }131 public OracleContainer usingSid() {132 this.usingSid = true;133 return self();134 }135 @Override136 public OracleContainer withUrlParam(String paramName, String paramValue) {137 throw new UnsupportedOperationException("The Oracle Database driver does not support this");138 }139 @SuppressWarnings("SameReturnValue")140 public String getSid() {141 return DEFAULT_SID;142 }143 public Integer getOraclePort() {144 return getMappedPort(ORACLE_PORT);145 }146 @SuppressWarnings("unused")...

Full Screen

Full Screen

usingSid

Using AI Code Generation

copy

Full Screen

1import org.testcontainers.containers.OracleContainer2import org.testcontainers.containers.output.Slf4jLogConsumer3import org.testcontainers.containers.output.ToStringConsumer4OracleContainer oracleContainer = new OracleContainer("oracleinanutshell/oracle-xe-11g")5oracleContainer.withLogConsumer(new ToStringConsumer())6oracleContainer.withLogConsumer(new Slf4jLogConsumer(logger))7oracleContainer.start()8oracleContainer.withConnectTimeoutSeconds(60)9oracleContainer.withCommand("-p 1521:1521 -p 5500:5500 -e ORACLE_PWD=oracle")10oracleContainer.withEnv("ORACLE_SID", "XE")11oracleContainer.withEnv("ORACLE_CHARACTERSET", "AL32UTF8")12oracleContainer.withEnv("ORACLE_PWD", "oracle")13oracleContainer.withEnv("ORACLE_DISABLE_ASYNCH_IO", "true")14oracleContainer.withFileSystemBind("/tmp", "/tmp")15oracleContainer.withPrivilegedMode(true)16oracleContainer.withPrivilegedMode(false)17oracleContainer.withExposedPorts(1521, 5500)18oracleContainer.withStartupTimeout(Duration.ofMinutes(2))19oracleContainer.withTmpFs(Map.of("/tmp", "rw,noexec,nosuid,size=65536k"))20oracleContainer.withUrlParam("param1", "value1")21oracleContainer.withUrlParam("param2", "value2")22oracleContainer.withWorkingDirectory("/tmp")23oracleContainer.withCopyFileToContainer(MountableFile.forClasspathResource("test.sql"), "/tmp/test.sql")24oracleContainer.withCopyFileToContainer(MountableFile.forClasspathResource("test.sql"), "/tmp/test.sql")25oracleContainer.withCreateContainerCmdModifier(cmd -> cmd.withCapAdd(Capability.MKNOD))26oracleContainer.withCreateContainerCmdModifier(cmd -> cmd.withCapAdd(Capability.MKNOD))27oracleContainer.withCreateContainerCmdModifier(cmd -> cmd.withCapDrop(Capability.MKNOD))28oracleContainer.withCreateContainerCmdModifier(cmd -> cmd.withCapDrop(Capability.MKNOD))29oracleContainer.withCreateContainerCmdModifier(cmd -> cmd.withCpusetCpus("0,1"))30oracleContainer.withCreateContainerCmdModifier(cmd -> cmd.withCpusetCpus("0,1"))

Full Screen

Full Screen

usingSid

Using AI Code Generation

copy

Full Screen

1import org.testcontainers.containers.OracleContainer2import org.testcontainers.containers.output.Slf4jLogConsumer3import org.testcontainers.utility.DockerImageName4import java.sql.Connection5import java.sql.DriverManager6import static java.lang.String.format7def log = new Slf4jLogConsumer(logger)8def oracle = new OracleContainer(DockerImageName.parse("oracleinanutshell/oracle-xe-11g"))9 .withLogConsumer(log)10 .withStartupAttempts(3)11 .withStartupTimeout(java.time.Duration.ofMinutes(10))12oracle.start()13def url = format("jdbc:oracle:thin:@%s:%s/%s", oracle.getHost(), oracle.getFirstMappedPort(), oracle.getSid())14def connection = DriverManager.getConnection(url, oracle.getUsername(), oracle.getPassword())15oracle.stop()16oracle.getSid()17groovy.lang.MissingMethodException: No signature of method: org.testcontainers.containers.OracleContainer.getSid() is applicable for argument types: () values: []18Possible solutions: getContainerId(), getContainerInfo(), getContainerIpAddress(), getContainerName(), getContainerState(), getContainerId() (getSid is from class OracleContainer)19oracle.getSid()20oracle.getSid()

Full Screen

Full Screen

usingSid

Using AI Code Generation

copy

Full Screen

1import com.oracle.jdbc.OracleDriver2import org.testcontainers.containers.OracleContainer3OracleContainer oracleContainer = new OracleContainer()4oracleContainer.start()5def jdbcUrl = oracleContainer.getJdbcUrl()6def username = oracleContainer.getUsername()7def password = oracleContainer.getPassword()8def driver = new OracleDriver()9def connection = driver.connect(jdbcUrl, [user: username, password: password] as Properties)10def statement = connection.createStatement()11statement.execute("CREATE TABLE test (id NUMBER, name VARCHAR2(50))")12statement.execute("INSERT INTO test VALUES (1, 'test')")13def resultSet = statement.executeQuery("SELECT * FROM test")14if (!resultSet.next()) {15 throw new RuntimeException("No data found")16}17if (resultSet.getInt(1) != 1 || resultSet.getString(2) != 'test') {18 throw new RuntimeException("Unexpected data")19}20statement.execute("DROP TABLE test")21import org.testcontainers.containers.OracleContainer22import org.testcontainers.containers.output.Slf4jLogConsumer23import org.testcontainers.containers.output.ToStringConsumer24import org.testcontainers.containers.output.WaitingConsumer25import org.testcontainers.containers.output.OutputFrame26import org.testcontainers.containers.output.BaseConsumer27import org.slf4j.Logger28import org.slf4j.LoggerFactory29import org.junit.Test30import org.junit.ClassRule31import org.junit.rules.TemporaryFolder32import org.junit.rules.TestRule33import org.junit.rules.TestWatcher34import org.junit.runner.Description35class OracleContainerExample {36 public static TemporaryFolder temporaryFolder = new TemporaryFolder()37 public static OracleContainer oracleContainer = new OracleContainer()38 public void test() {39 oracleContainer.start()40 oracleContainer.withLogConsumer(new Slf4jLogConsumer(LoggerFactory.getLogger("oracleContainer")))41 oracleContainer.withLogConsumer(new ToStringConsumer())42 oracleContainer.withLogConsumer(new WaitingConsumer())43 oracleContainer.withLogConsumer(new BaseConsumer<OutputFrame>() {44 public void accept(OutputFrame outputFrame) {45 System.out.println(outputFrame.getUtf

Full Screen

Full Screen

Automation Testing Tutorials

Learn to execute automation testing from scratch with LambdaTest Learning Hub. Right from setting up the prerequisites to run your first automation test, to following best practices and diving deeper into advanced test scenarios. LambdaTest Learning Hubs compile a list of step-by-step guides to help you be proficient with different test automation frameworks i.e. Selenium, Cypress, TestNG etc.

LambdaTest Learning Hubs:

YouTube

You could also refer to video tutorials over LambdaTest YouTube channel to get step by step demonstration from industry experts.

Try LambdaTest Now !!

Get 100 minutes of automation test minutes FREE!!

Next-Gen App & Browser Testing Cloud

Was this article helpful?

Helpful

NotHelpful