Sha256: baaa89a7c81cac0da2c8a6436642d0ca3f9f9855aad27c41824dc6ed35e0829f

Contents?: true

Size: 1.18 KB

Versions: 1

Compression:

Stored size: 1.18 KB

Contents

module QTest
  class TestSuite < QTest::Base
    attr_accessor :id, :project, :test_cycle, :release

    # Get all Test Runs for the Test Suite.
    #
    # @return [Array[QTest::TestRun]]
    def test_runs
      all(QTest::TestRun, project: @project.id, test_suite: @id)
    end

    # Create a Test Run under the Test Suite.
    #
    # @return [QTest::TestRun]
    def create_test_run(opts = {})
      create(QTest::TestRun,
             project: @project.id,
             test_suite: @id,
             attributes: opts)
    end

    # Move the Test Suite under a different parent.
    #
    # @return [QTest::TestSuite]
    def move_to(opts = {})
      move(project: @project.id,
           test_suite: @id,
           release: opts[:release],
           test_cycle: opts[:test_cycle])

      if opts[:release]
        @release = unique(QTest::Release,
                          project: @project.id,
                          release: opts[:release])
      elsif opts[:test_cycle]
        @test_cycle = unique(QTest::TestCycle,
                             project: @project.id,
                             test_cycle: opts[:test_cycle])
      end

      self
    end
    alias move_under move_to
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
qtest-ruby-0.1.0 lib/qtest/test_suite.rb