Sha256: 34990e1d6e241bc437d28ca90d3dfe7b58cac88fc952f0eef51261fee391d602

Contents?: true

Size: 1.86 KB

Versions: 8

Compression:

Stored size: 1.86 KB

Contents

def calabash_build(app)



  keystore = read_keystore_info()

  test_server_template_dir = File.join(File.dirname(__FILE__), '..', 'test-server')
  
  Dir.mktmpdir do |workspace_dir|
    
    @test_server_dir = File.join(workspace_dir, 'test-server')
    FileUtils.cp_r(test_server_template_dir, workspace_dir)
    
    ant_executable = (is_windows? ? "ant.bat" : "ant")
    Dir.chdir(@test_server_dir) {
      args = [
        ant_executable,
        "clean", 
        "package",
        "-Dtested.package_name=#{package_name(app)}",
        "-Dtested.main_activity=#{main_activity(app)}",
        "-Dtested.project.apk=\"#{app}\"",
        "-Dandroid.api.level=#{api_level}",
        "-Dkey.store=\"#{File.expand_path keystore["keystore_location"]}\"",
        "-Dkey.store.password=#{keystore["keystore_password"]}",
        "-Dkey.alias=#{keystore["keystore_alias"]}",
        "-Dkey.alias.password=#{keystore["keystore_alias_password"]}",
      ]
      STDOUT.sync = true
      IO.popen(args.join(" ")) do |io|
        io.each { |s| print s }
      end
      if $?.exitstatus != 0
        puts "Could not build the test server. Please see the output above."
        exit $?.exitstatus
      end
    }

    FileUtils.mkdir_p "test_servers" unless File.exist? "test_servers"

    test_apk = File.join(@test_server_dir, "bin", "Test.apk")
    test_server_file_name = test_server_path(app)
    FileUtils.cp(test_apk, test_server_file_name)
    puts "Done building the test server. Moved it to #{test_server_file_name}"
  end
end

def read_keystore_info
  if File.exist? ".calabash_settings"
    JSON.parse(IO.read(".calabash_settings"))
  else
    {
    "keystore_location" => "#{ENV["HOME"]}/.android/debug.keystore",
    "keystore_password" => "android",
    "keystore_alias" => "androiddebugkey",
    "keystore_alias_password" => "android"
    }
  end
end

def is_windows?
  ENV["OS"] == "Windows_NT"
end

Version data entries

8 entries across 8 versions & 1 rubygems

Version Path
calabash-android-0.2.9 bin/calabash-android-build.rb
calabash-android-0.2.8 bin/calabash-android-build.rb
calabash-android-0.2.7 bin/calabash-android-build.rb
calabash-android-0.2.6 bin/calabash-android-build.rb
calabash-android-0.2.5 bin/calabash-android-build.rb
calabash-android-0.2.4 bin/calabash-android-build.rb
calabash-android-0.2.3 bin/calabash-android-build.rb
calabash-android-0.2.2 bin/calabash-android-build.rb