skippy 0.1.1.a → 0.2.0.a

Sign up to get free protection for your applications and to get access to all the features.
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