smalruby-editor 0.3.5-x86-mingw32 → 0.4.0-x86-mingw32
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.
Potentially problematic release.
This version of smalruby-editor might be problematic. Click here for more details.
- checksums.yaml +4 -4
 - data/.gitignore +0 -0
 - data/.rspec +0 -0
 - data/.rubocop.yml +1 -0
 - data/.simplecov +7 -7
 - data/.travis.yml +0 -0
 - data/Guardfile +1 -1
 - data/LICENSE +0 -0
 - data/Procfile +1 -1
 - data/Rakefile +0 -0
 - data/app/assets/images/.keep +0 -0
 - data/app/assets/images/favicon.ico +0 -0
 - data/app/assets/javascripts/blocks/blockly.js.coffee.erb +0 -0
 - data/app/assets/javascripts/blocks/character.js.coffee.erb +3 -0
 - data/app/assets/javascripts/blocks/data.js.coffee.erb +0 -0
 - data/app/assets/javascripts/blocks/etc.js.coffee.erb +0 -0
 - data/app/assets/javascripts/blocks/field_character.js.coffee.erb +13 -1
 - data/app/assets/javascripts/blocks/field_costume.js.coffee.erb +84 -0
 - data/app/assets/javascripts/blocks/hardware.js.coffee.erb +26 -0
 - data/app/assets/javascripts/blocks/looks.js.coffee.erb +32 -0
 - data/app/assets/javascripts/collections/.keep +0 -0
 - data/app/assets/javascripts/collections/character_set.js.coffee +0 -0
 - data/app/assets/javascripts/generators/ruby.js.coffee.erb +10 -1
 - data/app/assets/javascripts/models/.keep +0 -0
 - data/app/assets/javascripts/models/character.js.coffee +45 -6
 - data/app/assets/javascripts/models/scene.js.coffee +0 -0
 - data/app/assets/javascripts/msg/en_us.js +4 -0
 - data/app/assets/javascripts/msg/ja.js +4 -0
 - data/app/assets/javascripts/routers/.keep +0 -0
 - data/app/assets/javascripts/smalruby.js.coffee.erb +5 -1
 - data/app/assets/javascripts/views/.keep +0 -0
 - data/app/assets/javascripts/views/character_modal_view.js.coffee.erb +357 -0
 - data/app/assets/javascripts/views/character_selector_view.js.coffee +2 -0
 - data/app/assets/stylesheets/editor.css.scss +201 -16
 - data/app/assets/stylesheets/flatstrap-custom.css.scss +0 -0
 - data/app/assets/stylesheets/load-modal.css.scss +0 -0
 - data/app/assets/templates/.keep +0 -0
 - data/app/controllers/application_controller.rb +8 -2
 - data/app/controllers/concerns/.keep +0 -0
 - data/app/controllers/costumes_controller.rb +58 -0
 - data/app/controllers/editor_controller.rb +2 -0
 - data/app/helpers/costumes_helper.rb +2 -0
 - data/app/helpers/editor_helper.rb +0 -0
 - data/app/helpers/sessions_helper.rb +0 -4
 - data/app/mailers/.keep +0 -0
 - data/app/models/.keep +0 -0
 - data/app/models/concerns/.keep +0 -0
 - data/app/models/concerns/ruby_to_block.rb +0 -0
 - data/app/models/concerns/ruby_to_block/block.rb +0 -0
 - data/app/models/concerns/ruby_to_block/block/base.rb +2 -0
 - data/app/models/concerns/ruby_to_block/block/character.rb +32 -11
 - data/app/models/concerns/ruby_to_block/block/character_event.rb +0 -0
 - data/app/models/concerns/ruby_to_block/block/character_method_call.rb +0 -0
 - data/app/models/concerns/ruby_to_block/block/character_new.rb +0 -0
 - data/app/models/concerns/ruby_to_block/block/character_operation.rb +0 -0
 - data/app/models/concerns/ruby_to_block/block/control_beark.rb +0 -0
 - data/app/models/concerns/ruby_to_block/block/control_if.rb +0 -0
 - data/app/models/concerns/ruby_to_block/block/control_loop.rb +0 -0
 - data/app/models/concerns/ruby_to_block/block/control_sleep.rb +0 -0
 - data/app/models/concerns/ruby_to_block/block/do.rb +0 -0
 - data/app/models/concerns/ruby_to_block/block/else.rb +0 -0
 - data/app/models/concerns/ruby_to_block/block/end.rb +0 -0
 - data/app/models/concerns/ruby_to_block/block/events_on_click.rb +0 -0
 - data/app/models/concerns/ruby_to_block/block/events_on_key_push_or_down.rb +0 -0
 - data/app/models/concerns/ruby_to_block/block/events_on_start.rb +0 -0
 - data/app/models/concerns/ruby_to_block/block/hardware_button_pressed_or_released.rb +0 -0
 - data/app/models/concerns/ruby_to_block/block/hardware_init_hardware.rb +0 -0
 - data/app/models/concerns/ruby_to_block/block/hardware_led_turn_off.rb +0 -0
 - data/app/models/concerns/ruby_to_block/block/hardware_led_turn_on.rb +0 -0
 - data/app/models/concerns/ruby_to_block/block/hardware_motor_driver.rb +0 -0
 - data/app/models/concerns/ruby_to_block/block/hardware_motor_driver_set_speed.rb +0 -0
 - data/app/models/concerns/ruby_to_block/block/hardware_motor_driver_speed.rb +0 -0
 - data/app/models/concerns/ruby_to_block/block/hardware_neo_pixel_set_rgb.rb +31 -0
 - data/app/models/concerns/ruby_to_block/block/hardware_rgb_led_set_color.rb +0 -0
 - data/app/models/concerns/ruby_to_block/block/hardware_rgb_led_turn_off.rb +0 -0
 - data/app/models/concerns/ruby_to_block/block/hardware_sensor_value.rb +0 -0
 - data/app/models/concerns/ruby_to_block/block/hardware_two_wheel_drive_car.rb +0 -0
 - data/app/models/concerns/ruby_to_block/block/hardware_two_wheel_drive_car_commands.rb +0 -0
 - data/app/models/concerns/ruby_to_block/block/hardware_two_wheel_drive_car_run.rb +0 -0
 - data/app/models/concerns/ruby_to_block/block/hardware_two_wheel_drive_car_set_speed.rb +0 -0
 - data/app/models/concerns/ruby_to_block/block/hardware_two_wheel_drive_car_speed.rb +0 -0
 - data/app/models/concerns/ruby_to_block/block/looks_hide.rb +0 -0
 - data/app/models/concerns/ruby_to_block/block/looks_next_costume.rb +12 -0
 - data/app/models/concerns/ruby_to_block/block/looks_say.rb +0 -0
 - data/app/models/concerns/ruby_to_block/block/looks_show.rb +0 -0
 - data/app/models/concerns/ruby_to_block/block/looks_switch_costume.rb +22 -0
 - data/app/models/concerns/ruby_to_block/block/looks_vanish.rb +0 -0
 - data/app/models/concerns/ruby_to_block/block/math_number.rb +0 -0
 - data/app/models/concerns/ruby_to_block/block/motion_change_x_by.rb +0 -0
 - data/app/models/concerns/ruby_to_block/block/motion_change_y_by.rb +0 -0
 - data/app/models/concerns/ruby_to_block/block/motion_go_to_character.rb +0 -0
 - data/app/models/concerns/ruby_to_block/block/motion_go_to_mouse.rb +0 -0
 - data/app/models/concerns/ruby_to_block/block/motion_move.rb +0 -0
 - data/app/models/concerns/ruby_to_block/block/motion_point_towards_character.rb +0 -0
 - data/app/models/concerns/ruby_to_block/block/motion_point_towards_mouse.rb +0 -0
 - data/app/models/concerns/ruby_to_block/block/motion_rotate_left.rb +0 -0
 - data/app/models/concerns/ruby_to_block/block/motion_rotate_right.rb +0 -0
 - data/app/models/concerns/ruby_to_block/block/motion_self_angle.rb +0 -0
 - data/app/models/concerns/ruby_to_block/block/motion_self_x.rb +0 -0
 - data/app/models/concerns/ruby_to_block/block/motion_self_y.rb +0 -0
 - data/app/models/concerns/ruby_to_block/block/motion_set_angle.rb +0 -0
 - data/app/models/concerns/ruby_to_block/block/motion_set_x.rb +0 -0
 - data/app/models/concerns/ruby_to_block/block/motion_set_x_y.rb +0 -0
 - data/app/models/concerns/ruby_to_block/block/motion_set_y.rb +0 -0
 - data/app/models/concerns/ruby_to_block/block/motion_turn.rb +0 -0
 - data/app/models/concerns/ruby_to_block/block/motion_turn_if_reach_wall.rb +0 -0
 - data/app/models/concerns/ruby_to_block/block/motion_turn_xy.rb +0 -0
 - data/app/models/concerns/ruby_to_block/block/null.rb +0 -0
 - data/app/models/concerns/ruby_to_block/block/operators_compare.rb +0 -0
 - data/app/models/concerns/ruby_to_block/block/operators_false.rb +0 -0
 - data/app/models/concerns/ruby_to_block/block/operators_true.rb +0 -0
 - data/app/models/concerns/ruby_to_block/block/require_smalruby.rb +0 -0
 - data/app/models/concerns/ruby_to_block/block/ruby_comment.rb +0 -0
 - data/app/models/concerns/ruby_to_block/block/ruby_expression.rb +0 -0
 - data/app/models/concerns/ruby_to_block/block/ruby_p.rb +0 -0
 - data/app/models/concerns/ruby_to_block/block/ruby_statement.rb +0 -0
 - data/app/models/concerns/ruby_to_block/block/sensing_hit.rb +0 -0
 - data/app/models/concerns/ruby_to_block/block/sensing_reach_wall.rb +0 -0
 - data/app/models/concerns/ruby_to_block/block/sound_play.rb +0 -0
 - data/app/models/concerns/ruby_to_block/block/sound_preset_sounds.rb +0 -0
 - data/app/models/concerns/ruby_to_block/block/text.rb +0 -0
 - data/app/models/concerns/ruby_to_block/block/value.rb +0 -0
 - data/app/models/concerns/ruby_to_block/context.rb +0 -0
 - data/app/models/concerns/ruby_to_block/formatter.rb +0 -0
 - data/app/models/costume.rb +67 -0
 - data/app/models/source_code.rb +9 -1
 - data/app/models/user.rb +7 -0
 - data/app/views/costumes/index.html.haml +19 -0
 - data/app/views/editor/_character_modal.html.haml +35 -7
 - data/app/views/editor/_toolbox_default.html.haml +9 -0
 - data/app/views/editor/demo.html.erb +0 -0
 - data/app/views/editor/index.html.haml +1 -0
 - data/bin/smalruby-editor +1 -0
 - data/bin/spring +7 -9
 - data/config.ru +0 -0
 - data/config/boot.rb +0 -0
 - data/config/database.yml.mysql2 +0 -0
 - data/config/database.yml.sqlite3 +0 -0
 - data/config/database.yml.travis +0 -0
 - data/config/environment.rb +0 -0
 - data/config/environments/development.rb +0 -0
 - data/config/environments/production.rb +0 -0
 - data/config/environments/standalone.rb +0 -0
 - data/config/environments/test.rb +0 -0
 - data/config/initializers/backtrace_silencers.rb +0 -0
 - data/config/initializers/filter_parameter_logging.rb +0 -0
 - data/config/initializers/inflections.rb +0 -0
 - data/config/initializers/mime_types.rb +0 -0
 - data/config/initializers/secret_token.rb +0 -0
 - data/config/initializers/session_store.rb +0 -0
 - data/config/initializers/teaspoon.rb +0 -0
 - data/config/initializers/wrap_parameters.rb +0 -0
 - data/config/locales/en.yml +10 -1
 - data/config/locales/ja.yml +10 -0
 - data/config/routes.rb +2 -0
 - data/config/unicorn.rb +23 -23
 - data/db/migrate/20131216121603_create_source_codes.rb +0 -0
 - data/db/migrate/20131219045113_add_filename_to_source_code.rb +0 -0
 - data/db/migrate/20150513061250_add_index_name_on_users.rb +1 -1
 - data/db/migrate/20150607012053_create_costumes.rb +12 -0
 - data/db/migrate/20150607012707_add_indexes_on_costumes.rb +13 -0
 - data/db/migrate/20150607034013_acts_as_taggable_on_migration.acts_as_taggable_on_engine.rb +31 -0
 - data/db/migrate/20150607034014_add_missing_unique_indices.acts_as_taggable_on_engine.rb +21 -0
 - data/db/migrate/20150607034015_add_taggings_counter_cache_to_tags.acts_as_taggable_on_engine.rb +15 -0
 - data/db/migrate/20150607034016_add_missing_taggable_index.acts_as_taggable_on_engine.rb +10 -0
 - data/db/migrate/20150607034017_change_collation_for_tag_names.acts_as_taggable_on_engine.rb +12 -0
 - data/db/migrate/20150607034018_insert_preset_costumes.rb +9 -0
 - data/db/schema.rb +35 -2
 - data/db/seeds.rb +2 -0
 - data/demos/car_chase.rb.xml +128 -128
 - data/demos/pong.rb.xml +379 -379
 - data/demos/star.rb.xml +115 -115
 - data/lib/assets/.keep +0 -0
 - data/lib/smalruby_editor/version.rb +1 -1
 - data/lib/tasks/.keep +0 -0
 - data/lib/tasks/gem.rake +0 -0
 - data/lib/tasks/rspec.rake +0 -0
 - data/lib/tasks/rubocop.rake +0 -0
 - data/log/.keep +0 -0
 - data/public/404.html +0 -0
 - data/public/422.html +0 -0
 - data/public/500.html +0 -0
 - data/public/apple-touch-icon.png +0 -0
 - data/public/blockly/media/1x1.gif +0 -0
 - data/public/blockly/media/click.mp3 +0 -0
 - data/public/blockly/media/click.ogg +0 -0
 - data/public/blockly/media/click.wav +0 -0
 - data/public/blockly/media/delete.mp3 +0 -0
 - data/public/blockly/media/delete.ogg +0 -0
 - data/public/blockly/media/delete.wav +0 -0
 - data/public/blockly/media/handopen.cur +0 -0
 - data/public/blockly/media/quote0.png +0 -0
 - data/public/blockly/media/quote1.png +0 -0
 - data/public/browserconfig.xml +0 -0
 - data/public/fonts/FontAwesome.otf +0 -0
 - data/public/fonts/fontawesome-webfont.eot +0 -0
 - data/public/fonts/fontawesome-webfont.ttf +0 -0
 - data/public/fonts/fontawesome-webfont.woff +0 -0
 - data/public/large.png +0 -0
 - data/public/robots.txt +0 -0
 - data/public/smalruby/assets/ball1.png +0 -0
 - data/public/smalruby/assets/ball2.png +0 -0
 - data/public/smalruby/assets/ball3.png +0 -0
 - data/public/smalruby/assets/ball4.png +0 -0
 - data/public/smalruby/assets/ball5.png +0 -0
 - data/public/smalruby/assets/ball6.png +0 -0
 - data/public/smalruby/assets/car1.png +0 -0
 - data/public/smalruby/assets/car2.png +0 -0
 - data/public/smalruby/assets/car3.png +0 -0
 - data/public/smalruby/assets/car4.png +0 -0
 - data/public/smalruby/assets/cat1.png +0 -0
 - data/public/smalruby/assets/cat2.png +0 -0
 - data/public/smalruby/assets/cat3.png +0 -0
 - data/public/smalruby/assets/frog1.png +0 -0
 - data/public/smalruby/assets/piano_do.wav +0 -0
 - data/public/smalruby/assets/piano_do_2.wav +0 -0
 - data/public/smalruby/assets/piano_fa.wav +0 -0
 - data/public/smalruby/assets/piano_mi.wav +0 -0
 - data/public/smalruby/assets/piano_ra.wav +0 -0
 - data/public/smalruby/assets/piano_re.wav +0 -0
 - data/public/smalruby/assets/piano_si.wav +0 -0
 - data/public/smalruby/assets/piano_so.wav +0 -0
 - data/public/smalruby/assets/ryu1.png +0 -0
 - data/public/smalruby/assets/ryu2.png +0 -0
 - data/public/smalruby/assets/taichi1.png +0 -0
 - data/public/smalruby/assets/taichi2.png +0 -0
 - data/public/square.png +0 -0
 - data/public/tiny.png +0 -0
 - data/public/wide.png +0 -0
 - data/smalruby-editor.gemspec +2 -1
 - data/spec/acceptance/block_mode/blocks/character/new.feature +5 -5
 - data/spec/acceptance/block_mode/blocks/control/await.feature +2 -2
 - data/spec/acceptance/block_mode/blocks/control/await_until.feature +3 -3
 - data/spec/acceptance/block_mode/blocks/control/break.feature +0 -0
 - data/spec/acceptance/block_mode/blocks/control/if.feature +0 -0
 - data/spec/acceptance/block_mode/blocks/control/if_else.feature +0 -0
 - data/spec/acceptance/block_mode/blocks/control/loop.feature +0 -0
 - data/spec/acceptance/block_mode/blocks/control/next.feature +0 -0
 - data/spec/acceptance/block_mode/blocks/control/redo.feature +0 -0
 - data/spec/acceptance/block_mode/blocks/control/sleep.feature +0 -0
 - data/spec/acceptance/block_mode/blocks/control/times.feature +0 -0
 - data/spec/acceptance/block_mode/blocks/control/until.feature +0 -0
 - data/spec/acceptance/block_mode/blocks/events/on_click.feature +2 -2
 - data/spec/acceptance/block_mode/blocks/events/on_hit.feature +4 -4
 - data/spec/acceptance/block_mode/blocks/events/on_key_push_or_down.feature +4 -4
 - data/spec/acceptance/block_mode/blocks/events/on_start.feature +2 -2
 - data/spec/acceptance/block_mode/blocks/hardware/init_hardware.feature +1 -1
 - data/spec/acceptance/block_mode/blocks/hardware/led_turn_off.feature +2 -2
 - data/spec/acceptance/block_mode/blocks/hardware/led_turn_on.feature +2 -2
 - data/spec/acceptance/block_mode/blocks/hardware/motor_driver.feature +0 -0
 - data/spec/acceptance/block_mode/blocks/hardware/motor_driver_speed.feature +0 -0
 - data/spec/acceptance/block_mode/blocks/hardware/neo_pixel_set_rgb.feature +100 -0
 - data/spec/acceptance/block_mode/blocks/hardware/rgb_led_set_color.feature +0 -0
 - data/spec/acceptance/block_mode/blocks/hardware/rgb_led_turn_off.feature +0 -0
 - data/spec/acceptance/block_mode/blocks/hardware/sensor_value.feature +0 -0
 - data/spec/acceptance/block_mode/blocks/hardware/servo_set_position.feature +0 -0
 - data/spec/acceptance/block_mode/blocks/hardware/smalrubot_s1_action_with_sec.feature +1 -1
 - data/spec/acceptance/block_mode/blocks/hardware/smalrubot_s1_led_turn_on_or_off.feature +1 -1
 - data/spec/acceptance/block_mode/blocks/hardware/smalrubot_v3_action_with_sec.feature +1 -1
 - data/spec/acceptance/block_mode/blocks/hardware/two_wheel_drive_car.feature +0 -0
 - data/spec/acceptance/block_mode/blocks/hardware/two_wheel_drive_car_speed.feature +0 -0
 - data/spec/acceptance/block_mode/blocks/looks/hide.feature +2 -2
 - data/spec/acceptance/block_mode/blocks/looks/next_costume.feature +56 -0
 - data/spec/acceptance/block_mode/blocks/looks/say.feature +3 -3
 - data/spec/acceptance/block_mode/blocks/looks/show.feature +2 -2
 - data/spec/acceptance/block_mode/blocks/looks/vanish.feature +2 -2
 - data/spec/acceptance/block_mode/blocks/motion/change_x_by.feature +2 -2
 - data/spec/acceptance/block_mode/blocks/motion/change_y_by.feature +2 -2
 - data/spec/acceptance/block_mode/blocks/motion/move.feature +2 -2
 - data/spec/acceptance/block_mode/blocks/motion/reach_wall.feature +2 -2
 - data/spec/acceptance/block_mode/blocks/motion/rotate_left.feature +2 -2
 - data/spec/acceptance/block_mode/blocks/motion/rotate_right.feature +2 -2
 - data/spec/acceptance/block_mode/blocks/motion/self_angle.feature +2 -2
 - data/spec/acceptance/block_mode/blocks/motion/self_x.feature +2 -2
 - data/spec/acceptance/block_mode/blocks/motion/self_y.feature +2 -2
 - data/spec/acceptance/block_mode/blocks/motion/set_angle.feature +2 -2
 - data/spec/acceptance/block_mode/blocks/motion/set_x.feature +2 -2
 - data/spec/acceptance/block_mode/blocks/motion/set_x_y.feature +2 -2
 - data/spec/acceptance/block_mode/blocks/motion/set_y.feature +2 -2
 - data/spec/acceptance/block_mode/blocks/motion/turn.feature +2 -2
 - data/spec/acceptance/block_mode/blocks/motion/turn_if_reach_wall.feature +2 -2
 - data/spec/acceptance/block_mode/blocks/operators/and_or.feature +0 -0
 - data/spec/acceptance/block_mode/blocks/operators/four_arithmetic_and_compares.feature +0 -0
 - data/spec/acceptance/block_mode/blocks/operators/index_of.feature +0 -0
 - data/spec/acceptance/block_mode/blocks/operators/length.feature +0 -0
 - data/spec/acceptance/block_mode/blocks/operators/math_method.feature +0 -0
 - data/spec/acceptance/block_mode/blocks/operators/negate.feature +0 -0
 - data/spec/acceptance/block_mode/blocks/operators/rand.feature +0 -0
 - data/spec/acceptance/block_mode/blocks/operators/round.feature +0 -0
 - data/spec/acceptance/block_mode/blocks/operators/text.feature +0 -0
 - data/spec/acceptance/block_mode/blocks/operators/true_false.feature +0 -0
 - data/spec/acceptance/block_mode/blocks/ruby/expression.feature +0 -0
 - data/spec/acceptance/block_mode/blocks/ruby/p.feature +0 -0
 - data/spec/acceptance/block_mode/blocks/ruby/statement_comment.feature +0 -0
 - data/spec/acceptance/block_mode/blocks/sensing/character_property.feature +2 -2
 - data/spec/acceptance/block_mode/blocks/sensing/hit.feature +6 -6
 - data/spec/acceptance/block_mode/blocks/sensing/input_key_push_or_down.feature +0 -0
 - data/spec/acceptance/block_mode/blocks/sensing/input_mouse_pos_x.feature +0 -0
 - data/spec/acceptance/block_mode/blocks/sensing/input_mouse_pos_y.feature +0 -0
 - data/spec/acceptance/block_mode/blocks/sensing/input_mouse_push_or_down.feature +0 -0
 - data/spec/acceptance/block_mode/blocks/sensing/reach_wall.feature +2 -2
 - data/spec/acceptance/block_mode/blocks/sensing/time_now.feature +0 -0
 - data/spec/acceptance/block_mode/blocks/sound/play.feature +2 -2
 - data/spec/acceptance/block_mode/character_modal_view.feature +164 -0
 - data/spec/acceptance/block_mode/demo.feature +2 -2
 - data/spec/acceptance/block_mode/translate.feature +0 -0
 - data/spec/acceptance/readme.md +0 -0
 - data/spec/acceptance/ruby_mode/check.feature +0 -0
 - data/spec/acceptance/ruby_mode/load.feature +0 -0
 - data/spec/acceptance/ruby_mode/translate.feature +2 -2
 - data/spec/acceptance/standalone/preference.feature +8 -8
 - data/spec/acceptance/standalone/run.feature +0 -0
 - data/spec/acceptance/standalone/save.feature +1 -1
 - data/spec/acceptance/standalone/signin.feature +1 -1
 - data/spec/controllers/source_codes_controller_spec.rb +0 -0
 - data/spec/fixtures/files/01.rb +0 -0
 - data/spec/fixtures/files/01.rb.xml +0 -0
 - data/spec/fixtures/files/01_remix.rb +0 -0
 - data/spec/fixtures/files/01_remix02.rb +0 -0
 - data/spec/fixtures/files/01_remix10.rb.xml +0 -0
 - data/spec/fixtures/files/extra_car.png +0 -0
 - data/spec/fixtures/files/favicon.ico +0 -0
 - data/spec/helpers/editor_helper_spec.rb +0 -0
 - data/spec/javascripts/collections/character_set_spec.coffee +0 -0
 - data/spec/javascripts/models/character_spec.coffee +2 -14
 - data/spec/javascripts/models/scene_spec.coffee +0 -0
 - data/spec/javascripts/spec_helper.js +0 -0
 - data/spec/lib/smalruby_editor_spec.rb +0 -0
 - data/spec/models/concerns/ruby_to_block/block/character_method_call_spec.rb +0 -0
 - data/spec/models/concerns/ruby_to_block/block/character_spec.rb +71 -0
 - data/spec/models/concerns/ruby_to_block/block/control_if_spec.rb +0 -0
 - data/spec/models/concerns/ruby_to_block/block/control_loop_spec.rb +0 -0
 - data/spec/models/concerns/ruby_to_block/block/events_on_start_spec.rb +6 -6
 - data/spec/models/concerns/ruby_to_block/block/hardware__neo_pixel_spec.rb +77 -0
 - data/spec/models/concerns/ruby_to_block/block/looks_say_spec.rb +0 -0
 - data/spec/models/concerns/ruby_to_block/block/looks_spec.rb +26 -2
 - data/spec/models/concerns/ruby_to_block/block/motion_move_spec.rb +0 -0
 - data/spec/models/concerns/ruby_to_block/block/motion_spec.rb +0 -0
 - data/spec/models/concerns/ruby_to_block/block/motion_turn_spec.rb +0 -0
 - data/spec/models/concerns/ruby_to_block/block/motion_turn_xy_spec.rb +0 -0
 - data/spec/models/concerns/ruby_to_block/block/require_smalruby_spec.rb +0 -0
 - data/spec/models/concerns/ruby_to_block/block/ruby_comment_spec.rb +0 -0
 - data/spec/models/concerns/ruby_to_block/block/ruby_statement_spec.rb +0 -0
 - data/spec/models/concerns/ruby_to_block/block/sensing_reach_wall_spec.rb +0 -0
 - data/spec/models/concerns/ruby_to_block/block/shared/block_examples.rb +2 -2
 - data/spec/models/concerns/ruby_to_block/block/sound_spec.rb +0 -0
 - data/spec/models/concerns/ruby_to_block/block/text_spec.rb +0 -0
 - data/spec/models/concerns/ruby_to_block/block_spec.rb +0 -0
 - data/spec/models/concerns/ruby_to_block_spec.rb +0 -0
 - data/spec/spec_helper.rb +21 -10
 - data/spec/steps/block_mode_steps.rb +0 -0
 - data/spec/steps/fix_turnip.rb +0 -0
 - data/spec/steps/global_variable.rb +0 -0
 - data/spec/steps/standalone_steps.rb +3 -3
 - data/spec/steps/then_steps.rb +28 -0
 - data/spec/steps/when_steps.rb +15 -18
 - data/spec/support/capybara.rb +0 -0
 - data/spec/support/env.rb +0 -0
 - data/spec/support/ruby_to_block.rb +0 -0
 - data/spec/teaspoon_env.rb +0 -0
 - data/spec/turnip_helper.rb +0 -0
 - data/vendor/assets/javascripts/.keep +0 -0
 - data/vendor/assets/javascripts/jquery.blockUI.js +0 -0
 - data/vendor/assets/stylesheets/.keep +0 -0
 - metadata +56 -14
 - data/app/assets/javascripts/views/character_modal_view.js.coffee +0 -194
 
| 
         @@ -41,7 +41,7 @@ 
     | 
|
| 
       41 
41 
     | 
    
         
             
                """
         
     | 
| 
       42 
42 
     | 
    
         
             
                require "smalruby"
         
     | 
| 
       43 
43 
     | 
    
         | 
| 
       44 
     | 
    
         
            -
                car1 = Character.new(costume: "car1.png", x: 0, y: 0, angle: 0)
         
     | 
| 
      
 44 
     | 
    
         
            +
                car1 = Character.new(costume: "costume1:car1.png", x: 0, y: 0, angle: 0)
         
     | 
| 
       45 
45 
     | 
    
         
             
                car1.y += 10
         
     | 
| 
       46 
46 
     | 
    
         | 
| 
       47 
47 
     | 
    
         
             
                """
         
     | 
| 
         @@ -72,7 +72,7 @@ 
     | 
|
| 
       72 
72 
     | 
    
         
             
                """
         
     | 
| 
       73 
73 
     | 
    
         
             
                require "smalruby"
         
     | 
| 
       74 
74 
     | 
    
         | 
| 
       75 
     | 
    
         
            -
                car1 = Character.new(costume: "car1.png", x: 0, y: 0, angle: 0)
         
     | 
| 
      
 75 
     | 
    
         
            +
                car1 = Character.new(costume: "costume1:car1.png", x: 0, y: 0, angle: 0)
         
     | 
| 
       76 
76 
     | 
    
         | 
| 
       77 
77 
     | 
    
         
             
                car1.on(:start) do
         
     | 
| 
       78 
78 
     | 
    
         
             
                  self.y += 10
         
     | 
| 
         @@ -41,7 +41,7 @@ 
     | 
|
| 
       41 
41 
     | 
    
         
             
                """
         
     | 
| 
       42 
42 
     | 
    
         
             
                require "smalruby"
         
     | 
| 
       43 
43 
     | 
    
         | 
| 
       44 
     | 
    
         
            -
                car1 = Character.new(costume: "car1.png", x: 0, y: 0, angle: 0)
         
     | 
| 
      
 44 
     | 
    
         
            +
                car1 = Character.new(costume: "costume1:car1.png", x: 0, y: 0, angle: 0)
         
     | 
| 
       45 
45 
     | 
    
         
             
                car1.move(10)
         
     | 
| 
       46 
46 
     | 
    
         | 
| 
       47 
47 
     | 
    
         
             
                """
         
     | 
| 
         @@ -72,7 +72,7 @@ 
     | 
|
| 
       72 
72 
     | 
    
         
             
                """
         
     | 
| 
       73 
73 
     | 
    
         
             
                require "smalruby"
         
     | 
| 
       74 
74 
     | 
    
         | 
| 
       75 
     | 
    
         
            -
                car1 = Character.new(costume: "car1.png", x: 0, y: 0, angle: 0)
         
     | 
| 
      
 75 
     | 
    
         
            +
                car1 = Character.new(costume: "costume1:car1.png", x: 0, y: 0, angle: 0)
         
     | 
| 
       76 
76 
     | 
    
         | 
| 
       77 
77 
     | 
    
         
             
                car1.on(:start) do
         
     | 
| 
       78 
78 
     | 
    
         
             
                  move(10)
         
     | 
| 
         @@ -56,7 +56,7 @@ 
     | 
|
| 
       56 
56 
     | 
    
         
             
                """
         
     | 
| 
       57 
57 
     | 
    
         
             
                require "smalruby"
         
     | 
| 
       58 
58 
     | 
    
         | 
| 
       59 
     | 
    
         
            -
                car1 = Character.new(costume: "car1.png", x: 0, y: 0, angle: 0)
         
     | 
| 
      
 59 
     | 
    
         
            +
                car1 = Character.new(costume: "costume1:car1.png", x: 0, y: 0, angle: 0)
         
     | 
| 
       60 
60 
     | 
    
         
             
                if car1.reach_wall?
         
     | 
| 
       61 
61 
     | 
    
         | 
| 
       62 
62 
     | 
    
         
             
                end
         
     | 
| 
         @@ -87,7 +87,7 @@ 
     | 
|
| 
       87 
87 
     | 
    
         
             
                """
         
     | 
| 
       88 
88 
     | 
    
         
             
                require "smalruby"
         
     | 
| 
       89 
89 
     | 
    
         | 
| 
       90 
     | 
    
         
            -
                car1 = Character.new(costume: "car1.png", x: 0, y: 0, angle: 0)
         
     | 
| 
      
 90 
     | 
    
         
            +
                car1 = Character.new(costume: "costume1:car1.png", x: 0, y: 0, angle: 0)
         
     | 
| 
       91 
91 
     | 
    
         | 
| 
       92 
92 
     | 
    
         
             
                car1.on(:start) do
         
     | 
| 
       93 
93 
     | 
    
         
             
                  if reach_wall?
         
     | 
| 
         @@ -41,7 +41,7 @@ 
     | 
|
| 
       41 
41 
     | 
    
         
             
                """
         
     | 
| 
       42 
42 
     | 
    
         
             
                require "smalruby"
         
     | 
| 
       43 
43 
     | 
    
         | 
| 
       44 
     | 
    
         
            -
                car1 = Character.new(costume: "car1.png", x: 0, y: 0, angle: 0)
         
     | 
| 
      
 44 
     | 
    
         
            +
                car1 = Character.new(costume: "costume1:car1.png", x: 0, y: 0, angle: 0)
         
     | 
| 
       45 
45 
     | 
    
         
             
                car1.rotate(-15)
         
     | 
| 
       46 
46 
     | 
    
         | 
| 
       47 
47 
     | 
    
         
             
                """
         
     | 
| 
         @@ -72,7 +72,7 @@ 
     | 
|
| 
       72 
72 
     | 
    
         
             
                """
         
     | 
| 
       73 
73 
     | 
    
         
             
                require "smalruby"
         
     | 
| 
       74 
74 
     | 
    
         | 
| 
       75 
     | 
    
         
            -
                car1 = Character.new(costume: "car1.png", x: 0, y: 0, angle: 0)
         
     | 
| 
      
 75 
     | 
    
         
            +
                car1 = Character.new(costume: "costume1:car1.png", x: 0, y: 0, angle: 0)
         
     | 
| 
       76 
76 
     | 
    
         | 
| 
       77 
77 
     | 
    
         
             
                car1.on(:start) do
         
     | 
| 
       78 
78 
     | 
    
         
             
                  rotate(-15)
         
     | 
| 
         @@ -41,7 +41,7 @@ 
     | 
|
| 
       41 
41 
     | 
    
         
             
                """
         
     | 
| 
       42 
42 
     | 
    
         
             
                require "smalruby"
         
     | 
| 
       43 
43 
     | 
    
         | 
| 
       44 
     | 
    
         
            -
                car1 = Character.new(costume: "car1.png", x: 0, y: 0, angle: 0)
         
     | 
| 
      
 44 
     | 
    
         
            +
                car1 = Character.new(costume: "costume1:car1.png", x: 0, y: 0, angle: 0)
         
     | 
| 
       45 
45 
     | 
    
         
             
                car1.rotate(15)
         
     | 
| 
       46 
46 
     | 
    
         | 
| 
       47 
47 
     | 
    
         
             
                """
         
     | 
| 
         @@ -72,7 +72,7 @@ 
     | 
|
| 
       72 
72 
     | 
    
         
             
                """
         
     | 
| 
       73 
73 
     | 
    
         
             
                require "smalruby"
         
     | 
| 
       74 
74 
     | 
    
         | 
| 
       75 
     | 
    
         
            -
                car1 = Character.new(costume: "car1.png", x: 0, y: 0, angle: 0)
         
     | 
| 
      
 75 
     | 
    
         
            +
                car1 = Character.new(costume: "costume1:car1.png", x: 0, y: 0, angle: 0)
         
     | 
| 
       76 
76 
     | 
    
         | 
| 
       77 
77 
     | 
    
         
             
                car1.on(:start) do
         
     | 
| 
       78 
78 
     | 
    
         
             
                  rotate(15)
         
     | 
| 
         @@ -54,7 +54,7 @@ 
     | 
|
| 
       54 
54 
     | 
    
         
             
                """
         
     | 
| 
       55 
55 
     | 
    
         
             
                require "smalruby"
         
     | 
| 
       56 
56 
     | 
    
         | 
| 
       57 
     | 
    
         
            -
                car1 = Character.new(costume: "car1.png", x: 0, y: 0, angle: 0)
         
     | 
| 
      
 57 
     | 
    
         
            +
                car1 = Character.new(costume: "costume1:car1.png", x: 0, y: 0, angle: 0)
         
     | 
| 
       58 
58 
     | 
    
         
             
                p(car1.angle)
         
     | 
| 
       59 
59 
     | 
    
         | 
| 
       60 
60 
     | 
    
         
             
                """
         
     | 
| 
         @@ -83,7 +83,7 @@ 
     | 
|
| 
       83 
83 
     | 
    
         
             
                """
         
     | 
| 
       84 
84 
     | 
    
         
             
                require "smalruby"
         
     | 
| 
       85 
85 
     | 
    
         | 
| 
       86 
     | 
    
         
            -
                car1 = Character.new(costume: "car1.png", x: 0, y: 0, angle: 0)
         
     | 
| 
      
 86 
     | 
    
         
            +
                car1 = Character.new(costume: "costume1:car1.png", x: 0, y: 0, angle: 0)
         
     | 
| 
       87 
87 
     | 
    
         | 
| 
       88 
88 
     | 
    
         
             
                car1.on(:start) do
         
     | 
| 
       89 
89 
     | 
    
         
             
                  p(angle)
         
     | 
| 
         @@ -54,7 +54,7 @@ 
     | 
|
| 
       54 
54 
     | 
    
         
             
                """
         
     | 
| 
       55 
55 
     | 
    
         
             
                require "smalruby"
         
     | 
| 
       56 
56 
     | 
    
         | 
| 
       57 
     | 
    
         
            -
                car1 = Character.new(costume: "car1.png", x: 0, y: 0, angle: 0)
         
     | 
| 
      
 57 
     | 
    
         
            +
                car1 = Character.new(costume: "costume1:car1.png", x: 0, y: 0, angle: 0)
         
     | 
| 
       58 
58 
     | 
    
         
             
                p(car1.x)
         
     | 
| 
       59 
59 
     | 
    
         | 
| 
       60 
60 
     | 
    
         
             
                """
         
     | 
| 
         @@ -83,7 +83,7 @@ 
     | 
|
| 
       83 
83 
     | 
    
         
             
                """
         
     | 
| 
       84 
84 
     | 
    
         
             
                require "smalruby"
         
     | 
| 
       85 
85 
     | 
    
         | 
| 
       86 
     | 
    
         
            -
                car1 = Character.new(costume: "car1.png", x: 0, y: 0, angle: 0)
         
     | 
| 
      
 86 
     | 
    
         
            +
                car1 = Character.new(costume: "costume1:car1.png", x: 0, y: 0, angle: 0)
         
     | 
| 
       87 
87 
     | 
    
         | 
| 
       88 
88 
     | 
    
         
             
                car1.on(:start) do
         
     | 
| 
       89 
89 
     | 
    
         
             
                  p(x)
         
     | 
| 
         @@ -54,7 +54,7 @@ 
     | 
|
| 
       54 
54 
     | 
    
         
             
                """
         
     | 
| 
       55 
55 
     | 
    
         
             
                require "smalruby"
         
     | 
| 
       56 
56 
     | 
    
         | 
| 
       57 
     | 
    
         
            -
                car1 = Character.new(costume: "car1.png", x: 0, y: 0, angle: 0)
         
     | 
| 
      
 57 
     | 
    
         
            +
                car1 = Character.new(costume: "costume1:car1.png", x: 0, y: 0, angle: 0)
         
     | 
| 
       58 
58 
     | 
    
         
             
                p(car1.y)
         
     | 
| 
       59 
59 
     | 
    
         | 
| 
       60 
60 
     | 
    
         
             
                """
         
     | 
| 
         @@ -83,7 +83,7 @@ 
     | 
|
| 
       83 
83 
     | 
    
         
             
                """
         
     | 
| 
       84 
84 
     | 
    
         
             
                require "smalruby"
         
     | 
| 
       85 
85 
     | 
    
         | 
| 
       86 
     | 
    
         
            -
                car1 = Character.new(costume: "car1.png", x: 0, y: 0, angle: 0)
         
     | 
| 
      
 86 
     | 
    
         
            +
                car1 = Character.new(costume: "costume1:car1.png", x: 0, y: 0, angle: 0)
         
     | 
| 
       87 
87 
     | 
    
         | 
| 
       88 
88 
     | 
    
         
             
                car1.on(:start) do
         
     | 
| 
       89 
89 
     | 
    
         
             
                  p(y)
         
     | 
| 
         @@ -41,7 +41,7 @@ 
     | 
|
| 
       41 
41 
     | 
    
         
             
                """
         
     | 
| 
       42 
42 
     | 
    
         
             
                require "smalruby"
         
     | 
| 
       43 
43 
     | 
    
         | 
| 
       44 
     | 
    
         
            -
                car1 = Character.new(costume: "car1.png", x: 0, y: 0, angle: 0)
         
     | 
| 
      
 44 
     | 
    
         
            +
                car1 = Character.new(costume: "costume1:car1.png", x: 0, y: 0, angle: 0)
         
     | 
| 
       45 
45 
     | 
    
         
             
                car1.angle = 90
         
     | 
| 
       46 
46 
     | 
    
         | 
| 
       47 
47 
     | 
    
         
             
                """
         
     | 
| 
         @@ -72,7 +72,7 @@ 
     | 
|
| 
       72 
72 
     | 
    
         
             
                """
         
     | 
| 
       73 
73 
     | 
    
         
             
                require "smalruby"
         
     | 
| 
       74 
74 
     | 
    
         | 
| 
       75 
     | 
    
         
            -
                car1 = Character.new(costume: "car1.png", x: 0, y: 0, angle: 0)
         
     | 
| 
      
 75 
     | 
    
         
            +
                car1 = Character.new(costume: "costume1:car1.png", x: 0, y: 0, angle: 0)
         
     | 
| 
       76 
76 
     | 
    
         | 
| 
       77 
77 
     | 
    
         
             
                car1.on(:start) do
         
     | 
| 
       78 
78 
     | 
    
         
             
                  self.angle = 90
         
     | 
| 
         @@ -41,7 +41,7 @@ 
     | 
|
| 
       41 
41 
     | 
    
         
             
                """
         
     | 
| 
       42 
42 
     | 
    
         
             
                require "smalruby"
         
     | 
| 
       43 
43 
     | 
    
         | 
| 
       44 
     | 
    
         
            -
                car1 = Character.new(costume: "car1.png", x: 0, y: 0, angle: 0)
         
     | 
| 
      
 44 
     | 
    
         
            +
                car1 = Character.new(costume: "costume1:car1.png", x: 0, y: 0, angle: 0)
         
     | 
| 
       45 
45 
     | 
    
         
             
                car1.x = 10
         
     | 
| 
       46 
46 
     | 
    
         | 
| 
       47 
47 
     | 
    
         
             
                """
         
     | 
| 
         @@ -72,7 +72,7 @@ 
     | 
|
| 
       72 
72 
     | 
    
         
             
                """
         
     | 
| 
       73 
73 
     | 
    
         
             
                require "smalruby"
         
     | 
| 
       74 
74 
     | 
    
         | 
| 
       75 
     | 
    
         
            -
                car1 = Character.new(costume: "car1.png", x: 0, y: 0, angle: 0)
         
     | 
| 
      
 75 
     | 
    
         
            +
                car1 = Character.new(costume: "costume1:car1.png", x: 0, y: 0, angle: 0)
         
     | 
| 
       76 
76 
     | 
    
         | 
| 
       77 
77 
     | 
    
         
             
                car1.on(:start) do
         
     | 
| 
       78 
78 
     | 
    
         
             
                  self.x = 10
         
     | 
| 
         @@ -49,7 +49,7 @@ 
     | 
|
| 
       49 
49 
     | 
    
         
             
                """
         
     | 
| 
       50 
50 
     | 
    
         
             
                require "smalruby"
         
     | 
| 
       51 
51 
     | 
    
         | 
| 
       52 
     | 
    
         
            -
                car1 = Character.new(costume: "car1.png", x: 0, y: 0, angle: 0)
         
     | 
| 
      
 52 
     | 
    
         
            +
                car1 = Character.new(costume: "costume1:car1.png", x: 0, y: 0, angle: 0)
         
     | 
| 
       53 
53 
     | 
    
         
             
                car1.position = [200, 100]
         
     | 
| 
       54 
54 
     | 
    
         | 
| 
       55 
55 
     | 
    
         
             
                """
         
     | 
| 
         @@ -84,7 +84,7 @@ 
     | 
|
| 
       84 
84 
     | 
    
         
             
                """
         
     | 
| 
       85 
85 
     | 
    
         
             
                require "smalruby"
         
     | 
| 
       86 
86 
     | 
    
         | 
| 
       87 
     | 
    
         
            -
                car1 = Character.new(costume: "car1.png", x: 0, y: 0, angle: 0)
         
     | 
| 
      
 87 
     | 
    
         
            +
                car1 = Character.new(costume: "costume1:car1.png", x: 0, y: 0, angle: 0)
         
     | 
| 
       88 
88 
     | 
    
         | 
| 
       89 
89 
     | 
    
         
             
                car1.on(:start) do
         
     | 
| 
       90 
90 
     | 
    
         
             
                  self.position = [200, 100]
         
     | 
| 
         @@ -41,7 +41,7 @@ 
     | 
|
| 
       41 
41 
     | 
    
         
             
                """
         
     | 
| 
       42 
42 
     | 
    
         
             
                require "smalruby"
         
     | 
| 
       43 
43 
     | 
    
         | 
| 
       44 
     | 
    
         
            -
                car1 = Character.new(costume: "car1.png", x: 0, y: 0, angle: 0)
         
     | 
| 
      
 44 
     | 
    
         
            +
                car1 = Character.new(costume: "costume1:car1.png", x: 0, y: 0, angle: 0)
         
     | 
| 
       45 
45 
     | 
    
         
             
                car1.y = 10
         
     | 
| 
       46 
46 
     | 
    
         | 
| 
       47 
47 
     | 
    
         
             
                """
         
     | 
| 
         @@ -72,7 +72,7 @@ 
     | 
|
| 
       72 
72 
     | 
    
         
             
                """
         
     | 
| 
       73 
73 
     | 
    
         
             
                require "smalruby"
         
     | 
| 
       74 
74 
     | 
    
         | 
| 
       75 
     | 
    
         
            -
                car1 = Character.new(costume: "car1.png", x: 0, y: 0, angle: 0)
         
     | 
| 
      
 75 
     | 
    
         
            +
                car1 = Character.new(costume: "costume1:car1.png", x: 0, y: 0, angle: 0)
         
     | 
| 
       76 
76 
     | 
    
         | 
| 
       77 
77 
     | 
    
         
             
                car1.on(:start) do
         
     | 
| 
       78 
78 
     | 
    
         
             
                  self.y = 10
         
     | 
| 
         @@ -33,7 +33,7 @@ 
     | 
|
| 
       33 
33 
     | 
    
         
             
                """
         
     | 
| 
       34 
34 
     | 
    
         
             
                require "smalruby"
         
     | 
| 
       35 
35 
     | 
    
         | 
| 
       36 
     | 
    
         
            -
                car1 = Character.new(costume: "car1.png", x: 0, y: 0, angle: 0)
         
     | 
| 
      
 36 
     | 
    
         
            +
                car1 = Character.new(costume: "costume1:car1.png", x: 0, y: 0, angle: 0)
         
     | 
| 
       37 
37 
     | 
    
         
             
                car1.turn
         
     | 
| 
       38 
38 
     | 
    
         | 
| 
       39 
39 
     | 
    
         
             
                """
         
     | 
| 
         @@ -60,7 +60,7 @@ 
     | 
|
| 
       60 
60 
     | 
    
         
             
                """
         
     | 
| 
       61 
61 
     | 
    
         
             
                require "smalruby"
         
     | 
| 
       62 
62 
     | 
    
         | 
| 
       63 
     | 
    
         
            -
                car1 = Character.new(costume: "car1.png", x: 0, y: 0, angle: 0)
         
     | 
| 
      
 63 
     | 
    
         
            +
                car1 = Character.new(costume: "costume1:car1.png", x: 0, y: 0, angle: 0)
         
     | 
| 
       64 
64 
     | 
    
         | 
| 
       65 
65 
     | 
    
         
             
                car1.on(:start) do
         
     | 
| 
       66 
66 
     | 
    
         
             
                  turn
         
     | 
| 
         @@ -33,7 +33,7 @@ 
     | 
|
| 
       33 
33 
     | 
    
         
             
                """
         
     | 
| 
       34 
34 
     | 
    
         
             
                require "smalruby"
         
     | 
| 
       35 
35 
     | 
    
         | 
| 
       36 
     | 
    
         
            -
                car1 = Character.new(costume: "car1.png", x: 0, y: 0, angle: 0)
         
     | 
| 
      
 36 
     | 
    
         
            +
                car1 = Character.new(costume: "costume1:car1.png", x: 0, y: 0, angle: 0)
         
     | 
| 
       37 
37 
     | 
    
         
             
                car1.turn_if_reach_wall
         
     | 
| 
       38 
38 
     | 
    
         | 
| 
       39 
39 
     | 
    
         
             
                """
         
     | 
| 
         @@ -60,7 +60,7 @@ 
     | 
|
| 
       60 
60 
     | 
    
         
             
                """
         
     | 
| 
       61 
61 
     | 
    
         
             
                require "smalruby"
         
     | 
| 
       62 
62 
     | 
    
         | 
| 
       63 
     | 
    
         
            -
                car1 = Character.new(costume: "car1.png", x: 0, y: 0, angle: 0)
         
     | 
| 
      
 63 
     | 
    
         
            +
                car1 = Character.new(costume: "costume1:car1.png", x: 0, y: 0, angle: 0)
         
     | 
| 
       64 
64 
     | 
    
         | 
| 
       65 
65 
     | 
    
         
             
                car1.on(:start) do
         
     | 
| 
       66 
66 
     | 
    
         
             
                  turn_if_reach_wall
         
     | 
| 
         
            File without changes
         
     | 
| 
         
            File without changes
         
     | 
| 
         
            File without changes
         
     | 
| 
         
            File without changes
         
     | 
| 
         
            File without changes
         
     | 
| 
         
            File without changes
         
     | 
| 
         
            File without changes
         
     | 
| 
         
            File without changes
         
     | 
| 
         
            File without changes
         
     | 
| 
         
            File without changes
         
     | 
| 
         
            File without changes
         
     | 
| 
         
            File without changes
         
     | 
| 
         
            File without changes
         
     | 
| 
         @@ -72,7 +72,7 @@ 
     | 
|
| 
       72 
72 
     | 
    
         
             
                """
         
     | 
| 
       73 
73 
     | 
    
         
             
                require "smalruby"
         
     | 
| 
       74 
74 
     | 
    
         | 
| 
       75 
     | 
    
         
            -
                car1 = Character.new(costume: "car1.png", x: 0, y: 0, angle: 0)
         
     | 
| 
      
 75 
     | 
    
         
            +
                car1 = Character.new(costume: "costume1:car1.png", x: 0, y: 0, angle: 0)
         
     | 
| 
       76 
76 
     | 
    
         
             
                p(car1.x)
         
     | 
| 
       77 
77 
     | 
    
         | 
| 
       78 
78 
     | 
    
         
             
                """
         
     | 
| 
         @@ -105,7 +105,7 @@ 
     | 
|
| 
       105 
105 
     | 
    
         
             
                """
         
     | 
| 
       106 
106 
     | 
    
         
             
                require "smalruby"
         
     | 
| 
       107 
107 
     | 
    
         | 
| 
       108 
     | 
    
         
            -
                car1 = Character.new(costume: "car1.png", x: 0, y: 0, angle: 0)
         
     | 
| 
      
 108 
     | 
    
         
            +
                car1 = Character.new(costume: "costume1:car1.png", x: 0, y: 0, angle: 0)
         
     | 
| 
       109 
109 
     | 
    
         | 
| 
       110 
110 
     | 
    
         
             
                car1.on(:start) do
         
     | 
| 
       111 
111 
     | 
    
         
             
                  p(x)
         
     | 
| 
         @@ -73,8 +73,8 @@ 
     | 
|
| 
       73 
73 
     | 
    
         
             
                  """
         
     | 
| 
       74 
74 
     | 
    
         
             
                  require "smalruby"
         
     | 
| 
       75 
75 
     | 
    
         | 
| 
       76 
     | 
    
         
            -
                  car1 = Character.new(costume: "car1.png", x: 0, y: 0, angle: 0)
         
     | 
| 
       77 
     | 
    
         
            -
                  car2 = Character.new(costume: "car2.png", x: 0, y: 0, angle: 0)
         
     | 
| 
      
 76 
     | 
    
         
            +
                  car1 = Character.new(costume: "costume1:car1.png", x: 0, y: 0, angle: 0)
         
     | 
| 
      
 77 
     | 
    
         
            +
                  car2 = Character.new(costume: "costume1:car2.png", x: 0, y: 0, angle: 0)
         
     | 
| 
       78 
78 
     | 
    
         
             
                  p(car1.hit?(car2))
         
     | 
| 
       79 
79 
     | 
    
         | 
| 
       80 
80 
     | 
    
         
             
                  """
         
     | 
| 
         @@ -110,8 +110,8 @@ 
     | 
|
| 
       110 
110 
     | 
    
         
             
                  """
         
     | 
| 
       111 
111 
     | 
    
         
             
                  require "smalruby"
         
     | 
| 
       112 
112 
     | 
    
         | 
| 
       113 
     | 
    
         
            -
                  car1 = Character.new(costume: "car1.png", x: 0, y: 0, angle: 0)
         
     | 
| 
       114 
     | 
    
         
            -
                  car2 = Character.new(costume: "car2.png", x: 0, y: 0, angle: 0)
         
     | 
| 
      
 113 
     | 
    
         
            +
                  car1 = Character.new(costume: "costume1:car1.png", x: 0, y: 0, angle: 0)
         
     | 
| 
      
 114 
     | 
    
         
            +
                  car2 = Character.new(costume: "costume1:car2.png", x: 0, y: 0, angle: 0)
         
     | 
| 
       115 
115 
     | 
    
         | 
| 
       116 
116 
     | 
    
         
             
                  car1.on(:start) do
         
     | 
| 
       117 
117 
     | 
    
         
             
                    p(hit?(car2))
         
     | 
| 
         @@ -146,8 +146,8 @@ 
     | 
|
| 
       146 
146 
     | 
    
         
             
                  """
         
     | 
| 
       147 
147 
     | 
    
         
             
                  require "smalruby"
         
     | 
| 
       148 
148 
     | 
    
         | 
| 
       149 
     | 
    
         
            -
                  car1 = Character.new(costume: "car1.png", x: 0, y: 0, angle: 0)
         
     | 
| 
       150 
     | 
    
         
            -
                  car2 = Character.new(costume: "car2.png", x: 0, y: 0, angle: 0)
         
     | 
| 
      
 149 
     | 
    
         
            +
                  car1 = Character.new(costume: "costume1:car1.png", x: 0, y: 0, angle: 0)
         
     | 
| 
      
 150 
     | 
    
         
            +
                  car2 = Character.new(costume: "costume1:car2.png", x: 0, y: 0, angle: 0)
         
     | 
| 
       151 
151 
     | 
    
         | 
| 
       152 
152 
     | 
    
         
             
                  car1.on(:start) do
         
     | 
| 
       153 
153 
     | 
    
         
             
                    p(hit?(car2))
         
     | 
| 
         
            File without changes
         
     | 
| 
         
            File without changes
         
     | 
| 
         
            File without changes
         
     | 
| 
         
            File without changes
         
     | 
| 
         @@ -56,7 +56,7 @@ 
     | 
|
| 
       56 
56 
     | 
    
         
             
                """
         
     | 
| 
       57 
57 
     | 
    
         
             
                require "smalruby"
         
     | 
| 
       58 
58 
     | 
    
         | 
| 
       59 
     | 
    
         
            -
                car1 = Character.new(costume: "car1.png", x: 0, y: 0, angle: 0)
         
     | 
| 
      
 59 
     | 
    
         
            +
                car1 = Character.new(costume: "costume1:car1.png", x: 0, y: 0, angle: 0)
         
     | 
| 
       60 
60 
     | 
    
         
             
                if car1.reach_wall?
         
     | 
| 
       61 
61 
     | 
    
         | 
| 
       62 
62 
     | 
    
         
             
                end
         
     | 
| 
         @@ -87,7 +87,7 @@ 
     | 
|
| 
       87 
87 
     | 
    
         
             
                """
         
     | 
| 
       88 
88 
     | 
    
         
             
                require "smalruby"
         
     | 
| 
       89 
89 
     | 
    
         | 
| 
       90 
     | 
    
         
            -
                car1 = Character.new(costume: "car1.png", x: 0, y: 0, angle: 0)
         
     | 
| 
      
 90 
     | 
    
         
            +
                car1 = Character.new(costume: "costume1:car1.png", x: 0, y: 0, angle: 0)
         
     | 
| 
       91 
91 
     | 
    
         | 
| 
       92 
92 
     | 
    
         
             
                car1.on(:start) do
         
     | 
| 
       93 
93 
     | 
    
         
             
                  if reach_wall?
         
     | 
| 
         
            File without changes
         
     | 
| 
         @@ -41,7 +41,7 @@ 
     | 
|
| 
       41 
41 
     | 
    
         
             
                """
         
     | 
| 
       42 
42 
     | 
    
         
             
                require "smalruby"
         
     | 
| 
       43 
43 
     | 
    
         | 
| 
       44 
     | 
    
         
            -
                car1 = Character.new(costume: "car1.png", x: 0, y: 0, angle: 0)
         
     | 
| 
      
 44 
     | 
    
         
            +
                car1 = Character.new(costume: "costume1:car1.png", x: 0, y: 0, angle: 0)
         
     | 
| 
       45 
45 
     | 
    
         
             
                car1.play(name: "piano_do.wav")
         
     | 
| 
       46 
46 
     | 
    
         | 
| 
       47 
47 
     | 
    
         
             
                """
         
     | 
| 
         @@ -72,7 +72,7 @@ 
     | 
|
| 
       72 
72 
     | 
    
         
             
                """
         
     | 
| 
       73 
73 
     | 
    
         
             
                require "smalruby"
         
     | 
| 
       74 
74 
     | 
    
         | 
| 
       75 
     | 
    
         
            -
                car1 = Character.new(costume: "car1.png", x: 0, y: 0, angle: 0)
         
     | 
| 
      
 75 
     | 
    
         
            +
                car1 = Character.new(costume: "costume1:car1.png", x: 0, y: 0, angle: 0)
         
     | 
| 
       76 
76 
     | 
    
         | 
| 
       77 
77 
     | 
    
         
             
                car1.on(:start) do
         
     | 
| 
       78 
78 
     | 
    
         
             
                  play(name: "piano_do.wav")
         
     | 
| 
         @@ -0,0 +1,164 @@ 
     | 
|
| 
      
 1 
     | 
    
         
            +
            # encoding: utf-8
         
     | 
| 
      
 2 
     | 
    
         
            +
            # language: ja
         
     | 
| 
      
 3 
     | 
    
         
            +
            @javascript
         
     | 
| 
      
 4 
     | 
    
         
            +
            @standalone
         
     | 
| 
      
 5 
     | 
    
         
            +
            @open_on_error
         
     | 
| 
      
 6 
     | 
    
         
            +
            機能: Character Dialog - キャラクターダイアログ
         
     | 
| 
      
 7 
     | 
    
         
            +
              背景:
         
     | 
| 
      
 8 
     | 
    
         
            +
                前提 '/' にアクセスする
         
     | 
| 
      
 9 
     | 
    
         
            +
                かつ ログインする
         
     | 
| 
      
 10 
     | 
    
         
            +
                かつ '#add-character-button' をクリックする
         
     | 
| 
      
 11 
     | 
    
         
            +
                かつ JavaScriptによる処理が終わるまで待つ
         
     | 
| 
      
 12 
     | 
    
         
            +
             
     | 
| 
      
 13 
     | 
    
         
            +
                ならば '#character-modal' が表示されていること
         
     | 
| 
      
 14 
     | 
    
         
            +
             
     | 
| 
      
 15 
     | 
    
         
            +
              シナリオ: キャラクターの一覧を表示する
         
     | 
| 
      
 16 
     | 
    
         
            +
                ならば '.thumbnails' が表示されていること
         
     | 
| 
      
 17 
     | 
    
         
            +
                かつ '.thumbnails' に次の要素が表示されていること:
         
     | 
| 
      
 18 
     | 
    
         
            +
                  | selecter                                                   |
         
     | 
| 
      
 19 
     | 
    
         
            +
                  | img[alt="car1.png"][src="/smalruby/assets/car1.png"]       |
         
     | 
| 
      
 20 
     | 
    
         
            +
                  | img[alt="car2.png"][src="/smalruby/assets/car2.png"]       |
         
     | 
| 
      
 21 
     | 
    
         
            +
                  | img[alt="car3.png"][src="/smalruby/assets/car3.png"]       |
         
     | 
| 
      
 22 
     | 
    
         
            +
                  | img[alt="car4.png"][src="/smalruby/assets/car4.png"]       |
         
     | 
| 
      
 23 
     | 
    
         
            +
                  | img[alt="cat1.png"][src="/smalruby/assets/cat1.png"]       |
         
     | 
| 
      
 24 
     | 
    
         
            +
                  | img[alt="cat2.png"][src="/smalruby/assets/cat2.png"]       |
         
     | 
| 
      
 25 
     | 
    
         
            +
                  | img[alt="cat3.png"][src="/smalruby/assets/cat3.png"]       |
         
     | 
| 
      
 26 
     | 
    
         
            +
                  | img[alt="ball1.png"][src="/smalruby/assets/ball1.png"]     |
         
     | 
| 
      
 27 
     | 
    
         
            +
                  | img[alt="ball2.png"][src="/smalruby/assets/ball2.png"]     |
         
     | 
| 
      
 28 
     | 
    
         
            +
                  | img[alt="ball3.png"][src="/smalruby/assets/ball3.png"]     |
         
     | 
| 
      
 29 
     | 
    
         
            +
                  | img[alt="ball4.png"][src="/smalruby/assets/ball4.png"]     |
         
     | 
| 
      
 30 
     | 
    
         
            +
                  | img[alt="ryu1.png"][src="/smalruby/assets/ryu1.png"]       |
         
     | 
| 
      
 31 
     | 
    
         
            +
                  | img[alt="ryu2.png"][src="/smalruby/assets/ryu2.png"]       |
         
     | 
| 
      
 32 
     | 
    
         
            +
                  | img[alt="taichi1.png"][src="/smalruby/assets/taichi1.png"] |
         
     | 
| 
      
 33 
     | 
    
         
            +
                  | img[alt="taichi2.png"][src="/smalruby/assets/taichi2.png"] |
         
     | 
| 
      
 34 
     | 
    
         
            +
             
     | 
| 
      
 35 
     | 
    
         
            +
                かつ '.thumbnails a.active img[alt="car1.png"]' が表示されていること
         
     | 
| 
      
 36 
     | 
    
         
            +
             
     | 
| 
      
 37 
     | 
    
         
            +
                かつ '#character-modal-costume-set .item:nth-child(1) .name' に文字 'costume1' が表示されていること
         
     | 
| 
      
 38 
     | 
    
         
            +
                かつ '#character-modal-costume-set .item:nth-child(1) .attributes' に文字 '1' が表示されていること
         
     | 
| 
      
 39 
     | 
    
         
            +
                かつ '#character-modal-costume-set .item:nth-child(1) a.remove-button' が表示されていないこと
         
     | 
| 
      
 40 
     | 
    
         
            +
             
     | 
| 
      
 41 
     | 
    
         
            +
                かつ 'costume[name]' フィールドの値が "costume1" であること
         
     | 
| 
      
 42 
     | 
    
         
            +
             
     | 
| 
      
 43 
     | 
    
         
            +
              シナリオ: キャラクターのコスチュームを変更する
         
     | 
| 
      
 44 
     | 
    
         
            +
                もし '.thumbnails li a img[src="/smalruby/assets/ryu1.png"]' をクリックする
         
     | 
| 
      
 45 
     | 
    
         
            +
                かつ '#character-modal-ok-button' をクリックする
         
     | 
| 
      
 46 
     | 
    
         
            +
                かつ JavaScriptによる処理が終わるまで待つ
         
     | 
| 
      
 47 
     | 
    
         
            +
             
     | 
| 
      
 48 
     | 
    
         
            +
                ならば '#character-selector-character-set .item:nth-child(1) .item-info .name' に文字 'ryu1' が表示されていること
         
     | 
| 
      
 49 
     | 
    
         
            +
                かつ '#character-selector-character-set .item:nth-child(1)' に 'img[src="/smalruby/assets/ryu1.png"]' が表示されていること
         
     | 
| 
      
 50 
     | 
    
         
            +
             
     | 
| 
      
 51 
     | 
    
         
            +
                もし '#character-selector-character-set .item:nth-child(1) a.character' をクリックする
         
     | 
| 
      
 52 
     | 
    
         
            +
                かつ JavaScriptによる処理が終わるまで待つ
         
     | 
| 
      
 53 
     | 
    
         
            +
             
     | 
| 
      
 54 
     | 
    
         
            +
                ならば '#character-modal' が表示されていること
         
     | 
| 
      
 55 
     | 
    
         
            +
                かつ '.thumbnails a.active img[alt="ryu1.png"]' が表示されていること
         
     | 
| 
      
 56 
     | 
    
         
            +
                かつ 'costume[name]' フィールドの値が "costume1" であること
         
     | 
| 
      
 57 
     | 
    
         
            +
             
     | 
| 
      
 58 
     | 
    
         
            +
              シナリオ: キャラクターのコスチュームを追加・削除する
         
     | 
| 
      
 59 
     | 
    
         
            +
                もし '#character-modal-add-costume-button' をクリックする
         
     | 
| 
      
 60 
     | 
    
         
            +
             
     | 
| 
      
 61 
     | 
    
         
            +
                ならば '#character-modal-costume-set .item:nth-child(1) .name' に文字 'costume1' が表示されていること
         
     | 
| 
      
 62 
     | 
    
         
            +
                かつ '#character-modal-costume-set .item:nth-child(1) .attributes' に文字 '1' が表示されていること
         
     | 
| 
      
 63 
     | 
    
         
            +
                かつ '#character-modal-costume-set .item:nth-child(1) a.remove-button' が表示されていること
         
     | 
| 
      
 64 
     | 
    
         
            +
                かつ '#character-modal-costume-set .item:nth-child(2) .name' に文字 'costume2' が表示されていること
         
     | 
| 
      
 65 
     | 
    
         
            +
                かつ '#character-modal-costume-set .item:nth-child(2) .attributes' に文字 '2' が表示されていること
         
     | 
| 
      
 66 
     | 
    
         
            +
                かつ '#character-modal-costume-set .item:nth-child(2) a.remove-button' が表示されていること
         
     | 
| 
      
 67 
     | 
    
         
            +
                かつ 'costume[name]' フィールドの値が "costume2" であること
         
     | 
| 
      
 68 
     | 
    
         
            +
                かつ '.thumbnails a.active img[alt="car1.png"]' が表示されていること
         
     | 
| 
      
 69 
     | 
    
         
            +
             
     | 
| 
      
 70 
     | 
    
         
            +
                もし '.thumbnails li a img[src="/smalruby/assets/ryu1.png"]' をクリックする
         
     | 
| 
      
 71 
     | 
    
         
            +
             
     | 
| 
      
 72 
     | 
    
         
            +
                ならば '.thumbnails a.active img[alt="ryu1.png"]' が表示されていること
         
     | 
| 
      
 73 
     | 
    
         
            +
             
     | 
| 
      
 74 
     | 
    
         
            +
                もし '#character-modal-add-costume-button' をクリックする
         
     | 
| 
      
 75 
     | 
    
         
            +
             
     | 
| 
      
 76 
     | 
    
         
            +
                ならば '#character-modal-costume-set .item:nth-child(1) .name' に文字 'costume1' が表示されていること
         
     | 
| 
      
 77 
     | 
    
         
            +
                かつ '#character-modal-costume-set .item:nth-child(1) .attributes' に文字 '1' が表示されていること
         
     | 
| 
      
 78 
     | 
    
         
            +
                かつ '#character-modal-costume-set .item:nth-child(1) a.remove-button' が表示されていること
         
     | 
| 
      
 79 
     | 
    
         
            +
                かつ '#character-modal-costume-set .item:nth-child(2) .name' に文字 'costume2' が表示されていること
         
     | 
| 
      
 80 
     | 
    
         
            +
                かつ '#character-modal-costume-set .item:nth-child(2) .attributes' に文字 '2' が表示されていること
         
     | 
| 
      
 81 
     | 
    
         
            +
                かつ '#character-modal-costume-set .item:nth-child(2) a.remove-button' が表示されていること
         
     | 
| 
      
 82 
     | 
    
         
            +
                かつ '#character-modal-costume-set .item:nth-child(3) .name' に文字 'costume3' が表示されていること
         
     | 
| 
      
 83 
     | 
    
         
            +
                かつ '#character-modal-costume-set .item:nth-child(3) .attributes' に文字 '3' が表示されていること
         
     | 
| 
      
 84 
     | 
    
         
            +
                かつ '#character-modal-costume-set .item:nth-child(3) a.remove-button' が表示されていること
         
     | 
| 
      
 85 
     | 
    
         
            +
                かつ 'costume[name]' フィールドの値が "costume3" であること
         
     | 
| 
      
 86 
     | 
    
         
            +
                かつ '.thumbnails a.active img[alt="ryu1.png"]' が表示されていること
         
     | 
| 
      
 87 
     | 
    
         
            +
             
     | 
| 
      
 88 
     | 
    
         
            +
                もし '#character-modal-ok-button' をクリックする
         
     | 
| 
      
 89 
     | 
    
         
            +
                かつ JavaScriptによる処理が終わるまで待つ
         
     | 
| 
      
 90 
     | 
    
         
            +
                かつ '#character-selector-character-set .item:nth-child(1) a.character' をクリックする
         
     | 
| 
      
 91 
     | 
    
         
            +
                かつ JavaScriptによる処理が終わるまで待つ
         
     | 
| 
      
 92 
     | 
    
         
            +
             
     | 
| 
      
 93 
     | 
    
         
            +
                ならば '#character-modal' が表示されていること
         
     | 
| 
      
 94 
     | 
    
         
            +
                かつ '#character-modal-costume-set .item:nth-child(1) .name' に文字 'costume1' が表示されていること
         
     | 
| 
      
 95 
     | 
    
         
            +
                かつ '#character-modal-costume-set .item:nth-child(1) .attributes' に文字 '1' が表示されていること
         
     | 
| 
      
 96 
     | 
    
         
            +
                かつ '#character-modal-costume-set .item:nth-child(1) a.remove-button' が表示されていること
         
     | 
| 
      
 97 
     | 
    
         
            +
                かつ '#character-modal-costume-set .item:nth-child(2) .name' に文字 'costume2' が表示されていること
         
     | 
| 
      
 98 
     | 
    
         
            +
                かつ '#character-modal-costume-set .item:nth-child(2) .attributes' に文字 '2' が表示されていること
         
     | 
| 
      
 99 
     | 
    
         
            +
                かつ '#character-modal-costume-set .item:nth-child(2) a.remove-button' が表示されていること
         
     | 
| 
      
 100 
     | 
    
         
            +
                かつ '#character-modal-costume-set .item:nth-child(3) .name' に文字 'costume3' が表示されていること
         
     | 
| 
      
 101 
     | 
    
         
            +
                かつ '#character-modal-costume-set .item:nth-child(3) .attributes' に文字 '3' が表示されていること
         
     | 
| 
      
 102 
     | 
    
         
            +
                かつ '#character-modal-costume-set .item:nth-child(3) a.remove-button' が表示されていること
         
     | 
| 
      
 103 
     | 
    
         
            +
                かつ 'costume[name]' フィールドの値が "costume3" であること
         
     | 
| 
      
 104 
     | 
    
         
            +
                かつ '.thumbnails a.active img[alt="ryu1.png"]' が表示されていること
         
     | 
| 
      
 105 
     | 
    
         
            +
             
     | 
| 
      
 106 
     | 
    
         
            +
                もし '#character-modal-costume-set .item:nth-child(1) a.remove-button' をクリックする
         
     | 
| 
      
 107 
     | 
    
         
            +
             
     | 
| 
      
 108 
     | 
    
         
            +
                ならば '#character-modal-costume-set .item:nth-child(1) .name' に文字 'costume2' が表示されていること
         
     | 
| 
      
 109 
     | 
    
         
            +
                かつ '#character-modal-costume-set .item:nth-child(1) .attributes' に文字 '1' が表示されていること
         
     | 
| 
      
 110 
     | 
    
         
            +
                かつ '#character-modal-costume-set .item:nth-child(1) a.remove-button' が表示されていること
         
     | 
| 
      
 111 
     | 
    
         
            +
                かつ '#character-modal-costume-set .item:nth-child(2) .name' に文字 'costume3' が表示されていること
         
     | 
| 
      
 112 
     | 
    
         
            +
                かつ '#character-modal-costume-set .item:nth-child(2) .attributes' に文字 '2' が表示されていること
         
     | 
| 
      
 113 
     | 
    
         
            +
                かつ '#character-modal-costume-set .item:nth-child(2) a.remove-button' が表示されていること
         
     | 
| 
      
 114 
     | 
    
         
            +
                かつ 'costume[name]' フィールドの値が "costume3" であること
         
     | 
| 
      
 115 
     | 
    
         
            +
                かつ '.thumbnails a.active img[alt="ryu1.png"]' が表示されていること
         
     | 
| 
      
 116 
     | 
    
         
            +
             
     | 
| 
      
 117 
     | 
    
         
            +
                もし '#character-modal-costume-set .item:nth-child(2) a.remove-button' をクリックする
         
     | 
| 
      
 118 
     | 
    
         
            +
             
     | 
| 
      
 119 
     | 
    
         
            +
                ならば '#character-modal-costume-set .item:nth-child(1) .name' に文字 'costume2' が表示されていること
         
     | 
| 
      
 120 
     | 
    
         
            +
                かつ '#character-modal-costume-set .item:nth-child(1) .attributes' に文字 '1' が表示されていること
         
     | 
| 
      
 121 
     | 
    
         
            +
                かつ '#character-modal-costume-set .item:nth-child(1) a.remove-button' が表示されていないこと
         
     | 
| 
      
 122 
     | 
    
         
            +
                かつ 'costume[name]' フィールドの値が "costume2" であること
         
     | 
| 
      
 123 
     | 
    
         
            +
                かつ '.thumbnails a.active img[alt="ryu1.png"]' が表示されていること
         
     | 
| 
      
 124 
     | 
    
         
            +
             
     | 
| 
      
 125 
     | 
    
         
            +
                もし '#character-modal-ok-button' をクリックする
         
     | 
| 
      
 126 
     | 
    
         
            +
                かつ JavaScriptによる処理が終わるまで待つ
         
     | 
| 
      
 127 
     | 
    
         
            +
                かつ '#character-selector-character-set .item:nth-child(1) a.character' をクリックする
         
     | 
| 
      
 128 
     | 
    
         
            +
                かつ JavaScriptによる処理が終わるまで待つ
         
     | 
| 
      
 129 
     | 
    
         
            +
             
     | 
| 
      
 130 
     | 
    
         
            +
                ならば '#character-modal' が表示されていること
         
     | 
| 
      
 131 
     | 
    
         
            +
                かつ '#character-modal-costume-set .item:nth-child(1) .name' に文字 'costume2' が表示されていること
         
     | 
| 
      
 132 
     | 
    
         
            +
                かつ '#character-modal-costume-set .item:nth-child(1) .attributes' に文字 '1' が表示されていること
         
     | 
| 
      
 133 
     | 
    
         
            +
                かつ '#character-modal-costume-set .item:nth-child(1) a.remove-button' が表示されていないこと
         
     | 
| 
      
 134 
     | 
    
         
            +
                かつ 'costume[name]' フィールドの値が "costume2" であること
         
     | 
| 
      
 135 
     | 
    
         
            +
                かつ '.thumbnails a.active img[alt="ryu1.png"]' が表示されていること
         
     | 
| 
      
 136 
     | 
    
         
            +
             
     | 
| 
      
 137 
     | 
    
         
            +
              @target
         
     | 
| 
      
 138 
     | 
    
         
            +
              シナリオ: キャラクターのコスチュームをアップロードする
         
     | 
| 
      
 139 
     | 
    
         
            +
                前提 '#character-modal a#character-modal-upload-costume' が表示されていること
         
     | 
| 
      
 140 
     | 
    
         
            +
             
     | 
| 
      
 141 
     | 
    
         
            +
                もし 'character-modal-upload-costume-file' フィールドにファイル 'files/extra_car.png' を設定する
         
     | 
| 
      
 142 
     | 
    
         
            +
                かつ JavaScriptによる処理が終わるまで待つ
         
     | 
| 
      
 143 
     | 
    
         
            +
             
     | 
| 
      
 144 
     | 
    
         
            +
                ならば ホームディレクトリに '1102/__assets__/extra_car.png' が存在すること
         
     | 
| 
      
 145 
     | 
    
         
            +
                かつ '#character-modal-costume-selector .thumbnails li:nth-child(1) img[alt="extra_car.png"][src="/smalruby/assets/extra_car.png"]' が表示されていること
         
     | 
| 
      
 146 
     | 
    
         
            +
                かつ '#character-modal-costume-selector .thumbnails li:nth-child(1) a.remove-button' が表示されていること
         
     | 
| 
      
 147 
     | 
    
         
            +
             
     | 
| 
      
 148 
     | 
    
         
            +
                もし '#character-modal-costume-selector img[alt="extra_car.png"]' をクリックする
         
     | 
| 
      
 149 
     | 
    
         
            +
             
     | 
| 
      
 150 
     | 
    
         
            +
                ならば '#character-modal-character img[alt="extra_car.png"][src="/smalruby/assets/extra_car.png"]' が表示されていること
         
     | 
| 
      
 151 
     | 
    
         
            +
                かつ '#character-modal-costume-set > .item:nth-child(1) img[alt="extra_car.png"][src="/smalruby/assets/extra_car.png"]' が表示されていること
         
     | 
| 
      
 152 
     | 
    
         
            +
             
     | 
| 
      
 153 
     | 
    
         
            +
                もし '#character-modal-ok-button' をクリックする
         
     | 
| 
      
 154 
     | 
    
         
            +
                かつ JavaScriptによる処理が終わるまで待つ
         
     | 
| 
      
 155 
     | 
    
         
            +
             
     | 
| 
      
 156 
     | 
    
         
            +
                ならば '#character-selector-character-set > .item:nth-child(1) img[src="/smalruby/assets/extra_car.png"]' が表示されていること
         
     | 
| 
      
 157 
     | 
    
         
            +
             
     | 
| 
      
 158 
     | 
    
         
            +
                もし '#character-selector-character-set > .item:nth-child(1) img[src="/smalruby/assets/extra_car.png"]' をクリックする
         
     | 
| 
      
 159 
     | 
    
         
            +
                かつ JavaScriptによる処理が終わるまで待つ
         
     | 
| 
      
 160 
     | 
    
         
            +
             
     | 
| 
      
 161 
     | 
    
         
            +
                ならば '#character-modal-costume-selector .thumbnails li:nth-child(1) img[alt="extra_car.png"][src="/smalruby/assets/extra_car.png"]' が表示されていること
         
     | 
| 
      
 162 
     | 
    
         
            +
                かつ '#character-modal-costume-selector .thumbnails li:nth-child(1) a.remove-button' が表示されていること
         
     | 
| 
      
 163 
     | 
    
         
            +
                かつ '#character-modal-character img[alt="extra_car.png"][src="/smalruby/assets/extra_car.png"]' が表示されていること
         
     | 
| 
      
 164 
     | 
    
         
            +
                かつ '#character-modal-costume-set > .item:nth-child(1) img[alt="extra_car.png"][src="/smalruby/assets/extra_car.png"]' が表示されていること
         
     |