skippy 0.1.1.a → 0.2.0.a

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.
Files changed (59) hide show
  1. checksums.yaml +4 -4
  2. data/.editorconfig +14 -0
  3. data/.gitignore +5 -0
  4. data/.idea/.rakeTasks +7 -0
  5. data/.idea/codeStyleSettings.xml +9 -0
  6. data/.idea/encodings.xml +6 -0
  7. data/.idea/inspectionProfiles/Project_Default.xml +8 -0
  8. data/.idea/misc.xml +4 -0
  9. data/.idea/modules.xml +8 -0
  10. data/.idea/runConfigurations/All_Features.xml +32 -0
  11. data/.idea/runConfigurations/test__skippy.xml +21 -0
  12. data/.idea/skippy.iml +83 -0
  13. data/.idea/vcs.xml +6 -0
  14. data/.vscode/launch.json +61 -0
  15. data/.vscode/settings.json +3 -2
  16. data/.vscode/tasks.json +16 -0
  17. data/Gemfile +5 -0
  18. data/Rakefile +4 -4
  19. data/app/boot.rb +1 -1
  20. data/app/commands/debug.rb +2 -1
  21. data/app/commands/lib.rb +46 -0
  22. data/app/commands/new.rb +4 -3
  23. data/app/commands/template.rb +3 -3
  24. data/app/resources/commands/example.rb +1 -1
  25. data/app/templates/standard/%ext_name%.rb.tt +1 -1
  26. data/app/templates/webdialog/{extension.rb.erb → %ext_name%.rb.tt} +1 -1
  27. data/app/templates/webdialog/{extension → %ext_name%}/html/dialog.html +0 -0
  28. data/app/templates/webdialog/{extension/main.rb.erb → %ext_name%/main.rb.tt} +0 -0
  29. data/bin/aruba +17 -0
  30. data/bin/cucumber +17 -0
  31. data/bin/htmldiff +17 -0
  32. data/bin/ldiff +17 -0
  33. data/cSpell.json +18 -0
  34. data/fixtures/my_lib/skippy.json +5 -0
  35. data/fixtures/my_lib/src/command.rb +4 -0
  36. data/fixtures/my_lib/src/geometry.rb +4 -0
  37. data/fixtures/my_lib/src/tool.rb +4 -0
  38. data/fixtures/my_project/skippy.json +8 -0
  39. data/fixtures/my_project/skippy/commands/example.rb +14 -0
  40. data/fixtures/my_project/src/hello_world.rb +47 -0
  41. data/fixtures/my_project/src/hello_world/extension.json +10 -0
  42. data/fixtures/my_project/src/hello_world/main.rb +21 -0
  43. data/lib/skippy.rb +7 -3
  44. data/lib/skippy/app.rb +7 -5
  45. data/lib/skippy/cli.rb +12 -12
  46. data/lib/skippy/config.rb +135 -0
  47. data/lib/skippy/config_accessors.rb +43 -0
  48. data/lib/skippy/error.rb +1 -1
  49. data/lib/skippy/helpers/file.rb +14 -0
  50. data/lib/skippy/lib_module.rb +47 -0
  51. data/lib/skippy/library.rb +57 -0
  52. data/lib/skippy/library_manager.rb +75 -0
  53. data/lib/skippy/module_manager.rb +103 -0
  54. data/lib/skippy/namespace.rb +7 -3
  55. data/lib/skippy/project.rb +55 -26
  56. data/lib/skippy/version.rb +1 -1
  57. data/skippy.gemspec +14 -12
  58. metadata +69 -8
  59. data/lib/skippy/skippy.rb +0 -9
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 3d7b3b98fb96f0b69d62ed036e797bea1d0a96d8
4
- data.tar.gz: 32139d4d554049c6c0c97bd91cfa0f287f2f1b0c
3
+ metadata.gz: 232619b998ebac5cb3a4a5391fcf7fa0e7d4c0f4
4
+ data.tar.gz: e733a03ebf02021626826153aefd2027b70c5942
5
5
  SHA512:
6
- metadata.gz: 3f178ab36f1ebd329a1729f9fea5ccba190e02b21cb22ce586aaeef527851d3e4d4afa7abf295cf4e96bfaee0bba9187c00747168d6000ffdd9402de6d5244cc
7
- data.tar.gz: 78f4c41578fa29c75cd55c4479840966ec107622e23a9cff878bd6ac6348f4096fd2828f7129e656ba75e057ece47a8faa8be9cc6e14212b94bebe2e4b361093
6
+ metadata.gz: 66ae128bef50293429c7c96589e7dc139bc3b325401d021fdafa90ebe05f151713d671e903f51660a72b66ef1b5aa5e70aaafbb81761ec95e2eaa596f478c0af
7
+ data.tar.gz: 582abaa6f81dd06653bfcb09de1b95b626fc8c1a9dc24b40505c8e5ea6fda4463f0a1c442a75fa982bdbaf1361ab618029c7bb54bfd73089d2f5c49d33b38566
@@ -0,0 +1,14 @@
1
+ ; Indicate this is the root of the project.
2
+ root = true
3
+
4
+ [*]
5
+ indent_size = 2
6
+ indent_style = space
7
+ insert_final_newline = true
8
+ trim_trailing_whitespace = true
9
+
10
+ [*.{html,js,md,rb}]
11
+ charset = utf-8
12
+
13
+ [*.{md,txt}]
14
+ max_line_length = 80
data/.gitignore CHANGED
@@ -8,4 +8,9 @@
8
8
  /spec/reports/
9
9
  /tmp/
10
10
 
11
+ # Sublime Text
11
12
  *.sublime-workspace
13
+
14
+ # RubyMine
15
+ .idea/workspace.xml
16
+ .idea/tasks.xml
@@ -0,0 +1,7 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <Settings><!--This file was automatically generated by Ruby plugin.
3
+ You are allowed to:
4
+ 1. Remove rake task
5
+ 2. Add existing rake tasks
6
+ To add existing rake tasks automatically delete this file and reload the project.
7
+ --><RakeGroup description="" fullCmd="" taksId="rake"><RakeTask description="Build skippy-0.1.1.a.gem into the pkg directory" fullCmd="build" taksId="build" /><RakeTask description="Remove any temporary products" fullCmd="clean" taksId="clean" /><RakeTask description="Remove any generated files" fullCmd="clobber" taksId="clobber" /><RakeTask description="Build and install skippy-0.1.1.a.gem into system gems" fullCmd="install" taksId="install" /><RakeGroup description="" fullCmd="" taksId="install"><RakeTask description="Build and install skippy-0.1.1.a.gem into system gems without network access" fullCmd="install:local" taksId="local" /></RakeGroup><RakeTask description="Create tag v0.1.1.a and build and push skippy-0.1.1.a.gem to Rubygems" fullCmd="release[remote]" taksId="release[remote]" /><RakeTask description="Run tests" fullCmd="test" taksId="test" /><RakeTask description="" fullCmd="default" taksId="default" /><RakeTask description="" fullCmd="release" taksId="release" /><RakeGroup description="" fullCmd="" taksId="release"><RakeTask description="" fullCmd="release:guard_clean" taksId="guard_clean" /><RakeTask description="" fullCmd="release:rubygem_push" taksId="rubygem_push" /><RakeTask description="" fullCmd="release:source_control_push" taksId="source_control_push" /></RakeGroup></RakeGroup></Settings>
@@ -0,0 +1,9 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <project version="4">
3
+ <component name="ProjectCodeStyleSettingsManager">
4
+ <option name="PER_PROJECT_SETTINGS">
5
+ <value />
6
+ </option>
7
+ <option name="PREFERRED_PROJECT_CODE_STYLE" value="Default (1)" />
8
+ </component>
9
+ </project>
@@ -0,0 +1,6 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <project version="4">
3
+ <component name="Encoding">
4
+ <file url="PROJECT" charset="UTF-8" />
5
+ </component>
6
+ </project>
@@ -0,0 +1,8 @@
1
+ <component name="InspectionProjectProfileManager">
2
+ <profile version="1.0">
3
+ <option name="myName" value="Project Default" />
4
+ <inspection_tool class="RubyCaseWithoutElseBlockInspection" enabled="false" level="WARNING" enabled_by_default="false" />
5
+ <inspection_tool class="RubyGlobalVariableNamingConvention" enabled="false" level="WARNING" enabled_by_default="false" />
6
+ <inspection_tool class="RubyInstanceMethodNamingConvention" enabled="false" level="WARNING" enabled_by_default="false" />
7
+ </profile>
8
+ </component>
@@ -0,0 +1,4 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <project version="4">
3
+ <component name="ProjectRootManager" version="2" project-jdk-name="ruby-2.0.0-p576" project-jdk-type="RUBY_SDK" />
4
+ </project>
@@ -0,0 +1,8 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <project version="4">
3
+ <component name="ProjectModuleManager">
4
+ <modules>
5
+ <module fileurl="file://$PROJECT_DIR$/.idea/skippy.iml" filepath="$PROJECT_DIR$/.idea/skippy.iml" />
6
+ </modules>
7
+ </component>
8
+ </project>
@@ -0,0 +1,32 @@
1
+ <component name="ProjectRunConfigurationManager">
2
+ <configuration default="false" name="All Features" type="CucumberRunConfigurationType" factoryName="Cucumber">
3
+ <predefined_log_file id="RUBY_CUCUMBER" enabled="true" />
4
+ <module name="skippy" />
5
+ <CUCUMBER_RUN_CONFIG_SETTINGS_ID NAME="RUBY_ARGS" VALUE="-e $stdout.sync=true;$stderr.sync=true;load($0=ARGV.shift)" />
6
+ <CUCUMBER_RUN_CONFIG_SETTINGS_ID NAME="WORK DIR" VALUE="" />
7
+ <CUCUMBER_RUN_CONFIG_SETTINGS_ID NAME="SHOULD_USE_SDK" VALUE="false" />
8
+ <CUCUMBER_RUN_CONFIG_SETTINGS_ID NAME="ALTERN_SDK_NAME" VALUE="" />
9
+ <CUCUMBER_RUN_CONFIG_SETTINGS_ID NAME="myPassParentEnvs" VALUE="true" />
10
+ <envs />
11
+ <EXTENSION ID="BundlerRunConfigurationExtension" bundleExecEnabled="true" />
12
+ <EXTENSION ID="JRubyRunConfigurationExtension" NailgunExecEnabled="false" />
13
+ <EXTENSION ID="RubyCoverageRunConfigurationExtension" enabled="false" sample_coverage="true" track_test_folders="true" runner="rcov" />
14
+ <CUCUMBER_RUN_CONFIG_SETTINGS_ID NAME="TEST_FILE_MASK" VALUE="" />
15
+ <CUCUMBER_RUN_CONFIG_SETTINGS_ID NAME="TEST_TEST_TYPE" VALUE="ALL_IN_FOLDER" />
16
+ <CUCUMBER_RUN_CONFIG_SETTINGS_ID NAME="TESTS_FOLDER_PATH" VALUE="$MODULE_DIR$/features" />
17
+ <CUCUMBER_RUN_CONFIG_SETTINGS_ID NAME="TEST_SCRIPT_PATH" VALUE="" />
18
+ <CUCUMBER_RUN_CONFIG_SETTINGS_ID NAME="TEST_TAGS_FILTER" VALUE="" />
19
+ <CUCUMBER_RUN_CONFIG_SETTINGS_ID NAME="TEST_NAME_FILTER" VALUE="" />
20
+ <CUCUMBER_RUN_CONFIG_SETTINGS_ID NAME="CUCUMBER_ARGS" VALUE="--color -r features" />
21
+ <CUCUMBER_RUN_CONFIG_SETTINGS_ID NAME="RUNNER_VERSION" VALUE="" />
22
+ <CUCUMBER_RUN_CONFIG_SETTINGS_ID NAME="FULL_BACKTRACE" VALUE="false" />
23
+ <CUCUMBER_RUN_CONFIG_SETTINGS_ID NAME="VERBOSE_OPTION" VALUE="false" />
24
+ <CUCUMBER_RUN_CONFIG_SETTINGS_ID NAME="DRB" VALUE="false" />
25
+ <CUCUMBER_RUN_CONFIG_SETTINGS_ID NAME="ZEUS" VALUE="false" />
26
+ <CUCUMBER_RUN_CONFIG_SETTINGS_ID NAME="SPRING" VALUE="false" />
27
+ <CUCUMBER_RUN_CONFIG_SETTINGS_ID NAME="CUCUMBER_RUNNER_PATH" VALUE="" />
28
+ <CUCUMBER_RUN_CONFIG_SETTINGS_ID NAME="USE_CUSTOM_RUNNER" VALUE="false" />
29
+ <CUCUMBER_RUN_CONFIG_SETTINGS_ID NAME="SETTINGS_VERSION" VALUE="2" />
30
+ <method />
31
+ </configuration>
32
+ </component>
@@ -0,0 +1,21 @@
1
+ <component name="ProjectRunConfigurationManager">
2
+ <configuration default="false" name="test: skippy" type="RakeRunConfigurationType" factoryName="Rake">
3
+ <module name="skippy" />
4
+ <RAKE_RUN_CONFIG_SETTINGS_ID NAME="RUBY_ARGS" VALUE="-e $stdout.sync=true;$stderr.sync=true;load($0=ARGV.shift)" />
5
+ <RAKE_RUN_CONFIG_SETTINGS_ID NAME="WORK DIR" VALUE="$MODULE_DIR$" />
6
+ <RAKE_RUN_CONFIG_SETTINGS_ID NAME="SHOULD_USE_SDK" VALUE="false" />
7
+ <RAKE_RUN_CONFIG_SETTINGS_ID NAME="ALTERN_SDK_NAME" VALUE="" />
8
+ <RAKE_RUN_CONFIG_SETTINGS_ID NAME="myPassParentEnvs" VALUE="true" />
9
+ <envs />
10
+ <EXTENSION ID="BundlerRunConfigurationExtension" bundleExecEnabled="true" />
11
+ <EXTENSION ID="JRubyRunConfigurationExtension" NailgunExecEnabled="false" />
12
+ <EXTENSION ID="RubyCoverageRunConfigurationExtension" enabled="false" sample_coverage="true" track_test_folders="true" runner="rcov" />
13
+ <RAKE_RUN_CONFIG_SETTINGS_ID NAME="RAKE_TASK_NAME" VALUE="test" />
14
+ <RAKE_RUN_CONFIG_SETTINGS_ID NAME="RAKE_TASK_ARGS" VALUE="" />
15
+ <RAKE_RUN_CONFIG_SETTINGS_ID NAME="RAKE_TASK_ATTACHED_TEST_FRAMEWORKS" VALUE=":test_unit " />
16
+ <RAKE_RUN_CONFIG_SETTINGS_ID NAME="RAKE_TASK_OPTION_TRACE" VALUE="false" />
17
+ <RAKE_RUN_CONFIG_SETTINGS_ID NAME="RAKE_TASK_OPTION_DRYRUN" VALUE="false" />
18
+ <RAKE_RUN_CONFIG_SETTINGS_ID NAME="RAKE_TASK_OPTION_PREREQS" VALUE="false" />
19
+ <method />
20
+ </configuration>
21
+ </component>
@@ -0,0 +1,83 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <module type="RUBY_MODULE" version="4">
3
+ <component name="ModuleRunConfigurationManager">
4
+ <configuration default="false" name="All Features" type="CucumberRunConfigurationType" factoryName="Cucumber">
5
+ <predefined_log_file id="RUBY_CUCUMBER" enabled="true" />
6
+ <module name="skippy" />
7
+ <CUCUMBER_RUN_CONFIG_SETTINGS_ID NAME="RUBY_ARGS" VALUE="-e $stdout.sync=true;$stderr.sync=true;load($0=ARGV.shift)" />
8
+ <CUCUMBER_RUN_CONFIG_SETTINGS_ID NAME="WORK DIR" VALUE="" />
9
+ <CUCUMBER_RUN_CONFIG_SETTINGS_ID NAME="SHOULD_USE_SDK" VALUE="false" />
10
+ <CUCUMBER_RUN_CONFIG_SETTINGS_ID NAME="ALTERN_SDK_NAME" VALUE="" />
11
+ <CUCUMBER_RUN_CONFIG_SETTINGS_ID NAME="myPassParentEnvs" VALUE="true" />
12
+ <envs />
13
+ <EXTENSION ID="BundlerRunConfigurationExtension" bundleExecEnabled="true" />
14
+ <EXTENSION ID="JRubyRunConfigurationExtension" NailgunExecEnabled="false" />
15
+ <EXTENSION ID="RubyCoverageRunConfigurationExtension" enabled="false" sample_coverage="true" track_test_folders="true" runner="rcov" />
16
+ <CUCUMBER_RUN_CONFIG_SETTINGS_ID NAME="TEST_FILE_MASK" VALUE="" />
17
+ <CUCUMBER_RUN_CONFIG_SETTINGS_ID NAME="TEST_TEST_TYPE" VALUE="ALL_IN_FOLDER" />
18
+ <CUCUMBER_RUN_CONFIG_SETTINGS_ID NAME="TESTS_FOLDER_PATH" VALUE="$MODULE_DIR$/features" />
19
+ <CUCUMBER_RUN_CONFIG_SETTINGS_ID NAME="TEST_SCRIPT_PATH" VALUE="" />
20
+ <CUCUMBER_RUN_CONFIG_SETTINGS_ID NAME="TEST_TAGS_FILTER" VALUE="" />
21
+ <CUCUMBER_RUN_CONFIG_SETTINGS_ID NAME="TEST_NAME_FILTER" VALUE="" />
22
+ <CUCUMBER_RUN_CONFIG_SETTINGS_ID NAME="CUCUMBER_ARGS" VALUE="--color -r features" />
23
+ <CUCUMBER_RUN_CONFIG_SETTINGS_ID NAME="RUNNER_VERSION" VALUE="" />
24
+ <CUCUMBER_RUN_CONFIG_SETTINGS_ID NAME="FULL_BACKTRACE" VALUE="false" />
25
+ <CUCUMBER_RUN_CONFIG_SETTINGS_ID NAME="VERBOSE_OPTION" VALUE="false" />
26
+ <CUCUMBER_RUN_CONFIG_SETTINGS_ID NAME="DRB" VALUE="false" />
27
+ <CUCUMBER_RUN_CONFIG_SETTINGS_ID NAME="ZEUS" VALUE="false" />
28
+ <CUCUMBER_RUN_CONFIG_SETTINGS_ID NAME="SPRING" VALUE="false" />
29
+ <CUCUMBER_RUN_CONFIG_SETTINGS_ID NAME="CUCUMBER_RUNNER_PATH" VALUE="" />
30
+ <CUCUMBER_RUN_CONFIG_SETTINGS_ID NAME="USE_CUSTOM_RUNNER" VALUE="false" />
31
+ <CUCUMBER_RUN_CONFIG_SETTINGS_ID NAME="SETTINGS_VERSION" VALUE="2" />
32
+ <method />
33
+ </configuration>
34
+ <configuration default="false" name="test: skippy" type="RakeRunConfigurationType" factoryName="Rake">
35
+ <module name="skippy" />
36
+ <RAKE_RUN_CONFIG_SETTINGS_ID NAME="RUBY_ARGS" VALUE="-e $stdout.sync=true;$stderr.sync=true;load($0=ARGV.shift)" />
37
+ <RAKE_RUN_CONFIG_SETTINGS_ID NAME="WORK DIR" VALUE="$MODULE_DIR$" />
38
+ <RAKE_RUN_CONFIG_SETTINGS_ID NAME="SHOULD_USE_SDK" VALUE="false" />
39
+ <RAKE_RUN_CONFIG_SETTINGS_ID NAME="ALTERN_SDK_NAME" VALUE="" />
40
+ <RAKE_RUN_CONFIG_SETTINGS_ID NAME="myPassParentEnvs" VALUE="true" />
41
+ <envs />
42
+ <EXTENSION ID="BundlerRunConfigurationExtension" bundleExecEnabled="true" />
43
+ <EXTENSION ID="JRubyRunConfigurationExtension" NailgunExecEnabled="false" />
44
+ <EXTENSION ID="RubyCoverageRunConfigurationExtension" enabled="false" sample_coverage="true" track_test_folders="true" runner="rcov" />
45
+ <RAKE_RUN_CONFIG_SETTINGS_ID NAME="RAKE_TASK_NAME" VALUE="test" />
46
+ <RAKE_RUN_CONFIG_SETTINGS_ID NAME="RAKE_TASK_ARGS" VALUE="" />
47
+ <RAKE_RUN_CONFIG_SETTINGS_ID NAME="RAKE_TASK_ATTACHED_TEST_FRAMEWORKS" VALUE=":test_unit " />
48
+ <RAKE_RUN_CONFIG_SETTINGS_ID NAME="RAKE_TASK_OPTION_TRACE" VALUE="false" />
49
+ <RAKE_RUN_CONFIG_SETTINGS_ID NAME="RAKE_TASK_OPTION_DRYRUN" VALUE="false" />
50
+ <RAKE_RUN_CONFIG_SETTINGS_ID NAME="RAKE_TASK_OPTION_PREREQS" VALUE="false" />
51
+ <method />
52
+ </configuration>
53
+ </component>
54
+ <component name="NewModuleRootManager">
55
+ <content url="file://$MODULE_DIR$">
56
+ <sourceFolder url="file://$MODULE_DIR$/test" isTestSource="true" />
57
+ </content>
58
+ <orderEntry type="jdk" jdkName="ruby-2.3.3-p222" jdkType="RUBY_SDK" />
59
+ <orderEntry type="sourceFolder" forTests="false" />
60
+ <orderEntry type="library" scope="PROVIDED" name="aruba (v0.14.1@f8d19d, ruby-2.3.3-p222) [gem]" level="application" />
61
+ <orderEntry type="library" scope="PROVIDED" name="builder (v3.2.2, ruby-2.3.3-p222) [gem]" level="application" />
62
+ <orderEntry type="library" scope="PROVIDED" name="bundler (v1.13.7, ruby-2.3.3-p222) [gem]" level="application" />
63
+ <orderEntry type="library" scope="PROVIDED" name="childprocess (v0.5.9, ruby-2.3.3-p222) [gem]" level="application" />
64
+ <orderEntry type="library" scope="PROVIDED" name="contracts (v0.14.0, ruby-2.3.3-p222) [gem]" level="application" />
65
+ <orderEntry type="library" scope="PROVIDED" name="cucumber (v2.3.3, ruby-2.3.3-p222) [gem]" level="application" />
66
+ <orderEntry type="library" scope="PROVIDED" name="cucumber-core (v1.4.0, ruby-2.3.3-p222) [gem]" level="application" />
67
+ <orderEntry type="library" scope="PROVIDED" name="cucumber-wire (v0.0.1, ruby-2.3.3-p222) [gem]" level="application" />
68
+ <orderEntry type="library" scope="PROVIDED" name="diff-lcs (v1.2.5, ruby-2.3.3-p222) [gem]" level="application" />
69
+ <orderEntry type="library" scope="PROVIDED" name="ffi (v1.9.14, ruby-2.3.3-p222) [gem]" level="application" />
70
+ <orderEntry type="library" scope="PROVIDED" name="gherkin (v3.2.0, ruby-2.3.3-p222) [gem]" level="application" />
71
+ <orderEntry type="library" scope="PROVIDED" name="minitest (v5.10.1, ruby-2.3.3-p222) [gem]" level="application" />
72
+ <orderEntry type="library" scope="PROVIDED" name="multi_json (v1.12.1, ruby-2.3.3-p222) [gem]" level="application" />
73
+ <orderEntry type="library" scope="PROVIDED" name="multi_test (v0.1.2, ruby-2.3.3-p222) [gem]" level="application" />
74
+ <orderEntry type="library" scope="PROVIDED" name="rake (v10.5.0, ruby-2.3.3-p222) [gem]" level="application" />
75
+ <orderEntry type="library" scope="PROVIDED" name="rspec-expectations (v3.4.0, ruby-2.3.3-p222) [gem]" level="application" />
76
+ <orderEntry type="library" scope="PROVIDED" name="rspec-support (v3.4.1, ruby-2.3.3-p222) [gem]" level="application" />
77
+ <orderEntry type="library" scope="PROVIDED" name="thor (v0.19.4, ruby-2.3.3-p222) [gem]" level="application" />
78
+ </component>
79
+ <component name="RModuleSettingsStorage">
80
+ <LOAD_PATH number="1" string0="$MODULE_DIR$/lib" />
81
+ <I18N_FOLDERS number="0" />
82
+ </component>
83
+ </module>
@@ -0,0 +1,6 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <project version="4">
3
+ <component name="VcsDirectoryMappings">
4
+ <mapping directory="$PROJECT_DIR$" vcs="Git" />
5
+ </component>
6
+ </project>
@@ -0,0 +1,61 @@
1
+ {
2
+ "version": "0.2.0",
3
+ "configurations": [
4
+ {
5
+ "name": "Debug Local File",
6
+ "type": "Ruby",
7
+ "request": "launch",
8
+ "cwd": "${workspaceRoot}",
9
+ "program": "${file}"
10
+ },
11
+ {
12
+ "name": "Listen for rdebug-ide",
13
+ "type": "Ruby",
14
+ "request": "attach",
15
+ "cwd": "${workspaceRoot}",
16
+ "remoteHost": "127.0.0.1",
17
+ "remotePort": "1234",
18
+ "remoteWorkspaceRoot": "${workspaceRoot}"
19
+ },
20
+ {
21
+ "name": "Rails server",
22
+ "type": "Ruby",
23
+ "request": "launch",
24
+ "cwd": "${workspaceRoot}",
25
+ "program": "${workspaceRoot}/bin/rails",
26
+ "args": [
27
+ "server"
28
+ ]
29
+ },
30
+ {
31
+ "name": "RSpec - all",
32
+ "type": "Ruby",
33
+ "request": "launch",
34
+ "cwd": "${workspaceRoot}",
35
+ "program": "${workspaceRoot}/bin/rspec",
36
+ "args": [
37
+ "-I",
38
+ "${workspaceRoot}"
39
+ ]
40
+ },
41
+ {
42
+ "name": "RSpec - active spec file only",
43
+ "type": "Ruby",
44
+ "request": "launch",
45
+ "cwd": "${workspaceRoot}",
46
+ "program": "${workspaceRoot}/bin/rspec",
47
+ "args": [
48
+ "-I",
49
+ "${workspaceRoot}",
50
+ "${file}"
51
+ ]
52
+ },
53
+ {
54
+ "name": "Cucumber",
55
+ "type": "Ruby",
56
+ "request": "launch",
57
+ "cwd": "${workspaceRoot}",
58
+ "program": "${workspaceRoot}/bin/cucumber"
59
+ }
60
+ ]
61
+ }
@@ -1,4 +1,5 @@
1
1
  // Place your settings in this file to overwrite default and user settings.
2
2
  {
3
- "editor.wrappingColumn": 80
4
- }
3
+ "editor.wrappingColumn": 80,
4
+ "files.insertFinalNewline": true
5
+ }
@@ -0,0 +1,16 @@
1
+ {
2
+ // See https://go.microsoft.com/fwlink/?LinkId=733558
3
+ // for the documentation about the tasks.json format
4
+ "version": "0.1.0",
5
+ "command": "bundle",
6
+ "isShellCommand": true,
7
+ "showOutput": "always",
8
+ "echoCommand": true,
9
+ "args": ["exec", "rake"],
10
+ "tasks": [{
11
+ "taskName": "test",
12
+ "args": ["TEST=${relativeFile}"],
13
+ "isTestCommand": true,
14
+ "isBuildCommand": true
15
+ }]
16
+ }
data/Gemfile CHANGED
@@ -2,3 +2,8 @@ source 'https://rubygems.org'
2
2
 
3
3
  # Specify your gem's dependencies in skippy.gemspec
4
4
  gemspec
5
+
6
+ group :development do
7
+ gem 'aruba', :git => 'https://github.com/daynix/aruba.git', :branch => 'd-win-fix'
8
+ #gem 'aruba', :github => 'daynix/aruba', :branch => 'd-win-fix'
9
+ end
data/Rakefile CHANGED
@@ -1,9 +1,9 @@
1
- require "bundler/gem_tasks"
2
- require "rake/testtask"
1
+ require 'bundler/gem_tasks'
2
+ require 'rake/testtask'
3
3
 
4
4
  Rake::TestTask.new(:test) do |t|
5
- t.libs << "test"
6
- t.libs << "lib"
5
+ t.libs << 'test'
6
+ t.libs << 'lib'
7
7
  t.test_files = FileList['test/**/*_test.rb']
8
8
  end
9
9
 
@@ -21,7 +21,7 @@ begin
21
21
  require 'thor'
22
22
  # The Thor::Runner also needs to be loaded, as Skippy::CLI will call many of
23
23
  # of the same methods - in many cases emulating what it do.
24
- require "thor/runner"
24
+ require 'thor/runner'
25
25
  # This is also needed to be set in order for Thor's utilities to output
26
26
  # command names correctly.
27
27
  $thor_runner = true
@@ -6,10 +6,11 @@ class Debug < Skippy::Command
6
6
 
7
7
  desc 'clean', 'Cleans out project files'
8
8
  def clean
9
- say "Cleaning out project files..."
9
+ say 'Cleaning out project files...'
10
10
  remove_file Skippy::Project::PROJECT_FILENAME
11
11
  remove_dir 'src'
12
12
  remove_dir 'skippy'
13
+ remove_dir '.skippy'
13
14
  end
14
15
 
15
16
  end
@@ -0,0 +1,46 @@
1
+ require 'fileutils'
2
+ require 'json'
3
+
4
+ require 'skippy/library'
5
+ require 'skippy/project'
6
+
7
+ class Lib < Skippy::Command
8
+
9
+ include Thor::Actions
10
+
11
+ desc 'list', 'List installed libraries'
12
+ def list
13
+ project = Skippy::Project.current_or_fail
14
+ libraries = project.libraries
15
+ if libraries.empty?
16
+ say 'No libraries installed', :yellow
17
+ else
18
+ say 'Installed libraries:', :yellow
19
+ libraries.each { |library|
20
+ say
21
+ say "#{library.title} (#{library.version})", [:bold, :yellow]
22
+ library.modules.each { |lib_module|
23
+ lib_info = " #{lib_module}"
24
+ lib_info << ' (installed)' if project.modules.installed?(lib_module)
25
+ say lib_info, :green
26
+ }
27
+ }
28
+ end
29
+ end
30
+ default_command(:list)
31
+
32
+ desc 'install SOURCE', 'Install a new library'
33
+ def install(source)
34
+ project = Skippy::Project.current_or_fail
35
+ library = project.libraries.install(source)
36
+ say "Installed library: #{library.name} (#{library.version})"
37
+ end
38
+
39
+ desc 'use MODULE', 'Use a library module'
40
+ def use(module_path)
41
+ project = Skippy::Project.current_or_fail
42
+ lib_module = project.modules.use(module_path)
43
+ say "Using module: #{lib_module}"
44
+ end
45
+
46
+ end
@@ -27,6 +27,7 @@ class New < Skippy::Command::Group
27
27
  raise Skippy::Error, "A project already exist: #{project.filename}"
28
28
  end
29
29
  project.namespace = namespace
30
+ project.name = project.namespace.to_name
30
31
  end
31
32
 
32
33
  def validate_template
@@ -60,8 +61,8 @@ class New < Skippy::Command::Group
60
61
  copyright: project.copyright,
61
62
  license: project.license,
62
63
  product_id: project.namespace.to_a.join('_'),
63
- version: "0.1.0",
64
- build: "1",
64
+ version: '0.1.0',
65
+ build: '1',
65
66
  }
66
67
  json = JSON.pretty_generate(extension_info)
67
68
  json_filename = "src/#{project.namespace.to_underscore}/extension.json"
@@ -69,7 +70,7 @@ class New < Skippy::Command::Group
69
70
  end
70
71
 
71
72
  def create_example_skippy_command
72
- copy_file('commands/example.rb', 'skippy/example.rb')
73
+ copy_file('commands/example.rb', 'skippy/commands/example.rb')
73
74
  end
74
75
 
75
76
  def finalize