# Copyright 2019-2025 Ping Identity Corporation. All Rights Reserved
#
# This code is to be used exclusively in connection with Ping Identity
# Corporation software or services. Ping Identity Corporation only offers
# such software or services to legal entities who have entered into a
# binding license agreement with Ping Identity Corporation.

# -*- coding: utf-8 -*-

# load tasks used by configuration file

# Python imports
import os

# Framework imports
from pyrock.lib.scheduler.tasks.StepTask import StepTask
from pyrock.lib.scheduler.tasks.CmdTask import CmdTask
from pyrock.tasks.scenario.ds_sdk import DSSearchRateTask, DSModRateTask, DSAddRateTask
from pyrock.tasks.scenario.gatling import GatlingTask
from pyrock.tasks.scenario.ds_sdk import GenerateDSAddRateTemplateTask
from pyrock.tasks.deployment.configuration_idm import PrepareWorkloadTask
from pyrock.tasks.deployment.installation import DeployOverseerTask
from pyrock.tasks.ds.add_entries import AddEntries
from pyrock.lib.PyRockRun import get_pyrock_run

pyrock_run = get_pyrock_run()


class PassTask(StepTask):
    """An example of dummy StepTask returning pass"""

    def step1(self):
        """First step"""
        pyrock_run.log("Good Morning!")
        pyrock_run.log("Sleep 1 to wake up!")
        import time

        time.sleep(1)

    def step2(self):
        """Second step"""
        pyrock_run.log("Good Bye!")
        # import time
        # time.sleep(20000000)
        pyrock_run.log("Good Bye!")


class BugTask1(StepTask):
    """An example of dummy StepTask returning a bug"""

    def step1(self):
        """First step"""
        pyrock_run.log("Good Morning!")

    def step2(self):
        """Second step"""
        self.set_result_bug_id("OPENDJ-12343")
        pyrock_run.log("Good Bye!")


class MyCmdTask(CmdTask):
    """An example of dummy CmdTask returning pass"""

    def pre(self):
        self.cmd = "sleep 1000"
