automock 0.0.3 → 0.0.4
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/README.md +1 -1
- data/lib/automock/version.rb +1 -1
- data/server/package.json +1 -0
- data/server/src/assets/javascripts/components/file_list.react.js +1 -1
- data/server/src/assets/javascripts/components/json_viewer.react.js +28 -0
- data/server/src/assets/javascripts/components/select_buttons.react.js +1 -1
- data/server/src/assets/javascripts/components/selectable_lists.react.js +31 -20
- data/server/src/assets/javascripts/containers/app.react.js +11 -2
- data/server/src/assets/stylesheets/application.scss +1 -0
- data/server/src/assets/stylesheets/components/_file_list.scss +1 -0
- data/server/src/assets/stylesheets/components/_json_viewer.scss +6 -0
- data/server/src/assets/stylesheets/components/_select_buttons.scss +6 -4
- data/server/src/assets/stylesheets/components/_selectable_list.scss +1 -1
- metadata +5 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 4078a9648eee2d574180ce41d2ba6bff01b80a17
|
4
|
+
data.tar.gz: adbf761b3388fe690731c5455004959eabb53cb8
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 5325c92d9ae0729e0939b0ac797ff1ece8f40f4a25fe1d55baa91174ba026f1d8a85bdebe9db6330c32de5a806cc1949de865e64e9683b877e72443ce6c172d4
|
7
|
+
data.tar.gz: b4d2349f2a472032c999ad008964058b1ded7ffc7aa7e148f1037bd9a7233bfc5326cee64b230c210fe80203dcab9ae9c7c37a9cc9bba5bbb8696b9eac57c951
|
data/README.md
CHANGED
@@ -73,7 +73,7 @@ You can manage mocking data, on or off, by mocking response management server.
|
|
73
73
|
By default, mocking management server use 8000 port.
|
74
74
|
So you can access it.
|
75
75
|
|
76
|
-
![management_server_screenshot](https://cloud.githubusercontent.com/assets/4954534/
|
76
|
+
![management_server_screenshot](https://cloud.githubusercontent.com/assets/4954534/12217110/4babb652-b739-11e5-86bb-fe417f3f6754.png)
|
77
77
|
|
78
78
|
Selected mocking data is used by proxy.
|
79
79
|
Unselected api is passed through normally.
|
data/lib/automock/version.rb
CHANGED
data/server/package.json
CHANGED
@@ -2,7 +2,7 @@ import React from 'react';
|
|
2
2
|
|
3
3
|
export default class FileList extends React.Component {
|
4
4
|
handleSelect(e) {
|
5
|
-
const selectedFile = this.props.files.filter((file) => file.name === e.target.value)
|
5
|
+
const selectedFile = this.props.files.filter((file) => file.name === e.target.value)[0];
|
6
6
|
this.props.onChange(selectedFile);
|
7
7
|
}
|
8
8
|
render() {
|
@@ -0,0 +1,28 @@
|
|
1
|
+
import React from 'react';
|
2
|
+
import JSONTree from 'react-json-tree';
|
3
|
+
import assign from 'object-assign';
|
4
|
+
|
5
|
+
export default class JsonViewer extends React.Component {
|
6
|
+
parseJson() {
|
7
|
+
const srcJson = this.props.dataSource;
|
8
|
+
const distJson = assign({}, srcJson);
|
9
|
+
if (!distJson.name) {
|
10
|
+
return distJson;
|
11
|
+
}
|
12
|
+
distJson.response_body = JSON.parse(srcJson.response_body);
|
13
|
+
delete distJson.id; // don't show id
|
14
|
+
return distJson;
|
15
|
+
}
|
16
|
+
render(){
|
17
|
+
const json = this.parseJson();
|
18
|
+
|
19
|
+
let jsonTree;
|
20
|
+
if (json.name) {
|
21
|
+
jsonTree = <div className="json-viewer"><JSONTree data={ json } keyName={json.name} /></div>;
|
22
|
+
}
|
23
|
+
|
24
|
+
return (
|
25
|
+
<div>{ jsonTree }</div>
|
26
|
+
);
|
27
|
+
}
|
28
|
+
}
|
@@ -9,7 +9,7 @@ export default class SelectButtons extends React.Component {
|
|
9
9
|
}
|
10
10
|
render() {
|
11
11
|
return(
|
12
|
-
<div className="select-buttons col-xs-
|
12
|
+
<div className="select-buttons col-xs-2">
|
13
13
|
<button className="btn btn-primary" onClick={this.handleClickSelectButton.bind(this)}>→</button>
|
14
14
|
<button className="btn" onClick={this.handleClickUnselectButton.bind(this)}>←</button>
|
15
15
|
</div>
|
@@ -1,43 +1,54 @@
|
|
1
1
|
import React from 'react';
|
2
2
|
import FileList from './file_list';
|
3
3
|
import SelectButtons from './select_buttons';
|
4
|
+
import JsonViewer from './json_viewer';
|
4
5
|
|
5
6
|
export default class SelectableLists extends React.Component {
|
6
7
|
constructor() {
|
7
8
|
super();
|
8
9
|
this.state = {
|
9
|
-
selectedFromNotSelectedFiles:
|
10
|
-
selectedFromSelectedFiles:
|
10
|
+
selectedFromNotSelectedFiles: {},
|
11
|
+
selectedFromSelectedFiles: {},
|
12
|
+
viewingFile: {}
|
11
13
|
};
|
12
14
|
}
|
13
15
|
|
14
16
|
handleSelectFromNotSelectedFiles(selectedFile) {
|
15
|
-
this.setState({
|
17
|
+
this.setState({
|
18
|
+
viewingFile: selectedFile,
|
19
|
+
selectedFromNotSelectedFiles: selectedFile
|
20
|
+
});
|
16
21
|
}
|
17
22
|
|
18
23
|
handleSelectFromSelectedFiles(selectedFile) {
|
19
|
-
this.setState({
|
24
|
+
this.setState({
|
25
|
+
viewingFile: selectedFile,
|
26
|
+
selectedFromSelectedFiles: selectedFile
|
27
|
+
});
|
20
28
|
}
|
21
29
|
|
22
30
|
render() {
|
23
31
|
const { selectedFiles, unselectedFiles } = this.props;
|
24
32
|
return(
|
25
|
-
<div className="selectable-lists
|
26
|
-
<
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
|
33
|
+
<div className="selectable-lists">
|
34
|
+
<div className="row">
|
35
|
+
<FileList
|
36
|
+
title={"not selected files"}
|
37
|
+
files={unselectedFiles}
|
38
|
+
onChange={this.handleSelectFromNotSelectedFiles.bind(this)}
|
39
|
+
/>
|
40
|
+
<SelectButtons
|
41
|
+
onClickSelectButton={this.props.onCreateSelectedFile}
|
42
|
+
onClickUnselectButton={this.props.onDeleteSelectedFile}
|
43
|
+
{...this.state}
|
44
|
+
/>
|
45
|
+
<FileList
|
46
|
+
title={"selected files"}
|
47
|
+
files={selectedFiles}
|
48
|
+
onChange={this.handleSelectFromSelectedFiles.bind(this)}
|
49
|
+
/>
|
50
|
+
</div>
|
51
|
+
<JsonViewer dataSource={this.state.viewingFile}/>
|
41
52
|
</div>
|
42
53
|
);
|
43
54
|
}
|
@@ -24,10 +24,19 @@ class AppContainer extends React.Component {
|
|
24
24
|
deleteSelectedFile(id);
|
25
25
|
}
|
26
26
|
|
27
|
-
|
27
|
+
computeFileContents() {
|
28
28
|
const { selectedFiles, mockFiles } = this.props;
|
29
29
|
const selectedFileNames = selectedFiles.map((file) => file.name).toArray();
|
30
|
-
const
|
30
|
+
const splited = _.partition(mockFiles.toArray(), (file) => _.includes(selectedFileNames, file.name));
|
31
|
+
splited[0] = splited[0].map((file) => {
|
32
|
+
file.id = _.find(selectedFiles.toArray(), (selectedFile) => selectedFile.name === file.name).id;
|
33
|
+
return file;
|
34
|
+
});
|
35
|
+
return({ selectedFiles: splited[0], unselectedFiles: splited[1] });
|
36
|
+
}
|
37
|
+
|
38
|
+
render() {
|
39
|
+
const { selectedFiles, unselectedFiles } = this.computeFileContents();
|
31
40
|
return (
|
32
41
|
<div className="container">
|
33
42
|
<SelectableLists
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: automock
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.4
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- joe-re
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2016-01-
|
11
|
+
date: 2016-01-09 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rspec
|
@@ -133,6 +133,7 @@ files:
|
|
133
133
|
- server/src/assets/javascripts/actions/mock_files_actions.js
|
134
134
|
- server/src/assets/javascripts/actions/selected_files_actions.js
|
135
135
|
- server/src/assets/javascripts/components/file_list.react.js
|
136
|
+
- server/src/assets/javascripts/components/json_viewer.react.js
|
136
137
|
- server/src/assets/javascripts/components/select_buttons.react.js
|
137
138
|
- server/src/assets/javascripts/components/selectable_lists.react.js
|
138
139
|
- server/src/assets/javascripts/containers/app.react.js
|
@@ -142,6 +143,7 @@ files:
|
|
142
143
|
- server/src/assets/javascripts/reducers/selected_files.js
|
143
144
|
- server/src/assets/stylesheets/application.scss
|
144
145
|
- server/src/assets/stylesheets/components/_file_list.scss
|
146
|
+
- server/src/assets/stylesheets/components/_json_viewer.scss
|
145
147
|
- server/src/assets/stylesheets/components/_select_buttons.scss
|
146
148
|
- server/src/assets/stylesheets/components/_selectable_list.scss
|
147
149
|
- server/src/db/database.json
|
@@ -174,7 +176,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
174
176
|
version: '0'
|
175
177
|
requirements: []
|
176
178
|
rubyforge_project:
|
177
|
-
rubygems_version: 2.
|
179
|
+
rubygems_version: 2.4.5.1
|
178
180
|
signing_key:
|
179
181
|
specification_version: 4
|
180
182
|
summary: Auto-generate mock_data of JSON API response from your request-specs.
|