Thibault Jouan
6f563803df
Alias sh' as ` condition keyword
2014-03-08 21:10:21 +00:00
Thibault Jouan
475b019dd7
Bump version to 0.1.16
2014-03-08 19:44:31 +00:00
Thibault Jouan
7c6ac4c9d8
Implement `` condition keyword (shell cmd status)
2014-03-08 19:43:41 +00:00
Thibault Jouan
a2ca62e7f8
Bump version to 0.1.15
2014-03-05 08:55:17 +00:00
Thibault Jouan
cc6102674e
Fix how gem versions dependency is specified
2014-03-05 08:54:00 +00:00
Thibault Jouan
eeab386216
Implement `has_executable' condition keyword
2014-03-05 07:19:15 +00:00
Thibault Jouan
aa3694b58c
Add support for `type' command in MockRemote
2014-03-05 07:18:50 +00:00
Thibault Jouan
b9976464a4
Remove Net::SSH story helpers usage in FS specs
2014-03-05 06:47:55 +00:00
Thibault Jouan
bf25b05adb
Remote extra record separator from `sh' task action
2014-03-05 06:45:56 +00:00
Thibault Jouan
347e6f80c7
Bump version to 0.1.14
2014-03-05 06:10:29 +00:00
Thibault Jouan
db3644a3e6
Write output from `sh' task action directly:
...
* Accept output as argument in Remote#execute;
* Modify ShellCommand so that env output is directly handled.
2014-03-05 06:06:42 +00:00
Thibault Jouan
400fa1ee3f
Fix unexpected blocking in Remote::execute:
...
Wait for inactivity on the specific channel we open for the execution
instead of looping the global session.
2014-03-05 05:23:08 +00:00
Thibault Jouan
b92dfcc9b7
Refactor some cucumber scenarios
2014-03-05 03:04:57 +00:00
Thibault Jouan
387f37f3f5
Implement `file_append' task action
2014-03-05 02:41:28 +00:00
Thibault Jouan
b1c7ff27b4
Fix wording in `file_replace_content' scenarios
2014-03-05 02:21:09 +00:00
Thibault Jouan
c858972eee
Bump version to 0.1.13
2014-03-05 02:05:03 +00:00
Thibault Jouan
d22b023ff4
Implement `file_replace_content' task action
2014-03-05 02:02:52 +00:00
Thibault Jouan
a7f6d7034b
Merge branch 'remote-fs-di'
...
Move SFTP session building responsability from Remote::FS class to
Remote class, to decrease coupling in Remote::FS.
2014-03-05 00:13:08 +00:00
Thibault Jouan
64a6ed678a
Refactor Remote::FS specs
2014-03-05 00:10:07 +00:00
Thibault Jouan
f45d0b5a20
Modify Remote::FS interface:
...
* Accept SFTP session in FS constructor;
* Modify Remote to build the session required by FS;
* Change TestEnvHelpers#build_remote in order to provided a test double
as the remote FS.
2014-03-05 00:07:59 +00:00
Thibault Jouan
65c727d5da
Merge branch 'testing-testenv'
...
Integrate a test environment, helping to reduce or isolate code
dealing with net-ssh or net-sftp dependencies setup.
2014-03-04 23:42:15 +00:00
Thibault Jouan
fcba1a5c0b
Implement rspec TestEnvHelpers:
...
Allow use of our test environment, with a mocked remote and convenient
methods to write more concise expectations.
#env, builds and returns a memoized test environment (with mocked
remote)
#output, returns env output as a string
#remote_fs, returns env remote fs
#expect_execution, setup a remote command execution expectation
2014-03-04 23:24:05 +00:00
Thibault Jouan
85e3bf2eac
Implement Testing::MockRemote#execute
2014-03-04 05:54:19 +00:00
Thibault Jouan
b576604498
Implement basic Testing::MockRemote object
2014-03-04 05:54:19 +00:00
Thibault Jouan
88036f0389
Allow Env constructor to accept a remote instance
2014-03-04 04:58:26 +00:00
Thibault Jouan
00d9b074cd
Fix Env spec, verify identity instead of equality
2014-02-14 18:33:58 +00:00
Thibault Jouan
09f624744b
Fix assignations order in Env#initialize
2014-02-14 18:25:44 +00:00
Thibault Jouan
a22a504685
Change guard-rspec config for support files
2014-02-14 00:53:41 +00:00
Thibault Jouan
ddba3eee45
Change guard-rspec config, don't run all after pass
2014-02-14 00:53:30 +00:00
Thibault Jouan
dbb4bed4e8
Remove uneeded let() in Prompter spec
2014-02-10 19:06:28 +00:00
Thibault Jouan
9a71beefff
Merge branch 'spec-refactor-shared_examples'
...
Refactor specs with shared examples.
2014-02-10 17:36:28 +00:00
Thibault Jouan
91637ca631
Refactor tests specs with shared examples
2014-02-10 17:33:48 +00:00
Thibault Jouan
4624a81100
Refactor actions specs with shared examples
2014-02-10 16:49:17 +00:00
Thibault Jouan
23d5d8a1df
Refactor spec/support/**/*.rb require calls
2014-02-10 16:46:14 +00:00
Thibault Jouan
850bad2ba8
Fix typo in Remote::FS spec
2014-02-10 15:28:51 +00:00
Thibault Jouan
48a9da9365
Fix coding standards (module nesting) in specs
2014-02-08 17:59:33 +00:00
Thibault Jouan
115561ee88
Add explicit versions for runtime dependencies
2014-02-08 17:36:51 +00:00
Thibault Jouan
bdd09b6ea9
Regroup all require calls in lib source files
2014-02-08 01:24:34 +00:00
Thibault Jouan
130d84aa6c
Simplify Action#output spec
2014-01-23 18:22:21 +00:00
Thibault Jouan
7a75db3583
Remove extra empty line in specs
2014-01-23 16:49:32 +00:00
Thibault Jouan
a0482d175c
Implement `file_contains' condition keyword
2014-01-23 16:37:19 +00:00
Thibault Jouan
05331d334d
Implement Remote::FS#file_read
2014-01-23 16:37:02 +00:00
Thibault Jouan
39b3796aa0
Fix Remote::FS#file_write spec:
...
* Fix file double name;
* Remove uneeded .as_null_object calls on doubles.
2014-01-23 16:36:04 +00:00
Thibault Jouan
65ceb9e741
Refactor forwardable require calls
2014-01-22 21:33:05 +00:00
Thibault Jouan
456ed17724
Implement `get' task keyword, fetch from registry
2014-01-21 17:31:32 +00:00
Thibault Jouan
f92ad8128d
Implement set' and get' recipe keywords:
...
`set' registers a value at given index in env registry, `get'
retrieves a value at given index.
2014-01-21 17:11:17 +00:00
Thibault Jouan
154ee8d534
Implement a key/value registry at env level
2014-01-21 17:10:42 +00:00
Thibault Jouan
d845af60a3
Bump version to 0.1.12
2014-01-21 15:51:17 +00:00
Thibault Jouan
7f5d1a4085
Implement `mkdir' task action
2014-01-21 15:50:07 +00:00
Thibault Jouan
f147ce7d65
Fix some indentation in FileWriter spec
2014-01-21 15:49:36 +00:00
Thibault Jouan
0b4df20f55
Implement `has_dir' condition keyword
2014-01-21 15:02:07 +00:00
Thibault Jouan
9d7af04d28
Implement Remote::FS#dir?
2014-01-21 15:01:27 +00:00
Thibault Jouan
dba8a7aeee
Remove feature exposing env object in recipe DSL
2014-01-21 01:22:00 +00:00
Thibault Jouan
6db71caea9
Bump version to 0.1.11
2014-01-21 01:20:15 +00:00
Thibault Jouan
0d0ed541c8
Allow `ask' action to customize choices prompt
2014-01-21 01:19:17 +00:00
Thibault Jouan
7e062e06a1
Implement `ask' recipe keyword
2014-01-21 00:52:44 +00:00
Thibault Jouan
70109615c8
Implement Action#input, delegating to env input
2014-01-20 22:27:55 +00:00
Thibault Jouan
a871bb4009
Implement input handling in Env
2014-01-20 22:27:55 +00:00
Thibault Jouan
d347b8d6f5
Remove last instance_eval usage in spec
2014-01-20 02:05:30 +00:00
Thibault Jouan
82f8eac319
Improve Test spec:
...
* Use attributes readers instead of instance_eval;
* Refactor.
2014-01-20 02:00:24 +00:00
Thibault Jouan
780bb9041d
Remove accessor tests in Task spec
2014-01-20 01:52:50 +00:00
Thibault Jouan
658a5903fa
Improve Task spec, remove instance_eval usage
2014-01-20 01:51:10 +00:00
Thibault Jouan
656c456706
Change Task#evaluate spec, more classic test style
2014-01-20 01:48:31 +00:00
Thibault Jouan
dae7d5d79e
Fix Task::DSL attributes:
...
* Remove condition attribute accessor, implemented as a method;
* Make all other read-only.
2014-01-20 01:47:20 +00:00
Thibault Jouan
b0b6b0f39a
Refactor and clean up Task::DSL spec
2014-01-20 01:47:20 +00:00
Thibault Jouan
6b46fac76f
Change an expectation in Condition::DSL specs
2014-01-20 01:47:20 +00:00
Thibault Jouan
5455955fd2
Add Task::DSL#block attribute reader
2014-01-20 01:47:20 +00:00
Thibault Jouan
db1c452f96
Remove Task::DSL#actions uneeded spec
2014-01-20 01:47:20 +00:00
Thibault Jouan
f44fd56158
Simplify Remote#environment spec
2014-01-20 01:47:20 +00:00
Thibault Jouan
b6ec8ed468
Implement Remote::Environment#[]
2014-01-20 01:47:19 +00:00
Thibault Jouan
4603ce777f
Make Remote#hostname attribute read-only
2014-01-20 01:47:19 +00:00
Thibault Jouan
b1e182cc93
Add Remote::FS#remote attribute reader
2014-01-20 01:47:19 +00:00
Thibault Jouan
5662bb723e
Simplify Remote::Environment.new_from_string spec
2014-01-20 01:47:19 +00:00
Thibault Jouan
705774f8ef
Add Remote::Environment#variables attribute reader
2014-01-20 01:47:19 +00:00
Thibault Jouan
22dd5fbdf9
Refactor Remote::Environment spec with described_class
2014-01-20 01:47:19 +00:00
Thibault Jouan
161c784cbe
Make Recipe::DSL methods public
2014-01-20 01:47:19 +00:00
Thibault Jouan
42a82c9c80
Add Recipe::DSL#{code,block} attribute readers
2014-01-20 01:47:19 +00:00
Thibault Jouan
2d9c84d04e
Refactor Recipe::DSL spec with described_class
2014-01-20 01:47:19 +00:00
Thibault Jouan
3360356e49
Simplify Env spec:
...
* Remove #ouput examples;
* Use described_class where useful.
2014-01-20 01:47:19 +00:00
Thibault Jouan
dd5866c04e
Refactor Condition spec:
...
* Use more "classic" testing style for .evaluate;
* Use described_class where useful.
2014-01-20 01:47:08 +00:00
Thibault Jouan
88d5ab68b7
Remove TestsHelpers module (was used in specs)
2014-01-19 17:39:14 +00:00
Thibault Jouan
29b3efa580
Improve Condition::DSL spec:
...
* Use a real Test object;
* Use some more "classic" test style;
* Move example about defined test keywords calls in .define_test spec;
* Add missing example for #evaluate.
2014-01-19 17:11:27 +00:00
Thibault Jouan
f27ab6f074
Add Condition::DSL#{block,env} attribute readers
2014-01-19 16:50:42 +00:00
Thibault Jouan
db6f22ac97
Change Condition::DSL#tests as read-only attribute
2014-01-19 16:39:26 +00:00
Thibault Jouan
2e151fe321
Change Action attributes as read-only:
...
* #env
* #arguments
2014-01-19 16:37:51 +00:00
Thibault Jouan
5d81f0bc07
Add Condition#{tests,return_value} attributes reader
2014-01-19 00:07:21 +00:00
Thibault Jouan
a031cb2b51
Use more explicit example in CLI spec
2014-01-19 00:05:01 +00:00
Thibault Jouan
913cba6c23
Add some new delegators in Test class:
...
* #remote (delegates to env.remote)
* #fs (delegates to env.remote.fs)
2014-01-18 22:53:54 +00:00
Thibault Jouan
22613059f1
Change Env#output as read-only attribute
2014-01-09 01:22:43 +00:00
Thibault Jouan
b67a32d27e
Change CLI#recipe as read-only attribute
2014-01-09 01:16:13 +00:00
Thibault Jouan
a7dde5afce
Bump version to 0.1.10
2014-01-09 01:09:17 +00:00
Thibault Jouan
4c0a7f0fc7
Rename Interpreter class as Worker
2014-01-09 01:08:49 +00:00
Thibault Jouan
cdc3128727
Implement Action#remote (delegates to remote.fs)
2014-01-09 00:51:16 +00:00
Thibault Jouan
29c26ab961
Implement Action#remote (delegates to env.remote)
2014-01-09 00:45:26 +00:00
Thibault Jouan
e567c61e4e
Implement Action#output (delegates to env.output)
2014-01-09 00:43:01 +00:00
Thibault Jouan
103b9d1230
Rename Remote::FS#{has_,}file?
2014-01-08 22:30:52 +00:00
Thibault Jouan
19b091a15c
Rename Remote::Environment#{has_,}key?
2014-01-08 22:28:23 +00:00
Thibault Jouan
56ea377e31
Fix coding standards (empty blocks)
2014-01-08 22:16:51 +00:00
Thibault Jouan
9971283841
Improve Recipe::DSL#initialize spec
2014-01-08 22:14:16 +00:00
Thibault Jouan
352fcd37f8
Modify recipe DSL API to take env on initialization
2014-01-08 22:13:14 +00:00