rubotium 0.0.20 → 0.0.21

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 9e9781a5ba16f5293e432aae0106505dbfc12dfd
4
- data.tar.gz: 57ddec45936548bd2951f3e9ab6508a506fd9ac8
3
+ metadata.gz: 11043211bad40cbe886f3b668751f1f8f9021aae
4
+ data.tar.gz: 9e5638b511f1fa76e12ce7dc983b323e17177898
5
5
  SHA512:
6
- metadata.gz: bd989f92d2004b97869b55f74c70b550dcbbfccab8316af538ed1fc7f56e76c655bffb7bcf5856a5e77534a84691d28cc7b82d1fa463f3e8bc2fb55228a10cad
7
- data.tar.gz: c9604c4c2eceef8c520dc08cbca2b63fd9b08efd802a346fc940c4810127aca477adb98cb9644806432ca39481984d4b4e28e1d8476430dbd645950e9712b521
6
+ metadata.gz: 00e50b38b93cbd2fc3aa6ac989bf6f6c375fe6107568fe03ddf1b5c02941bc07d2a20763158962a3c773440d8a7d0d34b74d2bed61ed8c94cac6c736bdad225e
7
+ data.tar.gz: 196b212129519080a6e01b05432db3d6d6c3f2f243040c962463613e32e3a8aa7c09a781cd6a2385ab08d64a11dd2dd9911231c1027cc2388e2338a73ef91bae
@@ -0,0 +1,9 @@
1
+ module Rubotium
2
+ class LogWritter
3
+ def save_to_file(file_name, log)
4
+ File.open("results/logs/#{file_name}.log", 'w+') do |file|
5
+ file.write log
6
+ end
7
+ end
8
+ end
9
+ end
@@ -1,29 +1,30 @@
1
+ require 'ostruct'
2
+
1
3
  module Rubotium
2
4
  module TestRunners
3
5
  class InstrumentationTestRunner
4
- def initialize(device, test_package, options = {})
6
+ def initialize(device, test_package, options = {}, log_writter = LogWritter.new)
5
7
  @device = device
6
8
  @test_package = test_package
7
9
  @annotations = options.delete(:annotation)
10
+ @log_writter = log_writter
8
11
  end
9
12
 
10
13
  def run_test(runnable_test)
11
14
  device.clean_logcat
12
15
  result = execute(instrument_command(runnable_test))
13
- File.open("results/logs/#{runnable_test.name}.log", 'w+') do |file|
14
- file.write device.logcat
15
- end
16
+ log_writter.save_to_file(runnable_test.name, device.logcat)
16
17
  Rubotium::TestResult.new(result , runnable_test)
17
18
  end
18
19
 
19
20
  private
20
21
 
21
- attr_reader :device, :test_package
22
+ attr_reader :device, :test_package, :log_writter
22
23
 
23
24
  def execute(command)
24
25
  cmd_result = device.shell(command)
25
26
  if (cmd_result.status_code == 1)
26
- Struct.new(
27
+ OpenStruct.new(
27
28
  test_results: [],
28
29
  count: 0,
29
30
  failed?: true,
@@ -1,3 +1,3 @@
1
1
  module Rubotium
2
- VERSION = "0.0.20"
2
+ VERSION = "0.0.21"
3
3
  end
data/lib/rubotium.rb CHANGED
@@ -7,6 +7,7 @@ require 'rubotium/device'
7
7
  require 'rubotium/devices'
8
8
  require 'rubotium/tests_runner'
9
9
  require 'rubotium/formatters/junit_formatter'
10
+ require 'rubotium/log_writter'
10
11
  require 'rubotium/screencast'
11
12
  require 'rubotium/formatters/html_formatter'
12
13
  require 'rubotium/runnable_test'
@@ -0,0 +1,29 @@
1
+ require 'spec_helper'
2
+ require 'ostruct'
3
+
4
+ describe Rubotium::TestRunners::InstrumentationTestRunner do
5
+ let(:test_package) { double(Rubotium::Package) }
6
+ let(:device) { double(Rubotium::Device) }
7
+ let(:runnable_test) { double(Rubotium::RunnableTest) }
8
+ let(:log_writter) { double(Rubotium::LogWritter) }
9
+
10
+ let(:runner) {described_class.new(device, test_package, {}, log_writter)}
11
+
12
+ context 'when running test times out' do
13
+ before { expect(device).to receive(:shell).and_return(OpenStruct.new(:status_code => 1)) }
14
+
15
+ it 'fails the test' do
16
+ expect(test_package).to receive(:name).and_return('Package name')
17
+ expect(test_package).to receive(:test_runner).and_return('test runner')
18
+ expect(runnable_test).to receive(:test_name).and_return('Test name')
19
+ expect(runnable_test).to receive(:name).and_return('name').exactly(2).times
20
+ expect(runnable_test).to receive(:package_name).and_return('testPackage name')
21
+ expect(device).to receive(:clean_logcat)
22
+ expect(device).to receive(:logcat)
23
+ expect(log_writter).to receive(:save_to_file)
24
+
25
+ runner.run_test(runnable_test)
26
+ end
27
+
28
+ end
29
+ end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rubotium
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.20
4
+ version: 0.0.21
5
5
  platform: ruby
6
6
  authors:
7
7
  - Slawomir Smiechura
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-04-24 00:00:00.000000000 Z
11
+ date: 2015-05-13 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -166,6 +166,7 @@ files:
166
166
  - lib/rubotium/formatters/html_formatter.css
167
167
  - lib/rubotium/formatters/html_formatter.rb
168
168
  - lib/rubotium/formatters/junit_formatter.rb
169
+ - lib/rubotium/log_writter.rb
169
170
  - lib/rubotium/memory.rb
170
171
  - lib/rubotium/memory/data_point.rb
171
172
  - lib/rubotium/memory/monitor.rb
@@ -203,6 +204,7 @@ files:
203
204
  - spec/lib/rubotium/formatters/junit_formatter_spec.rb
204
205
  - spec/lib/rubotium/memory/data_point_spec.rb
205
206
  - spec/lib/rubotium/memory/monitor_spec.rb
207
+ - spec/lib/rubotium/test_runners/instrumentation_test_runner_spec.rb
206
208
  - spec/lib/rubotium/tests_runner_spec.rb
207
209
  - spec/lib/rubotium_spec.rb
208
210
  - spec/spec_helper.rb
@@ -255,6 +257,7 @@ test_files:
255
257
  - spec/lib/rubotium/formatters/junit_formatter_spec.rb
256
258
  - spec/lib/rubotium/memory/data_point_spec.rb
257
259
  - spec/lib/rubotium/memory/monitor_spec.rb
260
+ - spec/lib/rubotium/test_runners/instrumentation_test_runner_spec.rb
258
261
  - spec/lib/rubotium/tests_runner_spec.rb
259
262
  - spec/lib/rubotium_spec.rb
260
263
  - spec/spec_helper.rb