air_test 0.1.3 โ 0.1.4
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/README.md +0 -6
- data/lib/air_test/engine.rb +10 -0
- data/lib/air_test/version.rb +1 -1
- data/lib/air_test.rb +10 -0
- data/lib/tasks/air_test.rake +27 -3
- metadata +46 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 2de3a0976d4d5aa40c6178ca21af1d429b059106f0184d797c5a3dbf36c546f1
|
4
|
+
data.tar.gz: 4587d75cecbdabd22e760e6fcfa28b6c1cd9ebb12d2eb156414b11740666e40c
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 0e60e1d94293c77fe912a7017145c3331dec7b18c0aae9ba65c4b71436f662d96f43c46185fc3acdbf4981c023b7949db0cae61bbf0a469753b8d6c11f2178e4
|
7
|
+
data.tar.gz: 79b532e0af0ed9923a571fb5013c13171174eabee415f0a7123a60ebcd4388873259f436b7954cc0518ddba1e3af688a2d0b7c0ad5b6e38859154da3914ae536
|
data/README.md
CHANGED
@@ -95,12 +95,6 @@ GITHUB_BOT_TOKEN=ghp_xxx
|
|
95
95
|
|
96
96
|
---
|
97
97
|
|
98
|
-
## ๐งช Tests (optional)
|
99
|
-
|
100
|
-
If you want to test the gemโs services, you can add specs in the `spec/` folder.
|
101
|
-
|
102
|
-
---
|
103
|
-
|
104
98
|
## ๐ Troubleshooting
|
105
99
|
|
106
100
|
- **Notion or GitHub authentication error**: check your tokens.
|
@@ -0,0 +1,10 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module AirTest
|
4
|
+
class Engine < ::Rails::Engine
|
5
|
+
# This ensures that the Rake tasks are automatically loaded when the gem is included in a Rails app
|
6
|
+
rake_tasks do
|
7
|
+
load File.expand_path("tasks/air_test.rake", __dir__)
|
8
|
+
end
|
9
|
+
end
|
10
|
+
end
|
data/lib/air_test/version.rb
CHANGED
data/lib/air_test.rb
CHANGED
@@ -11,3 +11,13 @@ module AirTest
|
|
11
11
|
yield(configuration)
|
12
12
|
end
|
13
13
|
end
|
14
|
+
|
15
|
+
require_relative "air_test/version"
|
16
|
+
require_relative "air_test/configuration"
|
17
|
+
require_relative "air_test/notion_parser"
|
18
|
+
require_relative "air_test/spec_generator"
|
19
|
+
require_relative "air_test/github_client"
|
20
|
+
require_relative "air_test/runner"
|
21
|
+
|
22
|
+
# Load Rails engine if Rails is available (for Rake task support)
|
23
|
+
require_relative "air_test/engine" if defined?(Rails)
|
data/lib/tasks/air_test.rake
CHANGED
@@ -1,9 +1,33 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
3
|
namespace :air_test do
|
4
|
-
desc "Generate specs and PR from Notion"
|
5
|
-
task generate_specs_from_notion: :environment do
|
4
|
+
desc "Generate specs and PR from Notion tickets"
|
5
|
+
task :generate_specs_from_notion, [:limit] => :environment do |_task, args|
|
6
6
|
require "air_test/runner"
|
7
|
-
|
7
|
+
|
8
|
+
limit = (args[:limit] || 5).to_i
|
9
|
+
puts "๐ Starting AirTest with limit: #{limit}"
|
10
|
+
|
11
|
+
begin
|
12
|
+
runner = AirTest::Runner.new
|
13
|
+
runner.run(limit: limit)
|
14
|
+
puts "โ
AirTest completed successfully!"
|
15
|
+
rescue StandardError => e
|
16
|
+
puts "โ AirTest failed: #{e.message}"
|
17
|
+
puts e.backtrace.first(5).join("\n")
|
18
|
+
exit 1
|
19
|
+
end
|
20
|
+
end
|
21
|
+
|
22
|
+
desc "Show AirTest configuration"
|
23
|
+
task config: :environment do
|
24
|
+
require "air_test/configuration"
|
25
|
+
|
26
|
+
config = AirTest.configuration
|
27
|
+
puts "๐ง AirTest Configuration:"
|
28
|
+
puts " Notion Token: #{config.notion_token ? "Set" : "Not set"}"
|
29
|
+
puts " Notion Database ID: #{config.notion_database_id || "Not set"}"
|
30
|
+
puts " GitHub Token: #{config.github_token ? "Set" : "Not set"}"
|
31
|
+
puts " Repository: #{config.repo || "Not set"}"
|
8
32
|
end
|
9
33
|
end
|
metadata
CHANGED
@@ -1,14 +1,56 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: air_test
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.4
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- julien bouland
|
8
8
|
bindir: exe
|
9
9
|
cert_chain: []
|
10
|
-
date: 2025-07-
|
11
|
-
dependencies:
|
10
|
+
date: 2025-07-19 00:00:00.000000000 Z
|
11
|
+
dependencies:
|
12
|
+
- !ruby/object:Gem::Dependency
|
13
|
+
name: rails
|
14
|
+
requirement: !ruby/object:Gem::Requirement
|
15
|
+
requirements:
|
16
|
+
- - ">="
|
17
|
+
- !ruby/object:Gem::Version
|
18
|
+
version: '6.0'
|
19
|
+
type: :runtime
|
20
|
+
prerelease: false
|
21
|
+
version_requirements: !ruby/object:Gem::Requirement
|
22
|
+
requirements:
|
23
|
+
- - ">="
|
24
|
+
- !ruby/object:Gem::Version
|
25
|
+
version: '6.0'
|
26
|
+
- !ruby/object:Gem::Dependency
|
27
|
+
name: faraday-retry
|
28
|
+
requirement: !ruby/object:Gem::Requirement
|
29
|
+
requirements:
|
30
|
+
- - "~>"
|
31
|
+
- !ruby/object:Gem::Version
|
32
|
+
version: '2.0'
|
33
|
+
type: :runtime
|
34
|
+
prerelease: false
|
35
|
+
version_requirements: !ruby/object:Gem::Requirement
|
36
|
+
requirements:
|
37
|
+
- - "~>"
|
38
|
+
- !ruby/object:Gem::Version
|
39
|
+
version: '2.0'
|
40
|
+
- !ruby/object:Gem::Dependency
|
41
|
+
name: octokit
|
42
|
+
requirement: !ruby/object:Gem::Requirement
|
43
|
+
requirements:
|
44
|
+
- - "~>"
|
45
|
+
- !ruby/object:Gem::Version
|
46
|
+
version: '7.0'
|
47
|
+
type: :runtime
|
48
|
+
prerelease: false
|
49
|
+
version_requirements: !ruby/object:Gem::Requirement
|
50
|
+
requirements:
|
51
|
+
- - "~>"
|
52
|
+
- !ruby/object:Gem::Version
|
53
|
+
version: '7.0'
|
12
54
|
description: Automate the generation of Turnip/RSpec specs from Notion tickets, create
|
13
55
|
branches, commits, pushes, and GitHub Pull Requests. All with a single Rake command.
|
14
56
|
email:
|
@@ -28,6 +70,7 @@ files:
|
|
28
70
|
- exe/air_test
|
29
71
|
- lib/air_test.rb
|
30
72
|
- lib/air_test/configuration.rb
|
73
|
+
- lib/air_test/engine.rb
|
31
74
|
- lib/air_test/github_client.rb
|
32
75
|
- lib/air_test/notion_parser.rb
|
33
76
|
- lib/air_test/runner.rb
|