speculate_about 1.0.6 → 1.1.1
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/lib/speculations/cli.rb +1 -0
- data/lib/speculations/version.rb +1 -1
- data/lib/speculations.rb +25 -3
- metadata +4 -7
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 7868260e0662a461c5c24efa28c175ded0562772e8d6da88a434dcbc323ef494
|
4
|
+
data.tar.gz: dffa0f2475fc381275a1d4090e3872b9f38ca199c6bd69a78e8ac229a614b326
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: d59efce2df52aaf3a3e7185c73fdd8969132a5b357f6ec0b7bf589c1433c51a69d44d77b914a5ba284500bbf363531707ecd0f623f1e7e53fa101fb2c9308600
|
7
|
+
data.tar.gz: 4043d9e4922d63202b29efee2aabfea64367901ebaca7fc9e58da0436bbd202798bd335864e544c3029f57b8a8af2e9eb303cec9a6d24e871f850142c5e98e7b
|
data/lib/speculations/cli.rb
CHANGED
data/lib/speculations/version.rb
CHANGED
data/lib/speculations.rb
CHANGED
@@ -3,6 +3,9 @@ require_relative 'debugging'
|
|
3
3
|
require_relative 'speculations/parser'
|
4
4
|
module Speculations extend self
|
5
5
|
|
6
|
+
HELPER_FILE = 'speculations_helper'
|
7
|
+
HELPER_PATH = "spec/#{HELPER_FILE}.rb"
|
8
|
+
|
6
9
|
DISCLAIMER = <<-EOD
|
7
10
|
# DO NOT EDIT!!!
|
8
11
|
# This file was generated from FILENAME with the speculate_about gem, if you modify this file
|
@@ -32,12 +35,17 @@ module Speculations extend self
|
|
32
35
|
def _compile(infile:, outfile:, debug:)
|
33
36
|
ast = Speculations::Parser.new.parse_from_file(infile, debug:)
|
34
37
|
code = _decorated_ast_code ast, infile
|
35
|
-
File.write(outfile, code.join("\n"))
|
38
|
+
File.write(outfile, code.join("\n")) if code
|
36
39
|
end
|
37
40
|
|
38
41
|
def _decorated_ast_code ast, filename
|
39
|
-
|
40
|
-
|
42
|
+
code = ast.to_code
|
43
|
+
return if code.empty?
|
44
|
+
|
45
|
+
[
|
46
|
+
disclaimer(filename),
|
47
|
+
%{RSpec.describe #{filename.inspect} do}
|
48
|
+
] + code + ["end"]
|
41
49
|
end
|
42
50
|
|
43
51
|
def _out_of_date?(outf, inf)
|
@@ -52,5 +60,19 @@ module Speculations extend self
|
|
52
60
|
rspec = File.basename(file, ".md")
|
53
61
|
File.join(dest_dir, "#{rspec}_spec.rb")
|
54
62
|
end
|
63
|
+
|
64
|
+
def disclaimer(filename)
|
65
|
+
DISCLAIMER
|
66
|
+
.gsub("FILENAME", filename.inspect).split("\n") +
|
67
|
+
require_speculations_helper
|
68
|
+
end
|
69
|
+
|
70
|
+
def require_speculations_helper
|
71
|
+
if File.readable?(HELPER_PATH)
|
72
|
+
["require #{HELPER_FILE.inspect}"]
|
73
|
+
else
|
74
|
+
[]
|
75
|
+
end
|
76
|
+
end
|
55
77
|
end
|
56
78
|
# SPDX-License-Identifier: Apache-2.0
|
metadata
CHANGED
@@ -1,14 +1,13 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: speculate_about
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.
|
4
|
+
version: 1.1.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Robert Dober
|
8
|
-
autorequire:
|
9
8
|
bindir: bin
|
10
9
|
cert_chain: []
|
11
|
-
date:
|
10
|
+
date: 2025-06-02 00:00:00.000000000 Z
|
12
11
|
dependencies: []
|
13
12
|
description: Allows Markdown or other text files to be used as literal specs, à la
|
14
13
|
Elixir doctest, but from any file.
|
@@ -39,7 +38,6 @@ homepage: https://codeberg.org/lab419/speculate_about
|
|
39
38
|
licenses:
|
40
39
|
- AGPL-3.0-or-later
|
41
40
|
metadata: {}
|
42
|
-
post_install_message:
|
43
41
|
rdoc_options: []
|
44
42
|
require_paths:
|
45
43
|
- lib
|
@@ -47,15 +45,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
47
45
|
requirements:
|
48
46
|
- - ">="
|
49
47
|
- !ruby/object:Gem::Version
|
50
|
-
version: 3.
|
48
|
+
version: 3.4.1
|
51
49
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
52
50
|
requirements:
|
53
51
|
- - ">="
|
54
52
|
- !ruby/object:Gem::Version
|
55
53
|
version: '0'
|
56
54
|
requirements: []
|
57
|
-
rubygems_version: 3.
|
58
|
-
signing_key:
|
55
|
+
rubygems_version: 3.6.8
|
59
56
|
specification_version: 4
|
60
57
|
summary: Extract RSpecs from Markdown
|
61
58
|
test_files: []
|