Sha256: ee02b29925b5ffd22a8b00d23ae5fb5b64acd7cc733807dfa53616b78c0a8fd6

Contents?: true

Size: 833 Bytes

Versions: 1

Compression:

Stored size: 833 Bytes

Contents

module Acouchi
  class TestRunner
    def initialize configuration
      @configuration = configuration
    end

    def start
      apk_installer = ApkInstaller.new(@configuration)
      apk_installer.uninstall_apk
      apk_installer.install_apk

      ProcessLauncher.new(Executables.adb, "forward", "tcp:7103", "tcp:7103").start_and_crash_if_process_fails
      @test_runner_process = ProcessLauncher.new(Executables.adb, "shell", "am", "instrument", "-w", "#{@configuration.target_package}/android.test.InstrumentationTestRunner")
      @test_runner_process.start_in_background

      sleep 0.1 until ready?
    end

    def stop
      HTTParty.get("http://127.0.0.1:7103/finish") rescue nil
    end

    private
      def ready?
        HTTParty.get("http://127.0.0.1:7103/").body == "Acouchi" rescue false
      end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
acouchi-0.0.9 lib/acouchi/test_runner.rb