summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJunegunn Choi <junegunn.c@gmail.com>2021-01-13 10:52:15 +0900
committerJunegunn Choi <junegunn.c@gmail.com>2021-01-13 19:10:24 +0900
commite922704f72e1ca6d5c400cc0b741155b636c8e1e (patch)
tree09df0faddbfa6791b6be006031c90f0f5c5599a8
parentc6115735c71d4952de128f983858170d5cc15ea6 (diff)
Migrate to GitHub Actions
-rw-r--r--.github/workflows/linux.yml47
-rw-r--r--.github/workflows/macos.yml44
-rw-r--r--.travis.yml28
-rw-r--r--src/history_test.go5
-rwxr-xr-xtest/test_go.rb9
5 files changed, 96 insertions, 37 deletions
diff --git a/.github/workflows/linux.yml b/.github/workflows/linux.yml
new file mode 100644
index 00000000..f8db7dc9
--- /dev/null
+++ b/.github/workflows/linux.yml
@@ -0,0 +1,47 @@
+---
+name: Test fzf on Linux
+
+on:
+ push:
+ branches: [ master, devel ]
+ pull_request:
+ branches: [ master ]
+
+jobs:
+ build:
+ runs-on: ubuntu-latest
+ strategy:
+ matrix:
+ go: [1.14, 1.15]
+ steps:
+ - uses: actions/checkout@v2
+ with:
+ fetch-depth: 0
+
+ - name: Set up Go
+ uses: actions/setup-go@v2
+ with:
+ go-version: ${{ matrix.go }}
+
+ - name: fish-actions/install-fish
+ uses: fish-actions/install-fish@v1.0.0
+
+ - name: Setup Ruby
+ uses: ruby/setup-ruby@v1.62.0
+ with:
+ ruby-version: 3.0.0
+
+ - name: Install packages
+ run: sudo apt-get install --yes zsh tmux
+
+ - name: Install Ruby gems
+ run: sudo gem install --no-document minitest:5.14.2 rubocop:1.0.0 rubocop-minitest:0.10.1 rubocop-performance:1.8.1
+
+ - name: Rubocop
+ run: rubocop --require rubocop-minitest --require rubocop-performance
+
+ - name: Unit test
+ run: make test
+
+ - name: Integration test
+ run: make install && ./install --all && LC_ALL=C tmux new-session -d && ruby test/test_go.rb --verbose
diff --git a/.github/workflows/macos.yml b/.github/workflows/macos.yml
new file mode 100644
index 00000000..46ab6c2f
--- /dev/null
+++ b/.github/workflows/macos.yml
@@ -0,0 +1,44 @@
+---
+name: Test fzf on macOS
+
+on:
+ push:
+ branches: [ master, devel ]
+ pull_request:
+ branches: [ master ]
+
+jobs:
+ build:
+ runs-on: macos-latest
+ strategy:
+ matrix:
+ go: [1.14, 1.15]
+ steps:
+ - uses: actions/checkout@v2
+ with:
+ fetch-depth: 0
+
+ - name: Set up Go
+ uses: actions/setup-go@v2
+ with:
+ go-version: ${{ matrix.go }}
+
+ - name: Setup Ruby
+ uses: ruby/setup-ruby@v1.62.0
+ with:
+ ruby-version: 3.0.0
+
+ - name: Install packages
+ run: HOMEBREW_NO_INSTALL_CLEANUP=1 brew install fish zsh tmux
+
+ - name: Install Ruby gems
+ run: gem install --no-document minitest:5.14.2 rubocop:1.0.0 rubocop-minitest:0.10.1 rubocop-performance:1.8.1
+
+ - name: Rubocop
+ run: rubocop --require rubocop-minitest --require rubocop-performance
+
+ - name: Unit test
+ run: make test
+
+ - name: Integration test
+ run: make install && ./install --all && LC_ALL=C tmux new-session -d && ruby test/test_go.rb --verbose
diff --git a/.travis.yml b/.travis.yml
deleted file mode 100644
index 40898c8f..00000000
--- a/.travis.yml
+++ /dev/null
@@ -1,28 +0,0 @@
-language: go
-go:
- - "1.14"
-env: GO111MODULE=on
-os:
- - linux
- - osx
-dist: bionic
-osx_image: xcode12.2
-addons:
- apt:
- packages:
- - fish
- - zsh
- sources:
- sourceline: ppa:fish-shell/release-3
- homebrew:
- packages:
- - fish
- - tmux
-install: gem install --no-document minitest:5.14.2 rubocop:1.0.0 rubocop-minitest:0.10.1 rubocop-performance:1.8.1
-script:
- - make test
- # LC_ALL=C to avoid escape codes in
- # printf %q $'\355\205\214\354\212\244\355\212\270' on macOS. Bash on
- # macOS is built without HANDLE_MULTIBYTE?
- - make install && ./install --all && LC_ALL=C tmux new-session -d && ruby test/test_go.rb --verbose
- - rubocop --require rubocop-minitest --require rubocop-performance
diff --git a/src/history_test.go b/src/history_test.go
index 0a014138..6294bde8 100644
--- a/src/history_test.go
+++ b/src/history_test.go
@@ -3,7 +3,6 @@ package fzf
import (
"io/ioutil"
"os"
- "os/user"
"runtime"
"testing"
)
@@ -12,16 +11,12 @@ func TestHistory(t *testing.T) {
maxHistory := 50
// Invalid arguments
- user, _ := user.Current()
var paths []string
if runtime.GOOS == "windows" {
// GOPATH should exist, so we shouldn't be able to override it
paths = []string{os.Getenv("GOPATH")}
} else {
paths = []string{"/etc", "/proc"}
- if user.Name != "root" {
- paths = append(paths, "/etc/sudoers")
- }
}
for _, path := range paths {
diff --git a/test/test_go.rb b/test/test_go.rb
index aa28e1ce..142b2d1a 100755
--- a/test/test_go.rb
+++ b/test/test_go.rb
@@ -148,14 +148,15 @@ class Tmux
def prepare
tries = 0
begin
- self.until do |lines|
- send_keys ' ', 'C-u', :Enter, 'hello', :Left, :Right
- lines[-1] == 'hello'
+ self.until(true) do |lines|
+ message = "Prepare[#{tries}]"
+ send_keys ' ', 'C-u', :Enter, message, :Left, :Right
+ lines[-1] == message
end
rescue Minitest::Assertion
(tries += 1) < 5 ? retry : raise
end
- send_keys 'C-u'
+ send_keys 'C-u', 'C-l'
end
private