rails_edge_test 1.1.0 → 1.2.3
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.
- checksums.yaml +4 -4
- data/.envrc +2 -0
- data/.gitignore +4 -1
- data/.travis.yml +6 -3
- data/Appraisals +7 -0
- data/CHANGELOG.md +18 -4
- data/README.md +7 -0
- data/gemfiles/rails_5.2.gemfile +7 -0
- data/gemfiles/rails_5.2.gemfile.lock +149 -0
- data/gemfiles/rails_6.0.gemfile +7 -0
- data/gemfiles/rails_6.0.gemfile.lock +165 -0
- data/gemfiles/rspec_6.0.gemfile.lock +165 -0
- data/lib/rails_edge_test/configuration.rb +2 -1
- data/lib/rails_edge_test/dsl.rb +1 -0
- data/lib/rails_edge_test/dsl/action.rb +21 -2
- data/lib/rails_edge_test/dsl/controller.rb +1 -1
- data/lib/rails_edge_test/dsl/edge.rb +23 -3
- data/lib/rails_edge_test/runner.rb +1 -1
- data/lib/rails_edge_test/version.rb +1 -1
- data/nix/Gemfile +12 -0
- data/nix/Gemfile.lock +138 -0
- data/nix/gemset.nix +500 -0
- data/nix/sources.json +26 -0
- data/nix/sources.nix +134 -0
- data/nix/update-gemset.sh +7 -0
- data/rails_edge_test.gemspec +6 -6
- data/shell.nix +16 -0
- metadata +48 -20
data/nix/sources.json
ADDED
@@ -0,0 +1,26 @@
|
|
1
|
+
{
|
2
|
+
"niv": {
|
3
|
+
"branch": "master",
|
4
|
+
"description": "Easy dependency management for Nix projects",
|
5
|
+
"homepage": "https://github.com/nmattia/niv",
|
6
|
+
"owner": "nmattia",
|
7
|
+
"repo": "niv",
|
8
|
+
"rev": "5b5508f85567e82d97e7c1a5a0aa87e131ebab39",
|
9
|
+
"sha256": "0daa6gidnjbvxsmy5cl0w1h902qslc821hghppzi63q7qxg1pvr3",
|
10
|
+
"type": "tarball",
|
11
|
+
"url": "https://github.com/nmattia/niv/archive/5b5508f85567e82d97e7c1a5a0aa87e131ebab39.tar.gz",
|
12
|
+
"url_template": "https://github.com/<owner>/<repo>/archive/<rev>.tar.gz"
|
13
|
+
},
|
14
|
+
"nixpkgs": {
|
15
|
+
"branch": "nixos-19.09",
|
16
|
+
"description": "A read-only mirror of NixOS/nixpkgs tracking the released channels. Send issues and PRs to",
|
17
|
+
"homepage": "https://github.com/NixOS/nixpkgs",
|
18
|
+
"owner": "NixOS",
|
19
|
+
"repo": "nixpkgs-channels",
|
20
|
+
"rev": "6d445f8398d2d585d20d9acacf00fd9d15081b3b",
|
21
|
+
"sha256": "1ajd0zr31iny3g9hp0pc1y2pxcm3nakdv6260lnvyn0k4vygync2",
|
22
|
+
"type": "tarball",
|
23
|
+
"url": "https://github.com/NixOS/nixpkgs-channels/archive/6d445f8398d2d585d20d9acacf00fd9d15081b3b.tar.gz",
|
24
|
+
"url_template": "https://github.com/<owner>/<repo>/archive/<rev>.tar.gz"
|
25
|
+
}
|
26
|
+
}
|
data/nix/sources.nix
ADDED
@@ -0,0 +1,134 @@
|
|
1
|
+
# This file has been generated by Niv.
|
2
|
+
|
3
|
+
let
|
4
|
+
|
5
|
+
#
|
6
|
+
# The fetchers. fetch_<type> fetches specs of type <type>.
|
7
|
+
#
|
8
|
+
|
9
|
+
fetch_file = pkgs: spec:
|
10
|
+
if spec.builtin or true then
|
11
|
+
builtins_fetchurl { inherit (spec) url sha256; }
|
12
|
+
else
|
13
|
+
pkgs.fetchurl { inherit (spec) url sha256; };
|
14
|
+
|
15
|
+
fetch_tarball = pkgs: spec:
|
16
|
+
if spec.builtin or true then
|
17
|
+
builtins_fetchTarball { inherit (spec) url sha256; }
|
18
|
+
else
|
19
|
+
pkgs.fetchzip { inherit (spec) url sha256; };
|
20
|
+
|
21
|
+
fetch_git = spec:
|
22
|
+
builtins.fetchGit { url = spec.repo; inherit (spec) rev ref; };
|
23
|
+
|
24
|
+
fetch_builtin-tarball = spec:
|
25
|
+
builtins.trace
|
26
|
+
''
|
27
|
+
WARNING:
|
28
|
+
The niv type "builtin-tarball" will soon be deprecated. You should
|
29
|
+
instead use `builtin = true`.
|
30
|
+
|
31
|
+
$ niv modify <package> -a type=tarball -a builtin=true
|
32
|
+
''
|
33
|
+
builtins_fetchTarball { inherit (spec) url sha256; };
|
34
|
+
|
35
|
+
fetch_builtin-url = spec:
|
36
|
+
builtins.trace
|
37
|
+
''
|
38
|
+
WARNING:
|
39
|
+
The niv type "builtin-url" will soon be deprecated. You should
|
40
|
+
instead use `builtin = true`.
|
41
|
+
|
42
|
+
$ niv modify <package> -a type=file -a builtin=true
|
43
|
+
''
|
44
|
+
(builtins_fetchurl { inherit (spec) url sha256; });
|
45
|
+
|
46
|
+
#
|
47
|
+
# Various helpers
|
48
|
+
#
|
49
|
+
|
50
|
+
# The set of packages used when specs are fetched using non-builtins.
|
51
|
+
mkPkgs = sources:
|
52
|
+
let
|
53
|
+
sourcesNixpkgs =
|
54
|
+
import (builtins_fetchTarball { inherit (sources.nixpkgs) url sha256; }) {};
|
55
|
+
hasNixpkgsPath = builtins.any (x: x.prefix == "nixpkgs") builtins.nixPath;
|
56
|
+
hasThisAsNixpkgsPath = <nixpkgs> == ./.;
|
57
|
+
in
|
58
|
+
if builtins.hasAttr "nixpkgs" sources
|
59
|
+
then sourcesNixpkgs
|
60
|
+
else if hasNixpkgsPath && ! hasThisAsNixpkgsPath then
|
61
|
+
import <nixpkgs> {}
|
62
|
+
else
|
63
|
+
abort
|
64
|
+
''
|
65
|
+
Please specify either <nixpkgs> (through -I or NIX_PATH=nixpkgs=...) or
|
66
|
+
add a package called "nixpkgs" to your sources.json.
|
67
|
+
'';
|
68
|
+
|
69
|
+
# The actual fetching function.
|
70
|
+
fetch = pkgs: name: spec:
|
71
|
+
|
72
|
+
if ! builtins.hasAttr "type" spec then
|
73
|
+
abort "ERROR: niv spec ${name} does not have a 'type' attribute"
|
74
|
+
else if spec.type == "file" then fetch_file pkgs spec
|
75
|
+
else if spec.type == "tarball" then fetch_tarball pkgs spec
|
76
|
+
else if spec.type == "git" then fetch_git spec
|
77
|
+
else if spec.type == "builtin-tarball" then fetch_builtin-tarball spec
|
78
|
+
else if spec.type == "builtin-url" then fetch_builtin-url spec
|
79
|
+
else
|
80
|
+
abort "ERROR: niv spec ${name} has unknown type ${builtins.toJSON spec.type}";
|
81
|
+
|
82
|
+
# Ports of functions for older nix versions
|
83
|
+
|
84
|
+
# a Nix version of mapAttrs if the built-in doesn't exist
|
85
|
+
mapAttrs = builtins.mapAttrs or (
|
86
|
+
f: set: with builtins;
|
87
|
+
listToAttrs (map (attr: { name = attr; value = f attr set.${attr}; }) (attrNames set))
|
88
|
+
);
|
89
|
+
|
90
|
+
# fetchTarball version that is compatible between all the versions of Nix
|
91
|
+
builtins_fetchTarball = { url, sha256 }@attrs:
|
92
|
+
let
|
93
|
+
inherit (builtins) lessThan nixVersion fetchTarball;
|
94
|
+
in
|
95
|
+
if lessThan nixVersion "1.12" then
|
96
|
+
fetchTarball { inherit url; }
|
97
|
+
else
|
98
|
+
fetchTarball attrs;
|
99
|
+
|
100
|
+
# fetchurl version that is compatible between all the versions of Nix
|
101
|
+
builtins_fetchurl = { url, sha256 }@attrs:
|
102
|
+
let
|
103
|
+
inherit (builtins) lessThan nixVersion fetchurl;
|
104
|
+
in
|
105
|
+
if lessThan nixVersion "1.12" then
|
106
|
+
fetchurl { inherit url; }
|
107
|
+
else
|
108
|
+
fetchurl attrs;
|
109
|
+
|
110
|
+
# Create the final "sources" from the config
|
111
|
+
mkSources = config:
|
112
|
+
mapAttrs (
|
113
|
+
name: spec:
|
114
|
+
if builtins.hasAttr "outPath" spec
|
115
|
+
then abort
|
116
|
+
"The values in sources.json should not have an 'outPath' attribute"
|
117
|
+
else
|
118
|
+
spec // { outPath = fetch config.pkgs name spec; }
|
119
|
+
) config.sources;
|
120
|
+
|
121
|
+
# The "config" used by the fetchers
|
122
|
+
mkConfig =
|
123
|
+
{ sourcesFile ? ./sources.json
|
124
|
+
, sources ? builtins.fromJSON (builtins.readFile sourcesFile)
|
125
|
+
, pkgs ? mkPkgs sources
|
126
|
+
}: rec {
|
127
|
+
# The sources, i.e. the attribute set of spec name to spec
|
128
|
+
inherit sources;
|
129
|
+
|
130
|
+
# The "pkgs" (evaluated nixpkgs) to use for e.g. non-builtin fetchers
|
131
|
+
inherit pkgs;
|
132
|
+
};
|
133
|
+
in
|
134
|
+
mkSources (mkConfig {}) // { __functor = _: settings: mkSources (mkConfig settings); }
|
data/rails_edge_test.gemspec
CHANGED
@@ -6,7 +6,7 @@ require 'rails_edge_test/version'
|
|
6
6
|
Gem::Specification.new do |spec|
|
7
7
|
spec.name = "rails_edge_test"
|
8
8
|
spec.version = RailsEdgeTest::VERSION
|
9
|
-
spec.authors = ["Joshua Leven"]
|
9
|
+
spec.authors = ["Joshua Leven", "Ju Liu"]
|
10
10
|
spec.email = ["josh@noredink.com"]
|
11
11
|
|
12
12
|
spec.summary = %q{Generate json for front-end testing using your rails backend.}
|
@@ -21,11 +21,11 @@ Gem::Specification.new do |spec|
|
|
21
21
|
spec.executables << "generate_edges"
|
22
22
|
spec.require_paths = ["lib"]
|
23
23
|
|
24
|
-
spec.
|
24
|
+
spec.add_runtime_dependency "actionpack", ">= 5.2.0", "< 7.0.0"
|
25
25
|
|
26
|
-
spec.add_development_dependency "rails", "
|
26
|
+
spec.add_development_dependency "rails", ">= 5.2", "< 7.0.0"
|
27
27
|
spec.add_development_dependency "sqlite3", "~> 1.4.0"
|
28
|
-
spec.add_development_dependency "
|
29
|
-
spec.add_development_dependency "
|
30
|
-
spec.add_development_dependency "
|
28
|
+
spec.add_development_dependency "rake", "~> 13.0"
|
29
|
+
spec.add_development_dependency "rspec", "~> 3.9"
|
30
|
+
spec.add_development_dependency "appraisal", "~> 2.3"
|
31
31
|
end
|
data/shell.nix
ADDED
@@ -0,0 +1,16 @@
|
|
1
|
+
{ ... }:
|
2
|
+
let
|
3
|
+
sources = import ./nix/sources.nix { };
|
4
|
+
nixpkgs = import sources.nixpkgs { };
|
5
|
+
gems = nixpkgs.bundlerEnv {
|
6
|
+
name = "rails_edge_test";
|
7
|
+
gemfile = nix/Gemfile;
|
8
|
+
lockfile = nix/Gemfile.lock;
|
9
|
+
ruby = nixpkgs.ruby_2_5;
|
10
|
+
gemdir = ./nix;
|
11
|
+
};
|
12
|
+
in with nixpkgs;
|
13
|
+
stdenv.mkDerivation {
|
14
|
+
name = "rails_edge_test";
|
15
|
+
buildInputs = [ gems gems.wrappedRuby ];
|
16
|
+
}
|
metadata
CHANGED
@@ -1,43 +1,56 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: rails_edge_test
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.
|
4
|
+
version: 1.2.3
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Joshua Leven
|
8
|
-
|
8
|
+
- Ju Liu
|
9
|
+
autorequire:
|
9
10
|
bindir: exe
|
10
11
|
cert_chain: []
|
11
|
-
date:
|
12
|
+
date: 1970-01-01 00:00:00.000000000 Z
|
12
13
|
dependencies:
|
13
14
|
- !ruby/object:Gem::Dependency
|
14
15
|
name: actionpack
|
15
16
|
requirement: !ruby/object:Gem::Requirement
|
16
17
|
requirements:
|
17
|
-
- - "
|
18
|
+
- - ">="
|
18
19
|
- !ruby/object:Gem::Version
|
19
|
-
version:
|
20
|
+
version: 5.2.0
|
21
|
+
- - "<"
|
22
|
+
- !ruby/object:Gem::Version
|
23
|
+
version: 7.0.0
|
20
24
|
type: :runtime
|
21
25
|
prerelease: false
|
22
26
|
version_requirements: !ruby/object:Gem::Requirement
|
23
27
|
requirements:
|
24
|
-
- - "
|
28
|
+
- - ">="
|
25
29
|
- !ruby/object:Gem::Version
|
26
|
-
version:
|
30
|
+
version: 5.2.0
|
31
|
+
- - "<"
|
32
|
+
- !ruby/object:Gem::Version
|
33
|
+
version: 7.0.0
|
27
34
|
- !ruby/object:Gem::Dependency
|
28
35
|
name: rails
|
29
36
|
requirement: !ruby/object:Gem::Requirement
|
30
37
|
requirements:
|
31
|
-
- - "
|
38
|
+
- - ">="
|
32
39
|
- !ruby/object:Gem::Version
|
33
40
|
version: '5.2'
|
41
|
+
- - "<"
|
42
|
+
- !ruby/object:Gem::Version
|
43
|
+
version: 7.0.0
|
34
44
|
type: :development
|
35
45
|
prerelease: false
|
36
46
|
version_requirements: !ruby/object:Gem::Requirement
|
37
47
|
requirements:
|
38
|
-
- - "
|
48
|
+
- - ">="
|
39
49
|
- !ruby/object:Gem::Version
|
40
50
|
version: '5.2'
|
51
|
+
- - "<"
|
52
|
+
- !ruby/object:Gem::Version
|
53
|
+
version: 7.0.0
|
41
54
|
- !ruby/object:Gem::Dependency
|
42
55
|
name: sqlite3
|
43
56
|
requirement: !ruby/object:Gem::Requirement
|
@@ -53,47 +66,47 @@ dependencies:
|
|
53
66
|
- !ruby/object:Gem::Version
|
54
67
|
version: 1.4.0
|
55
68
|
- !ruby/object:Gem::Dependency
|
56
|
-
name:
|
69
|
+
name: rake
|
57
70
|
requirement: !ruby/object:Gem::Requirement
|
58
71
|
requirements:
|
59
72
|
- - "~>"
|
60
73
|
- !ruby/object:Gem::Version
|
61
|
-
version: '
|
74
|
+
version: '13.0'
|
62
75
|
type: :development
|
63
76
|
prerelease: false
|
64
77
|
version_requirements: !ruby/object:Gem::Requirement
|
65
78
|
requirements:
|
66
79
|
- - "~>"
|
67
80
|
- !ruby/object:Gem::Version
|
68
|
-
version: '
|
81
|
+
version: '13.0'
|
69
82
|
- !ruby/object:Gem::Dependency
|
70
|
-
name:
|
83
|
+
name: rspec
|
71
84
|
requirement: !ruby/object:Gem::Requirement
|
72
85
|
requirements:
|
73
86
|
- - "~>"
|
74
87
|
- !ruby/object:Gem::Version
|
75
|
-
version: '
|
88
|
+
version: '3.9'
|
76
89
|
type: :development
|
77
90
|
prerelease: false
|
78
91
|
version_requirements: !ruby/object:Gem::Requirement
|
79
92
|
requirements:
|
80
93
|
- - "~>"
|
81
94
|
- !ruby/object:Gem::Version
|
82
|
-
version: '
|
95
|
+
version: '3.9'
|
83
96
|
- !ruby/object:Gem::Dependency
|
84
|
-
name:
|
97
|
+
name: appraisal
|
85
98
|
requirement: !ruby/object:Gem::Requirement
|
86
99
|
requirements:
|
87
100
|
- - "~>"
|
88
101
|
- !ruby/object:Gem::Version
|
89
|
-
version: '3
|
102
|
+
version: '2.3'
|
90
103
|
type: :development
|
91
104
|
prerelease: false
|
92
105
|
version_requirements: !ruby/object:Gem::Requirement
|
93
106
|
requirements:
|
94
107
|
- - "~>"
|
95
108
|
- !ruby/object:Gem::Version
|
96
|
-
version: '3
|
109
|
+
version: '2.3'
|
97
110
|
description: Keep your backend and front-end specs in sync! The rails_edge_test gem
|
98
111
|
provides a dsl and rake task that uses your Rails app to generate json and appropriate
|
99
112
|
wrapper files for use in your front-end testing.
|
@@ -104,9 +117,11 @@ executables:
|
|
104
117
|
extensions: []
|
105
118
|
extra_rdoc_files: []
|
106
119
|
files:
|
120
|
+
- ".envrc"
|
107
121
|
- ".gitignore"
|
108
122
|
- ".rspec"
|
109
123
|
- ".travis.yml"
|
124
|
+
- Appraisals
|
110
125
|
- CHANGELOG.md
|
111
126
|
- CODE_OF_CONDUCT.md
|
112
127
|
- Gemfile
|
@@ -117,6 +132,11 @@ files:
|
|
117
132
|
- bin/console
|
118
133
|
- bin/setup
|
119
134
|
- exe/generate_edges
|
135
|
+
- gemfiles/rails_5.2.gemfile
|
136
|
+
- gemfiles/rails_5.2.gemfile.lock
|
137
|
+
- gemfiles/rails_6.0.gemfile
|
138
|
+
- gemfiles/rails_6.0.gemfile.lock
|
139
|
+
- gemfiles/rspec_6.0.gemfile.lock
|
120
140
|
- lib/rails_edge_test.rb
|
121
141
|
- lib/rails_edge_test/configuration.rb
|
122
142
|
- lib/rails_edge_test/dsl.rb
|
@@ -129,12 +149,20 @@ files:
|
|
129
149
|
- lib/rails_edge_test/printers/tree.rb
|
130
150
|
- lib/rails_edge_test/runner.rb
|
131
151
|
- lib/rails_edge_test/version.rb
|
152
|
+
- nix/.bundle/config
|
153
|
+
- nix/Gemfile
|
154
|
+
- nix/Gemfile.lock
|
155
|
+
- nix/gemset.nix
|
156
|
+
- nix/sources.json
|
157
|
+
- nix/sources.nix
|
158
|
+
- nix/update-gemset.sh
|
132
159
|
- rails_edge_test.gemspec
|
160
|
+
- shell.nix
|
133
161
|
homepage: https://github.com/NoRedInk/rails_edge_test
|
134
162
|
licenses:
|
135
163
|
- MIT
|
136
164
|
metadata: {}
|
137
|
-
post_install_message:
|
165
|
+
post_install_message:
|
138
166
|
rdoc_options: []
|
139
167
|
require_paths:
|
140
168
|
- lib
|
@@ -150,7 +178,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
150
178
|
version: '0'
|
151
179
|
requirements: []
|
152
180
|
rubygems_version: 3.0.3
|
153
|
-
signing_key:
|
181
|
+
signing_key:
|
154
182
|
specification_version: 4
|
155
183
|
summary: Generate json for front-end testing using your rails backend.
|
156
184
|
test_files: []
|