smalruby-editor 0.2.4 → 0.2.5
Sign up to get free protection for your applications and to get access to all the features.
Potentially problematic release.
This version of smalruby-editor might be problematic. Click here for more details.
- checksums.yaml +4 -4
- data/.rubocop.yml +8 -0
- data/Guardfile +8 -1
- data/app/assets/javascripts/blocks/hardware.js.coffee.erb +11 -152
- data/app/assets/javascripts/msg/en_us.js +5 -5
- data/app/assets/javascripts/msg/ja.js +5 -5
- data/app/assets/javascripts/views/signin_modal_view.js.coffee.erb +0 -0
- data/app/controllers/sessions_controller.rb +0 -0
- data/app/helpers/sessions_helper.rb +4 -0
- data/app/models/concerns/ruby_to_block/block/hardware_operation.rb +11 -0
- data/app/models/concerns/ruby_to_block/block/{hardware_smalrubot_s1_led_turn_on_or_off.rb → hardware_smalrubot_action.rb} +8 -5
- data/app/models/concerns/ruby_to_block/block/hardware_smalrubot_action_with_sec.rb +25 -0
- data/app/models/concerns/ruby_to_block/block/{hardware_smalrubot_v3_motor_speed.rb → hardware_smalrubot_dc_motor_power_ratio.rb} +8 -5
- data/app/models/concerns/ruby_to_block/block/hardware_smalrubot_dc_motor_set_power_ratio.rb +23 -0
- data/app/models/concerns/ruby_to_block/block/{hardware_smalrubot_v3_led_turn_on_or_off.rb → hardware_smalrubot_led_turn_on_or_off.rb} +8 -5
- data/app/models/concerns/ruby_to_block/block/{hardware_smalrubot_s1_ir_photoreflector_value.rb → hardware_smalrubot_sensor_value.rb} +8 -6
- data/app/views/editor/_toolbox_default.html.haml +4 -7
- data/app/views/editor/index.html.haml +7 -18
- data/bin/spring +0 -0
- data/config/application.rb +1 -0
- data/lib/smalruby_editor/version.rb +1 -1
- data/smalruby-editor.gemspec +1 -1
- data/spec/acceptance/block_mode/blocks/hardware/smalrubot_s1_led_turn_on_or_off.feature +8 -8
- data/spec/acceptance/block_mode/blocks/hardware/{smalrubot_v3_motor_speed.feature → smalrubot_v3_dc_motor_power_ratio.feature} +12 -12
- data/spec/acceptance/block_mode/blocks/hardware/smalrubot_v3_led_turn_on_or_off.feature +8 -8
- data/spec/acceptance/block_mode/blocks/hardware/{smalrubot_s1_ir_photoreflector_value.feature → smalrubot_v3_sensor_value.feature} +7 -7
- data/spec/models/concerns/ruby_to_block/block/{hardware__smalrubot_s1_spec.rb → hardware__smalrubot_spec.rb} +88 -84
- data/spec/spec_helper.rb +0 -0
- data/spec/steps/base_steps.rb +0 -0
- data/spec/steps/text_editor_steps.rb +0 -0
- metadata +23 -36
- data/app/models/concerns/ruby_to_block/block/hardware_smalrubot_s1_action.rb +0 -13
- data/app/models/concerns/ruby_to_block/block/hardware_smalrubot_s1_action_with_sec.rb +0 -14
- data/app/models/concerns/ruby_to_block/block/hardware_smalrubot_s1_dc_motor_power_ratio.rb +0 -26
- data/app/models/concerns/ruby_to_block/block/hardware_smalrubot_s1_dc_motor_set_power_ratio.rb +0 -21
- data/app/models/concerns/ruby_to_block/block/hardware_smalrubot_v3_action.rb +0 -22
- data/app/models/concerns/ruby_to_block/block/hardware_smalrubot_v3_action_with_sec.rb +0 -24
- data/app/models/concerns/ruby_to_block/block/hardware_smalrubot_v3_light_sensor_value.rb +0 -28
- data/app/models/concerns/ruby_to_block/block/hardware_smalrubot_v3_motor_set_speed.rb +0 -21
- data/app/models/concerns/ruby_to_block/block/hardware_smalrubot_v3_touch_sensor_pressed_or_released.rb +0 -29
- data/spec/acceptance/block_mode/blocks/hardware/smalrubot_v3_light_sensor_value.feature +0 -92
- data/spec/acceptance/block_mode/blocks/hardware/smalrubot_v3_touch_sensor_pressed_or_released.feature +0 -108
- data/spec/models/concerns/ruby_to_block/block/hardware__smalrubot_v3_spec.rb +0 -433
data/spec/spec_helper.rb
CHANGED
File without changes
|
data/spec/steps/base_steps.rb
CHANGED
File without changes
|
File without changes
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: smalruby-editor
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.2.
|
4
|
+
version: 0.2.5
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Kouji Takao
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2015-
|
11
|
+
date: 2015-05-13 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rails
|
@@ -198,14 +198,14 @@ dependencies:
|
|
198
198
|
requirements:
|
199
199
|
- - "~>"
|
200
200
|
- !ruby/object:Gem::Version
|
201
|
-
version: 0.1.
|
201
|
+
version: 0.1.6
|
202
202
|
type: :runtime
|
203
203
|
prerelease: false
|
204
204
|
version_requirements: !ruby/object:Gem::Requirement
|
205
205
|
requirements:
|
206
206
|
- - "~>"
|
207
207
|
- !ruby/object:Gem::Version
|
208
|
-
version: 0.1.
|
208
|
+
version: 0.1.6
|
209
209
|
- !ruby/object:Gem::Dependency
|
210
210
|
name: therubyracer
|
211
211
|
requirement: !ruby/object:Gem::Requirement
|
@@ -359,19 +359,12 @@ files:
|
|
359
359
|
- app/models/concerns/ruby_to_block/block/hardware_rgb_led_set_color.rb
|
360
360
|
- app/models/concerns/ruby_to_block/block/hardware_rgb_led_turn_off.rb
|
361
361
|
- app/models/concerns/ruby_to_block/block/hardware_sensor_value.rb
|
362
|
-
- app/models/concerns/ruby_to_block/block/
|
363
|
-
- app/models/concerns/ruby_to_block/block/
|
364
|
-
- app/models/concerns/ruby_to_block/block/
|
365
|
-
- app/models/concerns/ruby_to_block/block/
|
366
|
-
- app/models/concerns/ruby_to_block/block/
|
367
|
-
- app/models/concerns/ruby_to_block/block/
|
368
|
-
- app/models/concerns/ruby_to_block/block/hardware_smalrubot_v3_action.rb
|
369
|
-
- app/models/concerns/ruby_to_block/block/hardware_smalrubot_v3_action_with_sec.rb
|
370
|
-
- app/models/concerns/ruby_to_block/block/hardware_smalrubot_v3_led_turn_on_or_off.rb
|
371
|
-
- app/models/concerns/ruby_to_block/block/hardware_smalrubot_v3_light_sensor_value.rb
|
372
|
-
- app/models/concerns/ruby_to_block/block/hardware_smalrubot_v3_motor_set_speed.rb
|
373
|
-
- app/models/concerns/ruby_to_block/block/hardware_smalrubot_v3_motor_speed.rb
|
374
|
-
- app/models/concerns/ruby_to_block/block/hardware_smalrubot_v3_touch_sensor_pressed_or_released.rb
|
362
|
+
- app/models/concerns/ruby_to_block/block/hardware_smalrubot_action.rb
|
363
|
+
- app/models/concerns/ruby_to_block/block/hardware_smalrubot_action_with_sec.rb
|
364
|
+
- app/models/concerns/ruby_to_block/block/hardware_smalrubot_dc_motor_power_ratio.rb
|
365
|
+
- app/models/concerns/ruby_to_block/block/hardware_smalrubot_dc_motor_set_power_ratio.rb
|
366
|
+
- app/models/concerns/ruby_to_block/block/hardware_smalrubot_led_turn_on_or_off.rb
|
367
|
+
- app/models/concerns/ruby_to_block/block/hardware_smalrubot_sensor_value.rb
|
375
368
|
- app/models/concerns/ruby_to_block/block/hardware_two_wheel_drive_car.rb
|
376
369
|
- app/models/concerns/ruby_to_block/block/hardware_two_wheel_drive_car_commands.rb
|
377
370
|
- app/models/concerns/ruby_to_block/block/hardware_two_wheel_drive_car_run.rb
|
@@ -488,8 +481,8 @@ files:
|
|
488
481
|
- public/apple-touch-icon.png
|
489
482
|
- public/assets/application-c196e243630d74071981a16041bf391d.css
|
490
483
|
- public/assets/application-c196e243630d74071981a16041bf391d.css.gz
|
491
|
-
- public/assets/application-
|
492
|
-
- public/assets/application-
|
484
|
+
- public/assets/application-e64da116c4adad30e499acda9d657fb5.js
|
485
|
+
- public/assets/application-e64da116c4adad30e499acda9d657fb5.js.gz
|
493
486
|
- public/assets/blockly/msg/js/en_us-d5e1938b2d57c1df954f4411b9165d10.js
|
494
487
|
- public/assets/blockly/msg/js/en_us-d5e1938b2d57c1df954f4411b9165d10.js.gz
|
495
488
|
- public/assets/blockly/msg/js/ja-9f676d46458a2802b8f5a797c90ae8a4.js
|
@@ -510,11 +503,11 @@ files:
|
|
510
503
|
- public/assets/jquery-ui/ui-icons_888888_256x240-ce584ffa171c3ea9a018cf0d7bec65c8.png
|
511
504
|
- public/assets/jquery-ui/ui-icons_cd0a0a_256x240-747e96029e8dedcabc224e5f7d1f2ede.png
|
512
505
|
- public/assets/loading-e77296be32d066d3e29d3bf9803fa417.gif
|
513
|
-
- public/assets/manifest-
|
514
|
-
- public/assets/msg/en_us-
|
515
|
-
- public/assets/msg/en_us-
|
516
|
-
- public/assets/msg/ja-
|
517
|
-
- public/assets/msg/ja-
|
506
|
+
- public/assets/manifest-beef6aec1f5553cda5a2fe11ef0774ea.json
|
507
|
+
- public/assets/msg/en_us-a3f6b99f4b54cfaeed42452de11ab02e.js
|
508
|
+
- public/assets/msg/en_us-a3f6b99f4b54cfaeed42452de11ab02e.js.gz
|
509
|
+
- public/assets/msg/ja-9323664964a9b8ede99ae16c43db5827.js
|
510
|
+
- public/assets/msg/ja-9323664964a9b8ede99ae16c43db5827.js.gz
|
518
511
|
- public/assets/progressbar-ee8fb1222f286f625bbf7332844a6a0c.gif
|
519
512
|
- public/assets/toolbox_default-e023d3f7a2cc7cc1f54a1224577b3c26.css
|
520
513
|
- public/assets/toolbox_default-e023d3f7a2cc7cc1f54a1224577b3c26.css.gz
|
@@ -606,14 +599,12 @@ files:
|
|
606
599
|
- spec/acceptance/block_mode/blocks/hardware/smalrubot_s1_action.feature
|
607
600
|
- spec/acceptance/block_mode/blocks/hardware/smalrubot_s1_action_with_sec.feature
|
608
601
|
- spec/acceptance/block_mode/blocks/hardware/smalrubot_s1_dc_motor_power_ratio.feature
|
609
|
-
- spec/acceptance/block_mode/blocks/hardware/smalrubot_s1_ir_photoreflector_value.feature
|
610
602
|
- spec/acceptance/block_mode/blocks/hardware/smalrubot_s1_led_turn_on_or_off.feature
|
611
603
|
- spec/acceptance/block_mode/blocks/hardware/smalrubot_v3_action.feature
|
612
604
|
- spec/acceptance/block_mode/blocks/hardware/smalrubot_v3_action_with_sec.feature
|
605
|
+
- spec/acceptance/block_mode/blocks/hardware/smalrubot_v3_dc_motor_power_ratio.feature
|
613
606
|
- spec/acceptance/block_mode/blocks/hardware/smalrubot_v3_led_turn_on_or_off.feature
|
614
|
-
- spec/acceptance/block_mode/blocks/hardware/
|
615
|
-
- spec/acceptance/block_mode/blocks/hardware/smalrubot_v3_motor_speed.feature
|
616
|
-
- spec/acceptance/block_mode/blocks/hardware/smalrubot_v3_touch_sensor_pressed_or_released.feature
|
607
|
+
- spec/acceptance/block_mode/blocks/hardware/smalrubot_v3_sensor_value.feature
|
617
608
|
- spec/acceptance/block_mode/blocks/hardware/two_wheel_drive_car.feature
|
618
609
|
- spec/acceptance/block_mode/blocks/hardware/two_wheel_drive_car_speed.feature
|
619
610
|
- spec/acceptance/block_mode/blocks/looks/hide.feature
|
@@ -688,8 +679,7 @@ files:
|
|
688
679
|
- spec/models/concerns/ruby_to_block/block/control_if_spec.rb
|
689
680
|
- spec/models/concerns/ruby_to_block/block/control_loop_spec.rb
|
690
681
|
- spec/models/concerns/ruby_to_block/block/events_on_start_spec.rb
|
691
|
-
- spec/models/concerns/ruby_to_block/block/
|
692
|
-
- spec/models/concerns/ruby_to_block/block/hardware__smalrubot_v3_spec.rb
|
682
|
+
- spec/models/concerns/ruby_to_block/block/hardware__smalrubot_spec.rb
|
693
683
|
- spec/models/concerns/ruby_to_block/block/hardware_spec.rb
|
694
684
|
- spec/models/concerns/ruby_to_block/block/looks_say_spec.rb
|
695
685
|
- spec/models/concerns/ruby_to_block/block/looks_spec.rb
|
@@ -786,14 +776,12 @@ test_files:
|
|
786
776
|
- spec/acceptance/block_mode/blocks/hardware/smalrubot_s1_action.feature
|
787
777
|
- spec/acceptance/block_mode/blocks/hardware/smalrubot_s1_action_with_sec.feature
|
788
778
|
- spec/acceptance/block_mode/blocks/hardware/smalrubot_s1_dc_motor_power_ratio.feature
|
789
|
-
- spec/acceptance/block_mode/blocks/hardware/smalrubot_s1_ir_photoreflector_value.feature
|
790
779
|
- spec/acceptance/block_mode/blocks/hardware/smalrubot_s1_led_turn_on_or_off.feature
|
791
780
|
- spec/acceptance/block_mode/blocks/hardware/smalrubot_v3_action.feature
|
792
781
|
- spec/acceptance/block_mode/blocks/hardware/smalrubot_v3_action_with_sec.feature
|
782
|
+
- spec/acceptance/block_mode/blocks/hardware/smalrubot_v3_dc_motor_power_ratio.feature
|
793
783
|
- spec/acceptance/block_mode/blocks/hardware/smalrubot_v3_led_turn_on_or_off.feature
|
794
|
-
- spec/acceptance/block_mode/blocks/hardware/
|
795
|
-
- spec/acceptance/block_mode/blocks/hardware/smalrubot_v3_motor_speed.feature
|
796
|
-
- spec/acceptance/block_mode/blocks/hardware/smalrubot_v3_touch_sensor_pressed_or_released.feature
|
784
|
+
- spec/acceptance/block_mode/blocks/hardware/smalrubot_v3_sensor_value.feature
|
797
785
|
- spec/acceptance/block_mode/blocks/hardware/two_wheel_drive_car.feature
|
798
786
|
- spec/acceptance/block_mode/blocks/hardware/two_wheel_drive_car_speed.feature
|
799
787
|
- spec/acceptance/block_mode/blocks/looks/hide.feature
|
@@ -868,8 +856,7 @@ test_files:
|
|
868
856
|
- spec/models/concerns/ruby_to_block/block/control_if_spec.rb
|
869
857
|
- spec/models/concerns/ruby_to_block/block/control_loop_spec.rb
|
870
858
|
- spec/models/concerns/ruby_to_block/block/events_on_start_spec.rb
|
871
|
-
- spec/models/concerns/ruby_to_block/block/
|
872
|
-
- spec/models/concerns/ruby_to_block/block/hardware__smalrubot_v3_spec.rb
|
859
|
+
- spec/models/concerns/ruby_to_block/block/hardware__smalrubot_spec.rb
|
873
860
|
- spec/models/concerns/ruby_to_block/block/hardware_spec.rb
|
874
861
|
- spec/models/concerns/ruby_to_block/block/looks_say_spec.rb
|
875
862
|
- spec/models/concerns/ruby_to_block/block/looks_spec.rb
|
@@ -1,13 +0,0 @@
|
|
1
|
-
# -*- coding: utf-8 -*-
|
2
|
-
module RubyToBlock
|
3
|
-
module Block
|
4
|
-
class HardwareSmalrubotS1Action < HardwareSmalrubotV3Action
|
5
|
-
# rubocop:disable LineLength
|
6
|
-
blocknize '^\s*' + CHAR_RE +
|
7
|
-
'smalrubot_s1\.' + ACTION_RE +
|
8
|
-
'\s*$',
|
9
|
-
statement: true, inline: true
|
10
|
-
# rubocop:enable LineLength
|
11
|
-
end
|
12
|
-
end
|
13
|
-
end
|
@@ -1,14 +0,0 @@
|
|
1
|
-
# -*- coding: utf-8 -*-
|
2
|
-
module RubyToBlock
|
3
|
-
module Block
|
4
|
-
class HardwareSmalrubotS1ActionWithSec < HardwareSmalrubotV3ActionWithSec
|
5
|
-
# rubocop:disable LineLength
|
6
|
-
blocknize '^\s*' + CHAR_RE +
|
7
|
-
'smalrubot_s1\.' + ACTION_RE +
|
8
|
-
'\(\s*sec:\s*(\d+(?:\.\d+)?)\)' +
|
9
|
-
'\s*$',
|
10
|
-
statement: true, inline: true
|
11
|
-
# rubocop:enable LineLength
|
12
|
-
end
|
13
|
-
end
|
14
|
-
end
|
@@ -1,26 +0,0 @@
|
|
1
|
-
module RubyToBlock
|
2
|
-
module Block
|
3
|
-
class HardwareSmalrubotS1DcMotorPowerRatio < Value
|
4
|
-
include CharacterOperation
|
5
|
-
include HardwareOperation
|
6
|
-
|
7
|
-
blocknize '^\s*' + CHAR_RE +
|
8
|
-
'smalrubot_s1\.' +
|
9
|
-
LOR_RE + '_dc_motor_power_ratio\s*$',
|
10
|
-
value: true
|
11
|
-
|
12
|
-
def self.process_match_data(md, context)
|
13
|
-
md2 = regexp.match(md[type])
|
14
|
-
|
15
|
-
character = get_character(context, md2[1])
|
16
|
-
return false if context.receiver && context.receiver != character
|
17
|
-
|
18
|
-
block = new(fields: { LOR: md2[2] })
|
19
|
-
context.add_value(block)
|
20
|
-
block.character = character
|
21
|
-
|
22
|
-
true
|
23
|
-
end
|
24
|
-
end
|
25
|
-
end
|
26
|
-
end
|
data/app/models/concerns/ruby_to_block/block/hardware_smalrubot_s1_dc_motor_set_power_ratio.rb
DELETED
@@ -1,21 +0,0 @@
|
|
1
|
-
# -*- coding: utf-8 -*-
|
2
|
-
module RubyToBlock
|
3
|
-
module Block
|
4
|
-
class HardwareSmalrubotS1DcMotorSetPowerRatio < CharacterMethodCall
|
5
|
-
include HardwareOperation
|
6
|
-
|
7
|
-
blocknize '^\s*' + CHAR_RE +
|
8
|
-
'smalrubot_s1\.' +
|
9
|
-
LOR_RE + '_dc_motor_power_ratio\s*=\s*(\S+)\s*$',
|
10
|
-
statement: true, inline: true
|
11
|
-
|
12
|
-
def self.process_match_data(md, context)
|
13
|
-
md2 = regexp.match(md[type])
|
14
|
-
add_character_method_call_block(context, md2[1],
|
15
|
-
new(fields: { LOR: md2[2] }),
|
16
|
-
SPEED: md2[3])
|
17
|
-
true
|
18
|
-
end
|
19
|
-
end
|
20
|
-
end
|
21
|
-
end
|
@@ -1,22 +0,0 @@
|
|
1
|
-
# -*- coding: utf-8 -*-
|
2
|
-
module RubyToBlock
|
3
|
-
module Block
|
4
|
-
class HardwareSmalrubotV3Action < CharacterMethodCall
|
5
|
-
include HardwareOperation
|
6
|
-
|
7
|
-
# rubocop:disable LineLength
|
8
|
-
blocknize '^\s*' + CHAR_RE +
|
9
|
-
'smalrubot_v3\.' + ACTION_RE +
|
10
|
-
'\s*$',
|
11
|
-
statement: true, inline: true
|
12
|
-
# rubocop:enable LineLength
|
13
|
-
|
14
|
-
def self.process_match_data(md, context)
|
15
|
-
md2 = regexp.match(md[type])
|
16
|
-
add_character_method_call_block(context, md2[1],
|
17
|
-
new(fields: { ACTION: md2[2] }))
|
18
|
-
true
|
19
|
-
end
|
20
|
-
end
|
21
|
-
end
|
22
|
-
end
|
@@ -1,24 +0,0 @@
|
|
1
|
-
# -*- coding: utf-8 -*-
|
2
|
-
module RubyToBlock
|
3
|
-
module Block
|
4
|
-
class HardwareSmalrubotV3ActionWithSec < CharacterMethodCall
|
5
|
-
include HardwareOperation
|
6
|
-
|
7
|
-
# rubocop:disable LineLength
|
8
|
-
blocknize '^\s*' + CHAR_RE +
|
9
|
-
'smalrubot_v3\.' + ACTION_RE +
|
10
|
-
'\(\s*sec:\s*(\d+(?:\.\d+)?)\)' +
|
11
|
-
'\s*$',
|
12
|
-
statement: true, inline: true
|
13
|
-
# rubocop:enable LineLength
|
14
|
-
|
15
|
-
def self.process_match_data(md, context)
|
16
|
-
md2 = regexp.match(md[type])
|
17
|
-
add_character_method_call_block(context, md2[1],
|
18
|
-
new(fields: { ACTION: md2[2] }),
|
19
|
-
SEC: md2[3])
|
20
|
-
true
|
21
|
-
end
|
22
|
-
end
|
23
|
-
end
|
24
|
-
end
|
@@ -1,28 +0,0 @@
|
|
1
|
-
module RubyToBlock
|
2
|
-
module Block
|
3
|
-
class HardwareSmalrubotV3LightSensorValue < Value
|
4
|
-
include CharacterOperation
|
5
|
-
|
6
|
-
# rubocop:disable LineLength
|
7
|
-
blocknize '^\s*' + CHAR_RE +
|
8
|
-
'smalrubot_v3\.' +
|
9
|
-
'light_sensor\.value' +
|
10
|
-
'\s*$',
|
11
|
-
value: true
|
12
|
-
# rubocop:enable LineLength
|
13
|
-
|
14
|
-
def self.process_match_data(md, context)
|
15
|
-
md2 = regexp.match(md[type])
|
16
|
-
|
17
|
-
character = get_character(context, md2[1])
|
18
|
-
return false if context.receiver && context.receiver != character
|
19
|
-
|
20
|
-
block = new
|
21
|
-
context.add_value(block)
|
22
|
-
block.character = character
|
23
|
-
|
24
|
-
true
|
25
|
-
end
|
26
|
-
end
|
27
|
-
end
|
28
|
-
end
|
@@ -1,21 +0,0 @@
|
|
1
|
-
# -*- coding: utf-8 -*-
|
2
|
-
module RubyToBlock
|
3
|
-
module Block
|
4
|
-
class HardwareSmalrubotV3MotorSetSpeed < CharacterMethodCall
|
5
|
-
include HardwareOperation
|
6
|
-
|
7
|
-
blocknize '^\s*' + CHAR_RE +
|
8
|
-
'smalrubot_v3\.' +
|
9
|
-
LOR_RE + '_motor_speed\s*=\s*(\S+)\s*$',
|
10
|
-
statement: true, inline: true
|
11
|
-
|
12
|
-
def self.process_match_data(md, context)
|
13
|
-
md2 = regexp.match(md[type])
|
14
|
-
add_character_method_call_block(context, md2[1],
|
15
|
-
new(fields: { LOR: md2[2] }),
|
16
|
-
SPEED: md2[3])
|
17
|
-
true
|
18
|
-
end
|
19
|
-
end
|
20
|
-
end
|
21
|
-
end
|
@@ -1,29 +0,0 @@
|
|
1
|
-
module RubyToBlock
|
2
|
-
module Block
|
3
|
-
class HardwareSmalrubotV3TouchSensorPressedOrReleased < Value
|
4
|
-
include CharacterOperation
|
5
|
-
include HardwareOperation
|
6
|
-
|
7
|
-
# rubocop:disable LineLength
|
8
|
-
blocknize '^\s*' + CHAR_RE +
|
9
|
-
'smalrubot_v3\.' +
|
10
|
-
LOR_RE + '_touch_sensor\.' + POR_RE + '\?' +
|
11
|
-
'\s*$',
|
12
|
-
value: true
|
13
|
-
# rubocop:enable LineLength
|
14
|
-
|
15
|
-
def self.process_match_data(md, context)
|
16
|
-
md2 = regexp.match(md[type])
|
17
|
-
|
18
|
-
character = get_character(context, md2[1])
|
19
|
-
return false if context.receiver && context.receiver != character
|
20
|
-
|
21
|
-
block = new(fields: { LOR: md2[2], POR: md2[3] })
|
22
|
-
context.add_value(block)
|
23
|
-
block.character = character
|
24
|
-
|
25
|
-
true
|
26
|
-
end
|
27
|
-
end
|
28
|
-
end
|
29
|
-
end
|
@@ -1,92 +0,0 @@
|
|
1
|
-
# encoding: utf-8
|
2
|
-
# language: en
|
3
|
-
@javascript
|
4
|
-
Feature: hardware_smalrubot_v3_light_sensor_value block
|
5
|
-
Scenario: ブロックのみ配置する
|
6
|
-
Given "ブロック" タブを表示する
|
7
|
-
|
8
|
-
When 次のブロックを配置する:
|
9
|
-
"""
|
10
|
-
%block{:type => "hardware_smalrubot_v3_light_sensor_value", :x => "0", :y => "0"}
|
11
|
-
"""
|
12
|
-
And ブロックからソースコードを生成する
|
13
|
-
|
14
|
-
Then テキストエディタのプログラムは "" であること
|
15
|
-
|
16
|
-
Scenario: 文とブロックを配置する
|
17
|
-
Given "ブロック" タブを表示する
|
18
|
-
|
19
|
-
When 次のブロックを配置する:
|
20
|
-
"""
|
21
|
-
%block{:type => "ruby_p", :x => "0", :y => "0", :inline => "true" }
|
22
|
-
%value{:name => "ARG"}
|
23
|
-
%block{:type => "hardware_smalrubot_v3_light_sensor_value", :x => "0", :y => "0"}
|
24
|
-
"""
|
25
|
-
And ブロックからソースコードを生成する
|
26
|
-
|
27
|
-
Then テキストエディタのプログラムは以下であること:
|
28
|
-
"""
|
29
|
-
require "smalruby"
|
30
|
-
|
31
|
-
p("")
|
32
|
-
|
33
|
-
"""
|
34
|
-
|
35
|
-
Scenario: キャラクターとブロックを配置する
|
36
|
-
Given "ブロック" タブを表示する
|
37
|
-
And 次のキャラクターを追加する:
|
38
|
-
| name | costumes | x | y | angle |
|
39
|
-
| car1 | car1.png | 0 | 0 | 0 |
|
40
|
-
|
41
|
-
When 次のブロックを配置する:
|
42
|
-
"""
|
43
|
-
%block{:type => "character_new", :x => "21", :y => "15"}
|
44
|
-
%field{:name => "NAME"}<
|
45
|
-
car1
|
46
|
-
%statement{:name => "DO"}
|
47
|
-
%block{:type => "ruby_p", :x => "0", :y => "0", :inline => "true" }
|
48
|
-
%value{:name => "ARG"}
|
49
|
-
%block{:type => "hardware_smalrubot_v3_light_sensor_value", :x => "0", :y => "0"}
|
50
|
-
"""
|
51
|
-
And ブロックからソースコードを生成する
|
52
|
-
|
53
|
-
Then テキストエディタのプログラムは以下であること:
|
54
|
-
"""
|
55
|
-
require "smalruby"
|
56
|
-
|
57
|
-
car1 = Character.new(costume: "car1.png", x: 0, y: 0, angle: 0)
|
58
|
-
p(car1.smalrubot_v3.light_sensor.value)
|
59
|
-
|
60
|
-
"""
|
61
|
-
|
62
|
-
Scenario: キャラクターとイベントとブロックを配置する
|
63
|
-
Given "ブロック" タブを表示する
|
64
|
-
And 次のキャラクターを追加する:
|
65
|
-
| name | costumes | x | y | angle |
|
66
|
-
| car1 | car1.png | 0 | 0 | 0 |
|
67
|
-
|
68
|
-
When 次のブロックを配置する:
|
69
|
-
"""
|
70
|
-
%block{:type => "character_new", :x => "21", :y => "15"}
|
71
|
-
%field{:name => "NAME"}<
|
72
|
-
car1
|
73
|
-
%statement{:name => "DO"}
|
74
|
-
%block{:type => "events_on_start"}
|
75
|
-
%statement{:name => "DO"}
|
76
|
-
%block{:type => "ruby_p", :x => "0", :y => "0", :inline => "true" }
|
77
|
-
%value{:name => "ARG"}
|
78
|
-
%block{:type => "hardware_smalrubot_v3_light_sensor_value", :x => "0", :y => "0"}
|
79
|
-
"""
|
80
|
-
And ブロックからソースコードを生成する
|
81
|
-
|
82
|
-
Then テキストエディタのプログラムは以下であること:
|
83
|
-
"""
|
84
|
-
require "smalruby"
|
85
|
-
|
86
|
-
car1 = Character.new(costume: "car1.png", x: 0, y: 0, angle: 0)
|
87
|
-
|
88
|
-
car1.on(:start) do
|
89
|
-
p(smalrubot_v3.light_sensor.value)
|
90
|
-
end
|
91
|
-
|
92
|
-
"""
|