Skip to content

Commit

Permalink
Initial implementation of the connect command, with tests (#179)
Browse files Browse the repository at this point in the history
* Initial implementation of the connect command, with tests

* Removing the auto-detect features of the set base command

* Remove the set swagger command and refactor the connect command a bit to make it reusable by the other commands that need part of it (list, help, all the http commands, etc).
  • Loading branch information
tlmii authored Aug 23, 2019
1 parent 404537f commit 53e84a9
Show file tree
Hide file tree
Showing 20 changed files with 1,325 additions and 814 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,6 @@ public async Task WithEchoOn_ShowsCorrectOutput()
string output = await RunTestScript(scriptText, _serverConfig.BaseAddress);

string expected = NormalizeOutput(@"(Disconnected)~ set base [BaseUrl]
Using swagger metadata from [BaseUrl]/swagger/v1/swagger.json
[BaseUrl]/~ echo on
Request echoing is on
Expand All @@ -44,7 +43,6 @@ public async Task WithEchoOff_ShowsCorrectOutput()
string output = await RunTestScript(scriptText, _serverConfig.BaseAddress);

string expected = NormalizeOutput(@"(Disconnected)~ set base [BaseUrl]
Using swagger metadata from [BaseUrl]/swagger/v1/swagger.json
[BaseUrl]/~ echo off
Request echoing is off
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -19,14 +19,15 @@ public GetCommandTests(HttpCommandsFixture<SampleApiServerConfig> fixture)
[Fact]
public async Task WithoutParameter_ShowsCorrectOutput()
{
string scriptText = $@"set base {_serverConfig.BaseAddress}
string scriptText = $@"connect {_serverConfig.BaseAddress}
cd api/values
get";

string output = await RunTestScript(scriptText, _serverConfig.BaseAddress);

string expected = NormalizeOutput(@"(Disconnected)~ set base [BaseUrl]
Using swagger metadata from [BaseUrl]/swagger/v1/swagger.json
string expected = NormalizeOutput(@"(Disconnected)~ connect [BaseUrl]
Using a base address of [BaseUrl]/
Using swagger definition at [BaseUrl]/swagger/v1/swagger.json
[BaseUrl]/~ cd api/values
/api/values [get|post]
Expand All @@ -52,14 +53,15 @@ Using swagger metadata from [BaseUrl]/swagger/v1/swagger.json
[Fact]
public async Task WithParameter_ShowsCorrectOutput()
{
string scriptText = $@"set base {_serverConfig.BaseAddress}
string scriptText = $@"connect {_serverConfig.BaseAddress}
cd api/values
get 5";

string output = await RunTestScript(scriptText, _serverConfig.BaseAddress);

string expected = NormalizeOutput(@"(Disconnected)~ set base [BaseUrl]
Using swagger metadata from [BaseUrl]/swagger/v1/swagger.json
string expected = NormalizeOutput(@"(Disconnected)~ connect [BaseUrl]
Using a base address of [BaseUrl]/
Using swagger definition at [BaseUrl]/swagger/v1/swagger.json
[BaseUrl]/~ cd api/values
/api/values [get|post]
Expand All @@ -82,14 +84,15 @@ Using swagger metadata from [BaseUrl]/swagger/v1/swagger.json
[Fact]
public async Task InvalidPath_ShowsNotFoundMessage()
{
string scriptText = $@"set base {_serverConfig.BaseAddress}
string scriptText = $@"connect {_serverConfig.BaseAddress}
cd api/invalidpath
get";

string output = await RunTestScript(scriptText, _serverConfig.BaseAddress);

string expected = NormalizeOutput(@"(Disconnected)~ set base [BaseUrl]
Using swagger metadata from [BaseUrl]/swagger/v1/swagger.json
string expected = NormalizeOutput(@"(Disconnected)~ connect [BaseUrl]
Using a base address of [BaseUrl]/
Using swagger definition at [BaseUrl]/swagger/v1/swagger.json
[BaseUrl]/~ cd api/invalidpath
Warning: The '/api/invalidpath' endpoint is not present in the Swagger metadata
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -21,15 +21,16 @@ public ListCommandTests(DualHttpCommandsFixture<SampleApiServerConfig> fixture)
[Fact]
public async Task WithSwagger_ShowsAvailableSubpaths()
{
string scriptText = $@"set base {_swaggerServerConfig.BaseAddress}
string scriptText = $@"connect {_swaggerServerConfig.BaseAddress}
ls
cd api
ls";
string output = await RunTestScript(scriptText, _swaggerServerConfig.BaseAddress);

// make sure to normalize newlines in the expected output
string expected = NormalizeOutput(@"(Disconnected)~ set base [BaseUrl]
Using swagger metadata from [BaseUrl]/swagger/v1/swagger.json
string expected = NormalizeOutput(@"(Disconnected)~ connect [BaseUrl]
Using a base address of [BaseUrl]/
Using swagger definition at [BaseUrl]/swagger/v1/swagger.json
[BaseUrl]/~ ls
. []
Expand All @@ -51,13 +52,14 @@ Values [get|post]
[Fact]
public async Task WithSwagger_ShowsControllerActionsWithHttpVerbs()
{
string scriptText = $@"set base {_swaggerServerConfig.BaseAddress}
string scriptText = $@"connect {_swaggerServerConfig.BaseAddress}
cd api/Values
ls";
string output = await RunTestScript(scriptText, _swaggerServerConfig.BaseAddress);

string expected = NormalizeOutput(@"(Disconnected)~ set base [BaseUrl]
Using swagger metadata from [BaseUrl]/swagger/v1/swagger.json
string expected = NormalizeOutput(@"(Disconnected)~ connect [BaseUrl]
Using a base address of [BaseUrl]/
Using swagger definition at [BaseUrl]/swagger/v1/swagger.json
[BaseUrl]/~ cd api/Values
/api/Values [get|post]
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,6 @@ public async Task WithSwaggerConfig_ShowsCorrectOutput()
string output = await RunTestScript(scriptText, _swaggerServerConfig.BaseAddress);

string expected = NormalizeOutput(@"(Disconnected)~ set base [BaseUrl]
Using swagger metadata from [BaseUrl]/swagger/v1/swagger.json
[BaseUrl]/~", null);

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -19,16 +19,17 @@ public SetHeaderCommandTests(HttpCommandsFixture<SampleApiServerConfig> fixture)
[Fact]
public async Task WithNameAndValueSpecified_AddsNewHeaderToListOfHeaders()
{
string scriptText = $@"set base {_serverConfig.BaseAddress}
string scriptText = $@"connect {_serverConfig.BaseAddress}
cd api/values
echo on
set header Accept application/json
get";

string output = await RunTestScript(scriptText, _serverConfig.BaseAddress);

string expected = NormalizeOutput(@"(Disconnected)~ set base [BaseUrl]
Using swagger metadata from [BaseUrl]/swagger/v1/swagger.json
string expected = NormalizeOutput(@"(Disconnected)~ connect [BaseUrl]
Using a base address of [BaseUrl]/
Using swagger definition at [BaseUrl]/swagger/v1/swagger.json
[BaseUrl]/~ cd api/values
/api/values [get|post]
Expand Down Expand Up @@ -68,16 +69,17 @@ Response from [BaseUrl]...
[Fact]
public async Task WithEmptyValue_ClearsHeader()
{
string scriptText = $@"set base {_serverConfig.BaseAddress}
string scriptText = $@"connect {_serverConfig.BaseAddress}
cd api/values
echo on
set header User-Agent
get";

string output = await RunTestScript(scriptText, _serverConfig.BaseAddress);

string expected = NormalizeOutput(@"(Disconnected)~ set base [BaseUrl]
Using swagger metadata from [BaseUrl]/swagger/v1/swagger.json
string expected = NormalizeOutput(@"(Disconnected)~ connect [BaseUrl]
Using a base address of [BaseUrl]/
Using swagger definition at [BaseUrl]/swagger/v1/swagger.json
[BaseUrl]/~ cd api/values
/api/values [get|post]
Expand Down
Loading

0 comments on commit 53e84a9

Please sign in to comment.