Skip to content

Commit 49499ff

Browse files
authored
Test more rubies (#43)
* Test more rubies * Group gems * Update Gemfile.lock * Update pipe.test.rb * Update quickdraw.test.rb
1 parent d9486d0 commit 49499ff

File tree

5 files changed

+48
-29
lines changed

5 files changed

+48
-29
lines changed

.github/workflows/ruby.yml

Lines changed: 22 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -6,25 +6,33 @@ on:
66
pull_request:
77
branches: ["main"]
88

9+
permissions:
10+
contents: read
11+
912
jobs:
10-
lint:
11-
runs-on: ubuntu-latest
12-
steps:
13-
- uses: actions/checkout@v4
14-
- uses: ruby/setup-ruby@v1
15-
with:
16-
ruby-version: ruby
17-
bundler-cache: true
18-
- run: bundle exec rubocop
13+
ruby-versions:
14+
uses: ruby/actions/.github/workflows/ruby_versions.yml@3fbf038d6f0d8043b914f923764c61bc2a114a77
15+
with:
16+
engine: all
17+
min_version: 3.1
18+
1919
test:
20+
needs: ruby-versions
2021
runs-on: ubuntu-latest
2122
strategy:
23+
fail-fast: false
2224
matrix:
23-
ruby-version: ["3.1", "3.2", "3.3"]
25+
ruby-version: ${{ fromJson(needs.ruby-versions.outputs.versions) }}
26+
2427
steps:
25-
- uses: actions/checkout@v4
26-
- uses: ruby/setup-ruby@v1
28+
- uses: actions/checkout@v3
29+
- name: Set up Ruby
30+
uses: ruby/setup-ruby@v1
2731
with:
2832
ruby-version: ${{ matrix.ruby-version }}
29-
bundler-cache: true
30-
- run: bundle exec qt
33+
bundler-cache: true # runs 'bundle install' and caches installed gems automatically
34+
bundler-args: --without development
35+
- name: Run Rubocop
36+
run: bundle exec rubocop
37+
- name: Quickdraw tests
38+
run: bundle exec qt

Gemfile

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -5,8 +5,10 @@ source "https://rubygems.org"
55
# Specify your gem's dependencies in quickdraw.gemspec
66
gemspec
77

8-
gem "rubocop"
9-
gem "rspec-expectations"
10-
gem "minitest"
11-
gem "sus"
12-
gem "covered"
8+
group :development do
9+
gem "rubocop"
10+
gem "rspec-expectations"
11+
gem "minitest"
12+
gem "sus"
13+
gem "covered"
14+
end

Gemfile.lock

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,14 +18,17 @@ GEM
1818
fiber-annotation (0.2.0)
1919
fiber-local (1.0.0)
2020
json (2.7.2)
21+
json (2.7.2-java)
2122
language_server-protocol (3.17.0.3)
2223
minitest (5.22.3)
2324
msgpack (1.7.2)
25+
msgpack (1.7.2-java)
2426
parallel (1.25.1)
2527
parser (3.3.3.0)
2628
ast (~> 2.4.1)
2729
racc
2830
racc (1.8.0)
31+
racc (1.8.0-java)
2932
rainbow (3.1.1)
3033
regexp_parser (2.9.2)
3134
rexml (3.3.0)
@@ -49,11 +52,13 @@ GEM
4952
parser (>= 3.3.1.0)
5053
ruby-progressbar (1.13.0)
5154
strscan (3.1.0)
55+
strscan (3.1.0-java)
5256
sus (0.24.6)
5357
unicode-display_width (2.5.0)
5458

5559
PLATFORMS
5660
arm64-darwin
61+
universal-java-11
5762
x86_64-linux
5863

5964
DEPENDENCIES

test/pipe.test.rb

Lines changed: 10 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,17 @@
11
# frozen_string_literal: true
22

3-
test "with_reader and with_writer" do
4-
pipe = Quickdraw::Pipe.new
3+
if Process.respond_to?(:fork)
4+
test "with_reader and with_writer" do
5+
pipe = Quickdraw::Pipe.new
56

6-
Process.fork do
7-
pipe.with_writer do |writer|
8-
writer.write "Hello, world!"
7+
Process.fork do
8+
pipe.with_writer do |writer|
9+
writer.write "Hello, world!"
10+
end
911
end
10-
end
1112

12-
pipe.with_reader do |reader|
13-
expect(reader.read) == "Hello, world!"
13+
pipe.with_reader do |reader|
14+
expect(reader.read) == "Hello, world!"
15+
end
1416
end
1517
end

test/quickdraw.test.rb

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -50,6 +50,8 @@ def self.bar
5050
class Foo
5151
end
5252

53-
test do
54-
expect(Foo.name) == "Quickdraw::Context(in ./test/quickdraw.test.rb)::Foo"
53+
if respond_to?(:set_temporary_name)
54+
test do
55+
expect(Foo.name) == "Quickdraw::Context(in ./test/quickdraw.test.rb)::Foo"
56+
end
5557
end

0 commit comments

Comments
 (0)