nukadoko 0.1.0

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.
data/sig/nukadoko.rbs ADDED
@@ -0,0 +1,60 @@
1
+ module Nukadoko
2
+ class Schema
3
+ def string: (Symbol, ?String, ?null: bool) -> void
4
+ def boolean: (Symbol, ?String, ?null: bool) -> void
5
+ def integer: (Symbol, ?String, ?null: bool) -> void
6
+ def number: (Symbol, ?String, ?null: bool) -> void
7
+ def strings: (Symbol, ?String, ?null: bool) -> void
8
+ def table: (Symbol, ?String, ?null: bool) -> void
9
+ def unknown: (Symbol, ?String) -> void
10
+ def enum: (Symbol, Array[String | Symbol], ?String, ?null: bool) -> void
11
+ def object: (Symbol, ?String, ?null: bool) { () [self: Schema] -> void } -> void
12
+ def field: (Symbol, Field, ?String) -> void
13
+ def []: (Symbol) -> Field
14
+
15
+ class Field
16
+ end
17
+ end
18
+
19
+ type command_result = { exitCode: Integer?, stdout: String, stderr: String }
20
+
21
+ def self.run_command: (String, ?Array[String], ?cwd: String, ?env: Hash[String | Symbol, String], ?stdin: String?) -> command_result
22
+ def self.fixture: (Symbol, ?scope: :scenario | :process) { (^(untyped) -> void, **untyped) -> void } -> untyped
23
+
24
+ class Step
25
+ def self.pattern: (String) -> String
26
+ def self.description: (String) -> String
27
+ def self.mutates: (bool) -> bool
28
+ def self.claims: (Array[Hash[Symbol, untyped]]) -> untyped
29
+ def self.poll: (untyped) -> untyped
30
+ def self.args: () { () [self: Schema] -> void } -> Schema
31
+ def self.returns: () { () [self: Schema] -> void } -> Schema
32
+ | () -> Schema
33
+ def self.from: (Hash[Symbol, untyped]) -> untyped
34
+ def self.parts: (Array[singleton(Step)]) -> Array[singleton(Step)]
35
+ end
36
+
37
+ module Engine
38
+ class Response
39
+ attr_reader status: Integer
40
+ def json: () -> untyped
41
+ def ok?: () -> bool
42
+ end
43
+
44
+ class Caller
45
+ def call: (singleton(Nukadoko::Step), ?Hash[String | Symbol, untyped], **untyped) -> untyped
46
+ end
47
+
48
+ class Scratch
49
+ def dir: (?String) -> String
50
+ end
51
+
52
+ class Request
53
+ def get: (String, ?data: untyped, ?body: String?, ?headers: Hash[String, String]) -> Response
54
+ def post: (String, ?data: untyped, ?body: String?, ?headers: Hash[String, String]) -> Response
55
+ def put: (String, ?data: untyped, ?body: String?, ?headers: Hash[String, String]) -> Response
56
+ def patch: (String, ?data: untyped, ?body: String?, ?headers: Hash[String, String]) -> Response
57
+ def delete: (String, ?data: untyped, ?body: String?, ?headers: Hash[String, String]) -> Response
58
+ end
59
+ end
60
+ end
metadata ADDED
@@ -0,0 +1,107 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: nukadoko
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.1.0
5
+ platform: ruby
6
+ authors:
7
+ - meganemura
8
+ bindir: exe
9
+ cert_chain: []
10
+ date: 1980-01-02 00:00:00.000000000 Z
11
+ dependencies:
12
+ - !ruby/object:Gem::Dependency
13
+ name: cucumber-cucumber-expressions
14
+ requirement: !ruby/object:Gem::Requirement
15
+ requirements:
16
+ - - '='
17
+ - !ruby/object:Gem::Version
18
+ version: 20.1.0
19
+ type: :runtime
20
+ prerelease: false
21
+ version_requirements: !ruby/object:Gem::Requirement
22
+ requirements:
23
+ - - '='
24
+ - !ruby/object:Gem::Version
25
+ version: 20.1.0
26
+ - !ruby/object:Gem::Dependency
27
+ name: cucumber-gherkin
28
+ requirement: !ruby/object:Gem::Requirement
29
+ requirements:
30
+ - - '='
31
+ - !ruby/object:Gem::Version
32
+ version: 42.0.1
33
+ type: :runtime
34
+ prerelease: false
35
+ version_requirements: !ruby/object:Gem::Requirement
36
+ requirements:
37
+ - - '='
38
+ - !ruby/object:Gem::Version
39
+ version: 42.0.1
40
+ - !ruby/object:Gem::Dependency
41
+ name: playwright-ruby-client
42
+ requirement: !ruby/object:Gem::Requirement
43
+ requirements:
44
+ - - '='
45
+ - !ruby/object:Gem::Version
46
+ version: 1.61.0
47
+ type: :runtime
48
+ prerelease: false
49
+ version_requirements: !ruby/object:Gem::Requirement
50
+ requirements:
51
+ - - '='
52
+ - !ruby/object:Gem::Version
53
+ version: 1.61.0
54
+ executables:
55
+ - nuka
56
+ extensions: []
57
+ extra_rdoc_files: []
58
+ files:
59
+ - CHANGELOG.md
60
+ - LICENSE
61
+ - README.ja.md
62
+ - README.md
63
+ - exe/nuka
64
+ - lib/nukadoko.rb
65
+ - lib/nukadoko/check.rb
66
+ - lib/nukadoko/claims.rb
67
+ - lib/nukadoko/cli.rb
68
+ - lib/nukadoko/command.rb
69
+ - lib/nukadoko/definition.rb
70
+ - lib/nukadoko/features.rb
71
+ - lib/nukadoko/fixtures.rb
72
+ - lib/nukadoko/parts.rb
73
+ - lib/nukadoko/pattern.rb
74
+ - lib/nukadoko/poll.rb
75
+ - lib/nukadoko/program.rb
76
+ - lib/nukadoko/project_fixtures.rb
77
+ - lib/nukadoko/run.rb
78
+ - lib/nukadoko/schema.rb
79
+ - lib/nukadoko/signature.rb
80
+ - lib/nukadoko/step.rb
81
+ - lib/nukadoko/table.rb
82
+ - lib/nukadoko/version.rb
83
+ - lib/nukadoko/vocabulary.rb
84
+ - sig/nukadoko.rbs
85
+ homepage: https://github.com/meganemura/nukadoko
86
+ licenses:
87
+ - MIT
88
+ metadata: {}
89
+ rdoc_options: []
90
+ require_paths:
91
+ - lib
92
+ required_ruby_version: !ruby/object:Gem::Requirement
93
+ requirements:
94
+ - - ">="
95
+ - !ruby/object:Gem::Version
96
+ version: '3.4'
97
+ required_rubygems_version: !ruby/object:Gem::Requirement
98
+ requirements:
99
+ - - ">="
100
+ - !ruby/object:Gem::Version
101
+ version: '0'
102
+ requirements: []
103
+ rubygems_version: 3.6.9
104
+ specification_version: 4
105
+ summary: Typed step contracts for Gherkin in Ruby, so a scenario can be told wrong
106
+ before it runs.
107
+ test_files: []