rspec-openhab-scripting 0.0.1-java → 0.0.2-java

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: b0469b486b84d65883d60fa79dbea29b5c5c86792a8f430d222c87bbb76b69d5
4
- data.tar.gz: 188413ff354ddec32fdfb5c4fb0823efcde0a803b684acd3370070217f3d4f1c
3
+ metadata.gz: bb06cd0d4f2eb7710a678cf6b080ae636d81ef9faa4012a755ed8b73117a158a
4
+ data.tar.gz: 3ed1a44e4cc9802054e6697807e75adafa75e6069647f917b809e20cbdb2e92a
5
5
  SHA512:
6
- metadata.gz: fe7991e666341f3a035ea7bbb59d575affd17da44503eb90209b30a05df2f1802620696e8fc8701afe1f0abfcd64e5e8250415f463e5934a2e82ac15234cba83
7
- data.tar.gz: 44d8592c747ac3d179b71a7bf05b35fa8e5b061969b7309f6b793df44135ff781d2d476a776e4f1431e214744188386e32aa875512f016589af62838f7709100
6
+ metadata.gz: 4ee95923dc2c84ca4253112fcb0d6b351cb14d3a1879dcbcdd5e67dfcf095fdfdd0ab8f3c9d4b617fe2db13393a727f2687194531436c9572857066fcc57a62d
7
+ data.tar.gz: 05245aa976b20f462002b87c9451b16c9aa1609f145981f259ee1637270e82a9ca295a55fcb15c6bc66a295664e313e0ffb5b280f193e624fc411ccf3138be2d
@@ -0,0 +1,14 @@
1
+ # frozen_string_literal: true
2
+
3
+ module OpenHAB
4
+ module DSL
5
+ module Rules
6
+ class RuleConfig
7
+ # override on_start to never work
8
+ def on_start?
9
+ false
10
+ end
11
+ end
12
+ end
13
+ end
14
+ end
@@ -0,0 +1,9 @@
1
+ # frozen_string_literal: true
2
+
3
+ RSpec.configure do |config|
4
+ config.before(:each) do
5
+ $ir.for_each do |_provider, item| # rubocop:disable Style/GlobalVars
6
+ item.state = NULL # don't use update, to avoid triggering any rules
7
+ end
8
+ end
9
+ end
@@ -0,0 +1,17 @@
1
+ # frozen_string_literal: true
2
+
3
+ module RSpec
4
+ module OpenHAB
5
+ module Trigger
6
+ def trigger_rule(rule_name, event = nil)
7
+ @rules ||= ::OpenHAB::DSL::Rules::Rule.script_rules.each_with_object({}) { |r, obj| obj[r.name] = r }
8
+
9
+ @rules.fetch(rule_name).execute(nil, { "event" => event })
10
+ end
11
+ end
12
+ end
13
+ end
14
+
15
+ RSpec.configure do |config|
16
+ config.include RSpec::OpenHAB::Trigger
17
+ end
@@ -2,6 +2,6 @@
2
2
 
3
3
  module RSpec
4
4
  module OpenHAB
5
- VERSION = "0.0.1"
5
+ VERSION = "0.0.2"
6
6
  end
7
7
  end
@@ -0,0 +1,22 @@
1
+ # frozen_string_literal: true
2
+
3
+ module RSpec
4
+ module OpenHAB
5
+ module Wait
6
+ def wait_for_rules
7
+ loop do
8
+ break if java.lang.Thread.all_stack_traces.keys.all? do |t|
9
+ !t.name.match?(/^OH-rule-/) ||
10
+ [java.lang.Thread::State::WAITING, java.lang.Thread::State::TIMED_WAITING].include?(t.state)
11
+ end
12
+
13
+ sleep(0.1)
14
+ end
15
+ end
16
+ end
17
+ end
18
+ end
19
+
20
+ RSpec.configure do |config|
21
+ config.include RSpec::OpenHAB::Wait
22
+ end
@@ -70,6 +70,12 @@ require_relative "rspec/openhab/dsl/timers/timer"
70
70
 
71
71
  # rubocop:disable Style/GlobalVars
72
72
 
73
+ # RSpec additions
74
+ require "rspec/openhab/dsl/rules/rspec"
75
+ require "rspec/openhab/state"
76
+ require "rspec/openhab/trigger"
77
+ require "rspec/openhab/wait"
78
+
73
79
  # populate item registry
74
80
  all_items = api.items
75
81
  all_items.each do |item_json|
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rspec-openhab-scripting
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.1
4
+ version: 0.0.2
5
5
  platform: java
6
6
  authors:
7
7
  - Cody Cutrer
@@ -167,8 +167,12 @@ files:
167
167
  - lib/rspec/openhab/core/osgi.rb
168
168
  - lib/rspec/openhab/core/script_handling.rb
169
169
  - lib/rspec/openhab/dsl/imports.rb
170
+ - lib/rspec/openhab/dsl/rules/rspec.rb
170
171
  - lib/rspec/openhab/dsl/timers/timer.rb
172
+ - lib/rspec/openhab/state.rb
173
+ - lib/rspec/openhab/trigger.rb
171
174
  - lib/rspec/openhab/version.rb
175
+ - lib/rspec/openhab/wait.rb
172
176
  - vendor/gems/jar-dependencies-1.0.0/lib/jar-dependencies.rb
173
177
  - vendor/gems/jar-dependencies-1.0.0/lib/jar_dependencies.rb
174
178
  - vendor/gems/jar-dependencies-1.0.0/lib/jar_install_post_install_hook.rb