smalruby-editor 0.1.24 → 0.2.0

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.

Files changed (51) hide show
  1. checksums.yaml +4 -4
  2. data/Guardfile +9 -0
  3. data/app/assets/javascripts/blocks/hardware.js.coffee.erb +147 -62
  4. data/app/assets/javascripts/blocks/sensing.js.coffee.erb +4 -0
  5. data/app/assets/javascripts/msg/en_us.js +34 -12
  6. data/app/assets/javascripts/msg/ja.js +35 -15
  7. data/app/helpers/editor_helper.rb +2 -1
  8. data/app/models/concerns/ruby_to_block/block/{hardware_button_down_or_up.rb → hardware_button_pressed_or_released.rb} +3 -3
  9. data/app/models/concerns/ruby_to_block/block/{hardware_led_on.rb → hardware_led_turn_off.rb} +2 -2
  10. data/app/models/concerns/ruby_to_block/block/{hardware_led_off.rb → hardware_led_turn_on.rb} +2 -2
  11. data/app/models/concerns/ruby_to_block/block/hardware_operation.rb +2 -0
  12. data/app/models/concerns/ruby_to_block/block/{hardware_rgb_led_on.rb → hardware_rgb_led_set_color.rb} +2 -2
  13. data/app/models/concerns/ruby_to_block/block/{hardware_rgb_led_off.rb → hardware_rgb_led_turn_off.rb} +2 -2
  14. data/app/models/concerns/ruby_to_block/block/hardware_smalrubot_v3_action.rb +22 -0
  15. data/app/models/concerns/ruby_to_block/block/hardware_smalrubot_v3_action_with_sec.rb +24 -0
  16. data/app/models/concerns/ruby_to_block/block/hardware_smalrubot_v3_led_turn_on_or_off.rb +22 -0
  17. data/app/models/concerns/ruby_to_block/block/hardware_smalrubot_v3_light_sensor_value.rb +28 -0
  18. data/app/models/concerns/ruby_to_block/block/hardware_smalrubot_v3_touch_sensor_pressed_or_released.rb +29 -0
  19. data/app/models/concerns/ruby_to_block/block/hardware_two_wheel_drive_car_commands.rb +3 -1
  20. data/app/views/editor/_toolbox.html.haml +30 -17
  21. data/app/views/layouts/application.html.erb +3 -1
  22. data/config/locales/en.yml +1 -0
  23. data/config/locales/ja.yml +1 -0
  24. data/lib/smalruby_editor/blockly_message_helper.rb +2 -1
  25. data/lib/smalruby_editor/version.rb +1 -1
  26. data/lib/tasks/release.rake +0 -0
  27. data/smalruby-editor.gemspec +1 -1
  28. data/spec/acceptance/block_mode/blocks/hardware/{button_down_or_up.feature → button_pressed_or_released.feature} +15 -15
  29. data/spec/acceptance/block_mode/blocks/hardware/led_turn_off.feature +67 -0
  30. data/spec/acceptance/block_mode/blocks/hardware/led_turn_on.feature +67 -0
  31. data/spec/acceptance/block_mode/blocks/hardware/rgb_led_set_color.feature +79 -0
  32. data/spec/acceptance/block_mode/blocks/hardware/{button_not_use_pullup.feature → rgb_led_turn_off.feature} +30 -18
  33. data/spec/acceptance/block_mode/blocks/hardware/smalrubot_v3_action.feature +107 -0
  34. data/spec/acceptance/block_mode/blocks/hardware/smalrubot_v3_action_with_sec.feature +151 -0
  35. data/spec/acceptance/block_mode/blocks/hardware/smalrubot_v3_led_turn_on_or_off.feature +73 -0
  36. data/spec/acceptance/block_mode/blocks/hardware/smalrubot_v3_light_sensor_value.feature +92 -0
  37. data/spec/acceptance/block_mode/blocks/hardware/smalrubot_v3_motor_speed.feature +116 -0
  38. data/spec/acceptance/block_mode/blocks/hardware/smalrubot_v3_touch_sensor_pressed_or_released.feature +108 -0
  39. data/spec/models/concerns/ruby_to_block/block/hardware_spec.rb +359 -36
  40. data/spec/models/concerns/ruby_to_block_spec.rb +8 -8
  41. data/spec/steps/block_mode_steps.rb +8 -0
  42. metadata +43 -35
  43. data/app/models/concerns/ruby_to_block/block/hardware_button_not_use_pullup.rb +0 -18
  44. data/app/models/concerns/ruby_to_block/block/hardware_on_button_down_or_up.rb +0 -19
  45. data/app/models/concerns/ruby_to_block/block/hardware_on_sensor_change.rb +0 -17
  46. data/spec/acceptance/block_mode/blocks/hardware/led_off.feature +0 -75
  47. data/spec/acceptance/block_mode/blocks/hardware/led_on.feature +0 -75
  48. data/spec/acceptance/block_mode/blocks/hardware/on_button_down_or_up.feature +0 -87
  49. data/spec/acceptance/block_mode/blocks/hardware/on_sensor_change.feature +0 -81
  50. data/spec/acceptance/block_mode/blocks/hardware/rgb_led_off.feature +0 -81
  51. data/spec/acceptance/block_mode/blocks/hardware/rgb_led_on.feature +0 -87
@@ -1,81 +0,0 @@
1
- # encoding: utf-8
2
- # language: ja
3
- @javascript
4
- 機能: hardware_on_sensor_change - 「センサー[▼ピン]が変化したとき」ブロック
5
- シナリオ: ブロックのみ配置する
6
- 前提 "ブロック" タブを表示する
7
-
8
- もし 次のブロックを配置する:
9
- """
10
- %block{:type => "hardware_on_sensor_change", :x => "0", :y => "0"}
11
- %field{:name => "PIN"}<
12
- A0
13
- """
14
- かつ ブロックからソースコードを生成する
15
-
16
- ならば テキストエディタのプログラムは "" であること
17
-
18
- シナリオ: キャラクターとブロックを配置する
19
- 前提 "ブロック" タブを表示する
20
- かつ 次のキャラクターを追加する:
21
- | name | costumes | x | y | angle |
22
- | car1 | car1.png | 0 | 0 | 0 |
23
-
24
- もし 次のブロックを配置する:
25
- """
26
- %block{:type => "character_new", :x => "21", :y => "15"}
27
- %field{:name => "NAME"}<
28
- car1
29
- %statement{:name => "DO"}
30
- %block{:type => "hardware_on_sensor_change", :x => "0", :y => "0"}
31
- %field{:name => "PIN"}<
32
- A0
33
- """
34
- かつ ブロックからソースコードを生成する
35
-
36
- ならば テキストエディタのプログラムは以下であること:
37
- """
38
- require "smalruby"
39
-
40
- car1 = Character.new(costume: "car1.png", x: 0, y: 0, angle: 0)
41
-
42
- car1.on(:sensor_change, "A0") do
43
-
44
- end
45
-
46
- """
47
-
48
- シナリオ: キャラクターとイベントとブロックを配置する
49
- 前提 "ブロック" タブを表示する
50
- かつ 次のキャラクターを追加する:
51
- | name | costumes | x | y | angle |
52
- | car1 | car1.png | 0 | 0 | 0 |
53
-
54
- もし 次のブロックを配置する:
55
- """
56
- %block{:type => "character_new", :x => "21", :y => "15"}
57
- %field{:name => "NAME"}<
58
- car1
59
- %statement{:name => "DO"}
60
- %block{:type => "events_on_start"}
61
- %statement{:name => "DO"}
62
- %block{:type => "hardware_on_sensor_change", :x => "0", :y => "0"}
63
- %field{:name => "PIN"}<
64
- A0
65
- """
66
- かつ ブロックからソースコードを生成する
67
-
68
- ならば テキストエディタのプログラムは以下であること:
69
- """
70
- require "smalruby"
71
-
72
- car1 = Character.new(costume: "car1.png", x: 0, y: 0, angle: 0)
73
-
74
- car1.on(:start) do
75
-
76
- on(:sensor_change, "A0") do
77
-
78
- end
79
- end
80
-
81
- """
@@ -1,81 +0,0 @@
1
- # encoding: utf-8
2
- # language: ja
3
- @javascript
4
- 機能: hardware_rgb_led_off - 「RGB LED[▼ピン]をオフにする」ブロック
5
- シナリオ: ブロックのみ配置する
6
- 前提 "ブロック" タブを表示する
7
-
8
- もし 次のブロックを配置する:
9
- """
10
- %block{:type => "hardware_rgb_led_off", :x => "0", :y => "0"}
11
- %field{:name => "AC"}<
12
- anode
13
- %field{:name => "PIN"}<
14
- D3
15
- """
16
- かつ ブロックからソースコードを生成する
17
-
18
- ならば テキストエディタのプログラムは "" であること
19
-
20
- シナリオ: キャラクターとブロックを配置する
21
- 前提 "ブロック" タブを表示する
22
- かつ 次のキャラクターを追加する:
23
- | name | costumes | x | y | angle |
24
- | car1 | car1.png | 0 | 0 | 0 |
25
-
26
- もし 次のブロックを配置する:
27
- """
28
- %block{:type => "character_new", :x => "21", :y => "15"}
29
- %field{:name => "NAME"}<
30
- car1
31
- %statement{:name => "DO"}
32
- %block{:type => "hardware_rgb_led_off", :x => "0", :y => "0"}
33
- %field{:name => "AC"}<
34
- anode
35
- %field{:name => "PIN"}<
36
- D3
37
- """
38
- かつ ブロックからソースコードを生成する
39
-
40
- ならば テキストエディタのプログラムは以下であること:
41
- """
42
- require "smalruby"
43
-
44
- car1 = Character.new(costume: "car1.png", x: 0, y: 0, angle: 0)
45
- car1.rgb_led_anode("D3").off
46
-
47
- """
48
-
49
- シナリオ: キャラクターとイベントとブロックを配置する
50
- 前提 "ブロック" タブを表示する
51
- かつ 次のキャラクターを追加する:
52
- | name | costumes | x | y | angle |
53
- | car1 | car1.png | 0 | 0 | 0 |
54
-
55
- もし 次のブロックを配置する:
56
- """
57
- %block{:type => "character_new", :x => "21", :y => "15"}
58
- %field{:name => "NAME"}<
59
- car1
60
- %statement{:name => "DO"}
61
- %block{:type => "events_on_start"}
62
- %statement{:name => "DO"}
63
- %block{:type => "hardware_rgb_led_off", :x => "0", :y => "0"}
64
- %field{:name => "AC"}<
65
- anode
66
- %field{:name => "PIN"}<
67
- D3
68
- """
69
- かつ ブロックからソースコードを生成する
70
-
71
- ならば テキストエディタのプログラムは以下であること:
72
- """
73
- require "smalruby"
74
-
75
- car1 = Character.new(costume: "car1.png", x: 0, y: 0, angle: 0)
76
-
77
- car1.on(:start) do
78
- rgb_led_anode("D3").off
79
- end
80
-
81
- """
@@ -1,87 +0,0 @@
1
- # encoding: utf-8
2
- # language: ja
3
- @javascript
4
- 機能: hardware_rgb_led_on - 「RGB LED[▼ピン]を[カラー]にする」ブロック
5
- シナリオ: ブロックのみ配置する
6
- 前提 "ブロック" タブを表示する
7
-
8
- もし 次のブロックを配置する:
9
- """
10
- %block{:type => "hardware_rgb_led_on", :x => "0", :y => "0"}
11
- %field{:name => "AC"}<
12
- anode
13
- %field{:name => "PIN"}<
14
- D3
15
- %field{:name => "COLOUR"}<
16
- \#808080
17
- """
18
- かつ ブロックからソースコードを生成する
19
-
20
- ならば テキストエディタのプログラムは "" であること
21
-
22
- シナリオ: キャラクターとブロックを配置する
23
- 前提 "ブロック" タブを表示する
24
- かつ 次のキャラクターを追加する:
25
- | name | costumes | x | y | angle |
26
- | car1 | car1.png | 0 | 0 | 0 |
27
-
28
- もし 次のブロックを配置する:
29
- """
30
- %block{:type => "character_new", :x => "21", :y => "15"}
31
- %field{:name => "NAME"}<
32
- car1
33
- %statement{:name => "DO"}
34
- %block{:type => "hardware_rgb_led_on", :x => "0", :y => "0"}
35
- %field{:name => "AC"}<
36
- anode
37
- %field{:name => "PIN"}<
38
- D3
39
- %field{:name => "COLOUR"}<
40
- \#808080
41
- """
42
- かつ ブロックからソースコードを生成する
43
-
44
- ならば テキストエディタのプログラムは以下であること:
45
- """
46
- require "smalruby"
47
-
48
- car1 = Character.new(costume: "car1.png", x: 0, y: 0, angle: 0)
49
- car1.rgb_led_anode("D3").on(color: [128, 128, 128])
50
-
51
- """
52
-
53
- シナリオ: キャラクターとイベントとブロックを配置する
54
- 前提 "ブロック" タブを表示する
55
- かつ 次のキャラクターを追加する:
56
- | name | costumes | x | y | angle |
57
- | car1 | car1.png | 0 | 0 | 0 |
58
-
59
- もし 次のブロックを配置する:
60
- """
61
- %block{:type => "character_new", :x => "21", :y => "15"}
62
- %field{:name => "NAME"}<
63
- car1
64
- %statement{:name => "DO"}
65
- %block{:type => "events_on_start"}
66
- %statement{:name => "DO"}
67
- %block{:type => "hardware_rgb_led_on", :x => "0", :y => "0"}
68
- %field{:name => "AC"}<
69
- anode
70
- %field{:name => "PIN"}<
71
- D3
72
- %field{:name => "COLOUR"}<
73
- \#808080
74
- """
75
- かつ ブロックからソースコードを生成する
76
-
77
- ならば テキストエディタのプログラムは以下であること:
78
- """
79
- require "smalruby"
80
-
81
- car1 = Character.new(costume: "car1.png", x: 0, y: 0, angle: 0)
82
-
83
- car1.on(:start) do
84
- rgb_led_anode("D3").on(color: [128, 128, 128])
85
- end
86
-
87
- """