/*
 * Daytona Toolbox API
 * Daytona Toolbox API
 *
 * The version of the OpenAPI document: v0.0.0-dev
 * 
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */


package io.daytona.toolbox.client.api;

import io.daytona.toolbox.client.ApiException;
import io.daytona.toolbox.client.model.CreateContextRequest;
import io.daytona.toolbox.client.model.InterpreterContext;
import io.daytona.toolbox.client.model.ListContextsResponse;
import org.junit.jupiter.api.Disabled;
import org.junit.jupiter.api.Test;

import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

/**
 * API tests for InterpreterApi
 */
@Disabled
public class InterpreterApiTest {

    private final InterpreterApi api = new InterpreterApi();

    /**
     * Create a new interpreter context
     *
     * Creates a new isolated interpreter context with optional working directory and language
     *
     * @throws ApiException if the Api call fails
     */
    @Test
    public void createInterpreterContextTest() throws ApiException {
        CreateContextRequest request = null;
        InterpreterContext response = api.createInterpreterContext(request);
        // TODO: test validations
    }

    /**
     * Delete an interpreter context
     *
     * Deletes an interpreter context and shuts down its worker process
     *
     * @throws ApiException if the Api call fails
     */
    @Test
    public void deleteInterpreterContextTest() throws ApiException {
        String id = null;
        Map<String, String> response = api.deleteInterpreterContext(id);
        // TODO: test validations
    }

    /**
     * Execute code in an interpreter context
     *
     * Executes code in a specified context (or default context if not specified) via WebSocket streaming
     *
     * @throws ApiException if the Api call fails
     */
    @Test
    public void executeInterpreterCodeTest() throws ApiException {
        api.executeInterpreterCode();
        // TODO: test validations
    }

    /**
     * List all user-created interpreter contexts
     *
     * Returns information about all user-created interpreter contexts (excludes default context)
     *
     * @throws ApiException if the Api call fails
     */
    @Test
    public void listInterpreterContextsTest() throws ApiException {
        ListContextsResponse response = api.listInterpreterContexts();
        // TODO: test validations
    }

}
