calypso 0.1.2 → 0.1.3

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: 54ea4595b7a3ec507bfbb0a49d03c24fb7cb7e49
4
- data.tar.gz: 52ac19c39a4cc38adfabeb924dec1e1562ebe805
3
+ metadata.gz: 598059a4f02a44be7bc28d7d0d92b79de0121ca6
4
+ data.tar.gz: 3ada6ac13a393c41b6d1be9d8af1756fb00f84e1
5
5
  SHA512:
6
- metadata.gz: 2b53b775c3e3ab569a804dc8f1077502fe05355d42088f8e303a39c7f68f369e708dcd98c793ff3ca1bdb719a04c37f7bceddbc9bf79eff37c02d154088dd6d4
7
- data.tar.gz: a150d32764677cc1b22eb455374b53f197b1348dc98210a4b96f9ef19aa1e2cc1cdb123a9bc3bfb1b67b9062e027084eeaeaa0768bd3e2c63353969fdc86d011
6
+ metadata.gz: 97637b03e5954551e63308cc4398af0092fdca10e52d0906b8572ce81211df59dff170f33962e0d9bc227d5c7a4372a5ab3c6a88965f495afed222897b341309
7
+ data.tar.gz: be91f78c64e2e3525d8c5e9221b8d178a0c97b9b7d20c41edf52f0d9bace8cb44e1c0478cd2f033cdef18225158835352b4142427a957c8d7a83dfb7785616a5
@@ -46,6 +46,7 @@ module Calypso
46
46
  options.run_mode = :all
47
47
  options.tty_fix = false
48
48
  options.tty_fix = true if ENV['TTY_FIX'].eql? 'true'
49
+ options.update = false
49
50
 
50
51
  parser = OptionParser.new do |p|
51
52
  p.banner = "Usage: calypso [options] -c [config]"
@@ -56,6 +57,10 @@ module Calypso
56
57
  options.parser = :yaml
57
58
  end
58
59
 
60
+ p.on('-u', '--update', "Update configuration files") do
61
+ options.update = true
62
+ end
63
+
59
64
  p.on('-b', '--bare', "Do not recompile ETA/OS before running the test") do
60
65
  options.bare = true
61
66
  end
@@ -123,6 +128,11 @@ module Calypso
123
128
  config = Calypso::ParserProxy.new(options.parser, options.config)
124
129
  config.parse
125
130
 
131
+ if options.update
132
+ Calypso.update(config, options)
133
+ exit
134
+ end
135
+
126
136
  case options.run_mode
127
137
  when :all
128
138
  Calypso.run(config, options)
@@ -133,6 +143,36 @@ module Calypso
133
143
  end
134
144
  end
135
145
 
146
+ # Update the Kbuild configurations.
147
+ #
148
+ # @param parser [Calypso::ParserProxy] Config parser
149
+ # @param options [OpenStruct] Program options
150
+ # @param hwid [String] Harware ID of the tests to update
151
+ # @return [nil]
152
+ def update_hw(parser, options, hwid)
153
+ hw = parser.hardware[hwid]
154
+ tests = hw.tests
155
+
156
+ tests.each do |test|
157
+ puts "Updating #{test.name}"
158
+ puts ""
159
+ test.update
160
+ end
161
+ end
162
+
163
+ # Update the Kbuild configurations.
164
+ #
165
+ # @param parser [Calypso::ParserProxy] Config parser
166
+ # @param options [OpenStruct] Program options
167
+ # @return [nil]
168
+ def update(parser, options)
169
+ hw = parser.hardware
170
+
171
+ hw.each do |hwid, hwdata|
172
+ Calypso.update_hw(parser, options, hwid)
173
+ end
174
+ end
175
+
136
176
  # Run a single test.
137
177
  #
138
178
  # @param parser [Calypso::ParserProxy] Configuration parser.
@@ -44,6 +44,20 @@ module Calypso
44
44
  FileUtils.copy(@conf, "#{Dir.pwd}/.config")
45
45
  end
46
46
 
47
+ # Save the configuration file back to the test directory.
48
+ #
49
+ # @return [nil]
50
+ def save_config
51
+ FileUtils.copy("#{Dir.pwd}/.config", @conf)
52
+ end
53
+
54
+ # Run the prebuild targets.
55
+ #
56
+ # @return [nil]
57
+ def prepare
58
+ system("make #{ETAOS_PREBUILD_TARGETS}")
59
+ end
60
+
47
61
  # Run the clean target on ETA/OS.
48
62
  def clean
49
63
  system("make #{ETAOS_CLEAN_TARGETS}")
@@ -88,6 +88,15 @@ module Calypso
88
88
  end
89
89
  end
90
90
 
91
+ # Update the unit test configuration file.
92
+ #
93
+ # @return [nil]
94
+ def update
95
+ kbuild = Kbuild.new(@conf, @path)
96
+ kbuild.prepare
97
+ kbuild.save_config
98
+ end
99
+
91
100
  # Check if the test ran succesfully.
92
101
  #
93
102
  # @return [Boolean] Whether or not the test executed succesfully.
@@ -19,5 +19,5 @@
19
19
  #
20
20
  module Calypso
21
21
  # Calypso version constant
22
- VERSION = '0.1.2'
22
+ VERSION = '0.1.3'
23
23
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: calypso
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.2
4
+ version: 0.1.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Michel Megens
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2016-10-31 00:00:00.000000000 Z
11
+ date: 2016-12-07 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -42,28 +42,28 @@ dependencies:
42
42
  name: rspec
43
43
  requirement: !ruby/object:Gem::Requirement
44
44
  requirements:
45
- - - '='
45
+ - - ">="
46
46
  - !ruby/object:Gem::Version
47
47
  version: 3.4.0
48
48
  type: :development
49
49
  prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
- - - '='
52
+ - - ">="
53
53
  - !ruby/object:Gem::Version
54
54
  version: 3.4.0
55
55
  - !ruby/object:Gem::Dependency
56
56
  name: serialport
57
57
  requirement: !ruby/object:Gem::Requirement
58
58
  requirements:
59
- - - '='
59
+ - - ">="
60
60
  - !ruby/object:Gem::Version
61
61
  version: 1.3.0
62
62
  type: :development
63
63
  prerelease: false
64
64
  version_requirements: !ruby/object:Gem::Requirement
65
65
  requirements:
66
- - - '='
66
+ - - ">="
67
67
  - !ruby/object:Gem::Version
68
68
  version: 1.3.0
69
69
  description: Automate tests for embedded system based on a specific configuration.
@@ -105,7 +105,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
105
105
  version: '0'
106
106
  requirements: []
107
107
  rubyforge_project:
108
- rubygems_version: 2.2.2
108
+ rubygems_version: 2.5.1
109
109
  signing_key:
110
110
  specification_version: 4
111
111
  summary: Embedded test automation.