Compare commits
6 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 851f53194e | |||
| d3a709c4d3 | |||
| 0b75a47750 | |||
| 4fcc72078b | |||
| 9b4755e822 | |||
| 9c574fd760 |
+27
-10
@@ -1,29 +1,46 @@
|
|||||||
name: Ruby Build
|
name: Ruby Build
|
||||||
on: [push, pull_request]
|
on: [push, pull_request]
|
||||||
jobs:
|
jobs:
|
||||||
build:
|
jruby_build:
|
||||||
|
name: JRuby (${{ matrix.ruby }})
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
strategy:
|
strategy:
|
||||||
matrix:
|
matrix:
|
||||||
ruby: [2.4.0, 2.6.0, 3.0.0, jruby-9.2.18.0]
|
ruby: [jruby-9.2.18]
|
||||||
steps:
|
steps:
|
||||||
- run: echo "The job was automatically triggered by a ${{ github.event_name }} event."
|
|
||||||
- run: echo "This job is now running on a ${{ runner.os }} server hosted by GitHub!"
|
|
||||||
- run: echo "The name of your branch is ${{ github.ref }} and your repository is ${{ github.repository }}."
|
|
||||||
- name: Check out repository code
|
- name: Check out repository code
|
||||||
uses: actions/checkout@v2
|
uses: actions/checkout@v2
|
||||||
- run: echo "The ${{ github.repository }} repository has been cloned to the runner."
|
|
||||||
- run: echo "The workflow is now ready to test your code on the runner."
|
|
||||||
- name: List files in the repository
|
- name: List files in the repository
|
||||||
run: |
|
run: |
|
||||||
ls ${{ github.workspace }}
|
ls ${{ github.workspace }}
|
||||||
- uses: actions/setup-java@v2
|
- name: Set up Java
|
||||||
|
uses: actions/setup-java@v2
|
||||||
with:
|
with:
|
||||||
distribution: 'adopt'
|
distribution: 'adopt'
|
||||||
java-version: '11'
|
java-version: '11'
|
||||||
- uses: ruby/setup-ruby@v1
|
- name: Set up Ruby
|
||||||
|
uses: ruby/setup-ruby@v1
|
||||||
with:
|
with:
|
||||||
ruby-version: ${{ matrix.ruby }}
|
ruby-version: ${{ matrix.ruby }}
|
||||||
bundler-cache: true
|
bundler-cache: true
|
||||||
- name: exec rake
|
- name: Run tests
|
||||||
|
run: bundle exec rake
|
||||||
|
mri_build:
|
||||||
|
name: Ruby (${{ matrix.ruby }})
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
strategy:
|
||||||
|
matrix:
|
||||||
|
ruby: [2.6, 2.7, 3.0]
|
||||||
|
steps:
|
||||||
|
- name: Check out repository code
|
||||||
|
uses: actions/checkout@v2
|
||||||
|
- name: List files in the repository
|
||||||
|
run: |
|
||||||
|
ls ${{ github.workspace }}
|
||||||
|
- name: Set up Ruby
|
||||||
|
uses: ruby/setup-ruby@v1
|
||||||
|
with:
|
||||||
|
ruby-version: ${{ matrix.ruby }}
|
||||||
|
bundler-cache: true
|
||||||
|
- name: Run tests
|
||||||
run: bundle exec rake
|
run: bundle exec rake
|
||||||
|
|||||||
@@ -1,9 +1,26 @@
|
|||||||
source 'https://rubygems.org'
|
source 'https://rubygems.org'
|
||||||
|
|
||||||
if RUBY_PLATFORM == 'java'
|
gem 'warbler', platforms: :jruby
|
||||||
gem 'warbler'
|
|
||||||
end
|
# FIXME:
|
||||||
|
#
|
||||||
|
# There's an issue in 1.12.5 that causes XHTML elements to be generated badly,
|
||||||
|
# causing Gollum's test suite to fail.[1] The issue has been fixed upstream,
|
||||||
|
# but we're still waiting for a new Nokogiri point release.
|
||||||
|
#
|
||||||
|
# However, 1.12.5 is a security patch, so we don't want end users to use an
|
||||||
|
# older version of Nokogiri. But this is safe to do in our CI environment.
|
||||||
|
#
|
||||||
|
# Once there's a new Nokogiri release, we can remove this dependency and JRuby
|
||||||
|
# CI should pass normally again.
|
||||||
|
#
|
||||||
|
# Note that Nokogiri 1.11+ does not support Ruby v2.4.x anymore. So to make our
|
||||||
|
# current CI workflows pass, we should only try to install this version of
|
||||||
|
# Nokogiri for newer Ruby versions.
|
||||||
|
#
|
||||||
|
# [1]: https://github.com/gollum/gollum/issues/1779
|
||||||
|
gem 'nokogiri', '1.12.4' unless RUBY_VERSION.include? '2.4'
|
||||||
|
|
||||||
gemspec
|
gemspec
|
||||||
|
|
||||||
gem 'rake', '~> 13.0'
|
gem 'rake', '~> 13.0'
|
||||||
|
|||||||
@@ -44,7 +44,6 @@ Gem::Specification.new do |s|
|
|||||||
s.add_development_dependency 'rack-test', '~> 0.6.3'
|
s.add_development_dependency 'rack-test', '~> 0.6.3'
|
||||||
s.add_development_dependency 'shoulda', '~> 3.6.0'
|
s.add_development_dependency 'shoulda', '~> 3.6.0'
|
||||||
s.add_development_dependency 'minitest-reporters', '~> 1.3.6'
|
s.add_development_dependency 'minitest-reporters', '~> 1.3.6'
|
||||||
s.add_development_dependency 'twitter_cldr', '~> 3.2.0'
|
|
||||||
s.add_development_dependency 'mocha', '~> 1.8.0'
|
s.add_development_dependency 'mocha', '~> 1.8.0'
|
||||||
s.add_development_dependency 'test-unit', '~> 3.3.0'
|
s.add_development_dependency 'test-unit', '~> 3.3.0'
|
||||||
|
|
||||||
|
|||||||
+1
-1
@@ -1 +1 @@
|
|||||||
{"files":{"app-f05401ee374f0c7f48fc2bc08e30b4f4db705861fd5895ed70998683b383bfb5.js":{"logical_path":"app.js","mtime":"2021-07-10T00:40:20+09:00","size":136040,"digest":"f05401ee374f0c7f48fc2bc08e30b4f4db705861fd5895ed70998683b383bfb5","integrity":"sha256-8FQB7jdPDH9I/CvAjjC09NtwWGH9WJXtcJmGg7ODv7U="},"editor-9881d0c7ae663293f0e3a7e72729eec7e940fa613185c076709b76d292f5703a.js":{"logical_path":"editor.js","mtime":"2021-07-10T00:42:29+09:00","size":744886,"digest":"9881d0c7ae663293f0e3a7e72729eec7e940fa613185c076709b76d292f5703a","integrity":"sha256-mIHQx65mMpPw46fnJynux+lA+mExhcB2cJt20pL1cDo="},"app-cb122b4c17500faa5e013cb43334fafcf2dd7d72f694b06d9616f8b33fefb694.css":{"logical_path":"app.css","mtime":"2021-07-10T00:39:36+09:00","size":396625,"digest":"cb122b4c17500faa5e013cb43334fafcf2dd7d72f694b06d9616f8b33fefb694","integrity":"sha256-yxIrTBdQD6peATy0MzT6/PLdfXL2lLBtlhb4sz/vtpQ="},"criticmarkup-31ae5d3282bbb8e7b7c3c9917e9fb68e3315a6b4a75da6cec48d21b8846905c4.css":{"logical_path":"criticmarkup.css","mtime":"2021-07-08T05:19:03+09:00","size":646,"digest":"31ae5d3282bbb8e7b7c3c9917e9fb68e3315a6b4a75da6cec48d21b8846905c4","integrity":"sha256-Ma5dMoK7uOe3w8mRfp+2jjMVprSnXabOxI0huIRpBcQ="},"print-512498c368be0d3fb1ba105dfa84289ae48380ec9fcbef948bd4e23b0b095bfb.css":{"logical_path":"print.css","mtime":"2021-07-08T05:19:03+09:00","size":75,"digest":"512498c368be0d3fb1ba105dfa84289ae48380ec9fcbef948bd4e23b0b095bfb","integrity":"sha256-USSYw2i+DT+xuhBd+oQomuSDgOyfy++Ui9TiOwsJW/s="}},"assets":{"app.js":"app-f05401ee374f0c7f48fc2bc08e30b4f4db705861fd5895ed70998683b383bfb5.js","editor.js":"editor-9881d0c7ae663293f0e3a7e72729eec7e940fa613185c076709b76d292f5703a.js","app.css":"app-cb122b4c17500faa5e013cb43334fafcf2dd7d72f694b06d9616f8b33fefb694.css","criticmarkup.css":"criticmarkup-31ae5d3282bbb8e7b7c3c9917e9fb68e3315a6b4a75da6cec48d21b8846905c4.css","print.css":"print-512498c368be0d3fb1ba105dfa84289ae48380ec9fcbef948bd4e23b0b095bfb.css"}}
|
{"files":{"app-f05401ee374f0c7f48fc2bc08e30b4f4db705861fd5895ed70998683b383bfb5.js":{"logical_path":"app.js","mtime":"2021-11-15T20:08:30-08:00","size":136040,"digest":"f05401ee374f0c7f48fc2bc08e30b4f4db705861fd5895ed70998683b383bfb5","integrity":"sha256-8FQB7jdPDH9I/CvAjjC09NtwWGH9WJXtcJmGg7ODv7U="},"editor-9881d0c7ae663293f0e3a7e72729eec7e940fa613185c076709b76d292f5703a.js":{"logical_path":"editor.js","mtime":"2021-11-15T20:08:30-08:00","size":744886,"digest":"9881d0c7ae663293f0e3a7e72729eec7e940fa613185c076709b76d292f5703a","integrity":"sha256-mIHQx65mMpPw46fnJynux+lA+mExhcB2cJt20pL1cDo="},"app-309be032396e783b13a47df58f389b7c8e11c2b2d42640560b874f677c25f6e5.css":{"logical_path":"app.css","mtime":"2021-11-15T20:08:30-08:00","size":396731,"digest":"309be032396e783b13a47df58f389b7c8e11c2b2d42640560b874f677c25f6e5","integrity":"sha256-MJvgMjlueDsTpH31jzibfI4RwrLUJkBWC4dPZ3wl9uU="},"criticmarkup-31ae5d3282bbb8e7b7c3c9917e9fb68e3315a6b4a75da6cec48d21b8846905c4.css":{"logical_path":"criticmarkup.css","mtime":"2021-08-22T15:24:51-07:00","size":646,"digest":"31ae5d3282bbb8e7b7c3c9917e9fb68e3315a6b4a75da6cec48d21b8846905c4","integrity":"sha256-Ma5dMoK7uOe3w8mRfp+2jjMVprSnXabOxI0huIRpBcQ="},"print-512498c368be0d3fb1ba105dfa84289ae48380ec9fcbef948bd4e23b0b095bfb.css":{"logical_path":"print.css","mtime":"2021-08-22T15:24:51-07:00","size":75,"digest":"512498c368be0d3fb1ba105dfa84289ae48380ec9fcbef948bd4e23b0b095bfb","integrity":"sha256-USSYw2i+DT+xuhBd+oQomuSDgOyfy++Ui9TiOwsJW/s="}},"assets":{"app.js":"app-f05401ee374f0c7f48fc2bc08e30b4f4db705861fd5895ed70998683b383bfb5.js","editor.js":"editor-9881d0c7ae663293f0e3a7e72729eec7e940fa613185c076709b76d292f5703a.js","app.css":"app-309be032396e783b13a47df58f389b7c8e11c2b2d42640560b874f677c25f6e5.css","criticmarkup.css":"criticmarkup-31ae5d3282bbb8e7b7c3c9917e9fb68e3315a6b4a75da6cec48d21b8846905c4.css","print.css":"print-512498c368be0d3fb1ba105dfa84289ae48380ec9fcbef948bd4e23b0b095bfb.css"}}
|
||||||
+1
-1
File diff suppressed because one or more lines are too long
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
@@ -510,6 +510,14 @@ a {
|
|||||||
border: none;
|
border: none;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#head .header-title {
|
||||||
|
font-size: 1.5em;
|
||||||
|
|
||||||
|
@include largemobile-breakpoint {
|
||||||
|
font-size: 32px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/* Highlights */
|
/* Highlights */
|
||||||
|
|
||||||
.highlight {
|
.highlight {
|
||||||
|
|||||||
@@ -1,6 +1,8 @@
|
|||||||
<div id="wiki-wrapper" class="compare">
|
<div id="wiki-wrapper" class="compare">
|
||||||
<div id="head">
|
<div id="head">
|
||||||
<h1 class="py-4">{{message}}</h1>
|
<h1 class="header-title text-center text-md-left py-4">
|
||||||
|
{{message}}
|
||||||
|
</h1>
|
||||||
{{author}} commited {{authored_date}}
|
{{author}} commited {{authored_date}}
|
||||||
<span class="px-2 float-right">commit <code>{{version}}</code></span>
|
<span class="px-2 float-right">commit <code>{{version}}</code></span>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
@@ -1,8 +1,14 @@
|
|||||||
<div id="wiki-wrapper" class="compare">
|
<div id="wiki-wrapper" class="compare">
|
||||||
<div id="head">
|
<div id="head">
|
||||||
{{>navbar}}
|
{{>navbar}}
|
||||||
<h1 class="py-4"><span class="f1-light text-gray-light">Comparing versions of</span> {{name}}</h1>
|
|
||||||
</div>
|
<h1 class="header-title text-center text-md-left py-4">
|
||||||
|
<span class="f1-light text-gray-light">
|
||||||
|
Comparing versions of
|
||||||
|
</span>
|
||||||
|
{{name}}
|
||||||
|
</h1>
|
||||||
|
</div>
|
||||||
|
|
||||||
{{#message}}
|
{{#message}}
|
||||||
<p>{{message}}</p>
|
<p>{{message}}</p>
|
||||||
|
|||||||
@@ -1,8 +1,11 @@
|
|||||||
<div id="wiki-wrapper" class="create">
|
<div id="wiki-wrapper" class="create">
|
||||||
<div id="head">
|
<div id="head">
|
||||||
{{>navbar}}
|
{{>navbar}}
|
||||||
<h1 class="py-4">Create New Page</h1>
|
|
||||||
</div>
|
<h1 class="header-title text-center text-md-left py-4">
|
||||||
|
Create New Page
|
||||||
|
</h1>
|
||||||
|
</div>
|
||||||
<div id="wiki-content" class="create edit">
|
<div id="wiki-content" class="create edit">
|
||||||
<div class="tabnav">
|
<div class="tabnav">
|
||||||
<nav class="tabnav-tabs" aria-label="Toggle edit or preview mode">
|
<nav class="tabnav-tabs" aria-label="Toggle edit or preview mode">
|
||||||
|
|||||||
@@ -1,8 +1,11 @@
|
|||||||
<div id="wiki-wrapper" class="edit">
|
<div id="wiki-wrapper" class="edit">
|
||||||
<div id="head">
|
<div id="head">
|
||||||
{{>navbar}}
|
{{>navbar}}
|
||||||
<h1 class="py-4">Editing <strong>{{title}}</strong></h1>
|
|
||||||
</div>
|
<h1 class="header-title text-center text-md-left py-4">
|
||||||
|
Editing <strong>{{title}}</strong>
|
||||||
|
</h1>
|
||||||
|
</div>
|
||||||
<div class="tabnav">
|
<div class="tabnav">
|
||||||
<nav class="tabnav-tabs">
|
<nav class="tabnav-tabs">
|
||||||
<a href="#" id="edit" class="tabnav-tab selected" aria-current="page">
|
<a href="#" id="edit" class="tabnav-tab selected" aria-current="page">
|
||||||
|
|||||||
@@ -1,8 +1,15 @@
|
|||||||
<div id="wiki-wrapper" class="history">
|
<div id="wiki-wrapper" class="history">
|
||||||
<div id="head">
|
<div id="head">
|
||||||
{{>navbar}}
|
{{>navbar}}
|
||||||
<h1 class="py-4"><span class="f1-light text-gray-light">History for</span> {{name}}</h1>
|
|
||||||
|
<h1 class="header-title text-center text-md-left py-4">
|
||||||
|
<span class="f1-light text-gray-light">
|
||||||
|
History for
|
||||||
|
</span>
|
||||||
|
{{name}}
|
||||||
|
</h1>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div id="page-history">
|
<div id="page-history">
|
||||||
|
|
||||||
{{>pagination}}
|
{{>pagination}}
|
||||||
|
|||||||
@@ -1,8 +1,11 @@
|
|||||||
<div id="wiki-wrapper" class="history">
|
<div id="wiki-wrapper" class="history">
|
||||||
<div id="head">
|
<div id="head">
|
||||||
{{>navbar}}
|
{{>navbar}}
|
||||||
<h1 class="py-4">{{title}}</h1>
|
|
||||||
</div>
|
<h1 class="header-title text-center text-md-left py-4">
|
||||||
|
{{title}}
|
||||||
|
</h1>
|
||||||
|
</div>
|
||||||
|
|
||||||
{{>pagination}}
|
{{>pagination}}
|
||||||
|
|
||||||
|
|||||||
@@ -1,4 +1,11 @@
|
|||||||
<nav class="TableObject actions pt-4 px-2 px-lg-0 overflow-x-scroll">
|
<nav class="TableObject
|
||||||
|
actions
|
||||||
|
border-bottom
|
||||||
|
border-md-0
|
||||||
|
p-2
|
||||||
|
pt-lg-4
|
||||||
|
px-lg-0
|
||||||
|
overflow-x-scroll">
|
||||||
<div class="TableObject-item hide-lg hide-xl">
|
<div class="TableObject-item hide-lg hide-xl">
|
||||||
{{>mobilenav}}
|
{{>mobilenav}}
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
@@ -1,8 +1,11 @@
|
|||||||
<div id="wiki-wrapper" class="results">
|
<div id="wiki-wrapper" class="results">
|
||||||
<div id="head" class="overview">
|
<div id="head" class="overview">
|
||||||
{{>navbar}}
|
{{>navbar}}
|
||||||
<h1 class="py-4">{{title}}</h1>
|
|
||||||
</div>
|
<h1 class="header-title text-center text-md-left py-4">
|
||||||
|
{{title}}
|
||||||
|
</h1>
|
||||||
|
</div>
|
||||||
<div id="overview">
|
<div id="overview">
|
||||||
|
|
||||||
{{#has_results}}
|
{{#has_results}}
|
||||||
|
|||||||
@@ -1,7 +1,13 @@
|
|||||||
<div id="wiki-wrapper" class="results">
|
<div id="wiki-wrapper" class="results">
|
||||||
<div id="head">
|
<div id="head">
|
||||||
{{>navbar}}
|
{{>navbar}}
|
||||||
<h1 class="py-4"><span class="f1-light text-gray-light">Search results for</span> {{name}}</h1>
|
|
||||||
|
<h1 class="header-title text-center text-md-left py-4">
|
||||||
|
<span class="f1-light text-gray-light">
|
||||||
|
Search results for
|
||||||
|
</span>
|
||||||
|
{{name}}
|
||||||
|
</h1>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
{{#has_results}}
|
{{#has_results}}
|
||||||
|
|||||||
@@ -1,5 +1,7 @@
|
|||||||
<div id="wiki-content" class="px-2 px-lg-0">
|
<div id="wiki-content" class="px-2 px-lg-0">
|
||||||
<h1 class="pt-4">{{page_header}}</h1>
|
<h1 class="header-title text-center text-md-left pt-4">
|
||||||
|
{{page_header}}
|
||||||
|
</h1>
|
||||||
<div class="breadcrumb">{{{breadcrumb}}}</div>
|
<div class="breadcrumb">{{{breadcrumb}}}</div>
|
||||||
|
|
||||||
<div class="{{#has_header}}has-header{{/has_header}}{{#has_footer}} has-footer{{/has_footer}}{{#has_sidebar}} has-sidebar has-{{bar_side}}bar{{/has_sidebar}}{{#has_toc}} has-toc{{/has_toc}}">
|
<div class="{{#has_header}}has-header{{/has_header}}{{#has_footer}} has-footer{{/has_footer}}{{#has_sidebar}} has-sidebar has-{{bar_side}}bar{{/has_sidebar}}{{#has_toc}} has-toc{{/has_toc}}">
|
||||||
|
|||||||
@@ -6,7 +6,6 @@ require 'mocha/setup'
|
|||||||
require 'fileutils'
|
require 'fileutils'
|
||||||
require 'minitest/reporters'
|
require 'minitest/reporters'
|
||||||
require 'minitest/spec'
|
require 'minitest/spec'
|
||||||
require 'twitter_cldr'
|
|
||||||
require 'tmpdir'
|
require 'tmpdir'
|
||||||
|
|
||||||
# Silence locale validation warning
|
# Silence locale validation warning
|
||||||
|
|||||||
+15
-17
@@ -39,31 +39,29 @@ context "Frontend" do
|
|||||||
assert_match /<pre><code>one\ntwo\nthree\nfour\n<\/code><\/pre>\n/m, last_response.body
|
assert_match /<pre><code>one\ntwo\nthree\nfour\n<\/code><\/pre>\n/m, last_response.body
|
||||||
end
|
end
|
||||||
|
|
||||||
def nfd utf8
|
|
||||||
TwitterCldr::Normalization.normalize(utf8, using: :nfd)
|
|
||||||
end
|
|
||||||
|
|
||||||
test 'mathjax assets are served' do
|
test 'mathjax assets are served' do
|
||||||
get '/gollum/assets/mathjax/MathJax.js'
|
get '/gollum/assets/mathjax/MathJax.js'
|
||||||
assert last_response.ok?
|
assert last_response.ok?
|
||||||
end
|
end
|
||||||
|
|
||||||
test "UTF-8 headers href preserved" do
|
test "UTF-8 headers href preserved" do
|
||||||
page = 'utfh1'
|
page_content = <<~TEXT
|
||||||
text = nfd('한글')
|
## 한글
|
||||||
|
|
||||||
# don't use h1 or it will be promoted to replace file name
|
Test page "utfh1" content.
|
||||||
# which doesn't generate a normal header link
|
TEXT
|
||||||
@wiki.write_page(page, :markdown, '## ' + text,
|
|
||||||
{ :name => 'user1', :email => 'user1' });
|
|
||||||
|
|
||||||
get page
|
@wiki.write_page('utfh1',
|
||||||
expected = "<h2 class=\"editable\"><a class=\"anchor\" (href|id)=\"(#)?#{text}\" (href|id)=\"(#)?#{text}\"></a>#{text}</h2>"
|
:markdown,
|
||||||
actual = nfd(last_response.body)
|
page_content,
|
||||||
|
{name: 'user1', email: 'user1'})
|
||||||
|
|
||||||
assert_match /#{expected}/, actual
|
get 'utfh1'
|
||||||
|
expected = "<h2 class=\"editable\"><a class=\"anchor\" (href|id)=\"(#)?한글\" (href|id)=\"(#)?한글\"></a>한글</h2>"
|
||||||
|
|
||||||
|
assert_match /#{expected}/, last_response.body
|
||||||
end
|
end
|
||||||
|
|
||||||
test 'rss feed' do
|
test 'rss feed' do
|
||||||
channel_title = <<EOF
|
channel_title = <<EOF
|
||||||
<title>Gollum Wiki Latest Changes</title>
|
<title>Gollum Wiki Latest Changes</title>
|
||||||
@@ -491,9 +489,9 @@ EOF
|
|||||||
test "previews content" do
|
test "previews content" do
|
||||||
post "/gollum/preview", :content => 'abc', :format => 'markdown', :page => 'Samewise Gamgee.mediawiki'
|
post "/gollum/preview", :content => 'abc', :format => 'markdown', :page => 'Samewise Gamgee.mediawiki'
|
||||||
assert last_response.ok?
|
assert last_response.ok?
|
||||||
assert last_response.body.include?('Samewise Gamgee</h1>')
|
assert last_response.body.include?('Samewise Gamgee')
|
||||||
end
|
end
|
||||||
|
|
||||||
test 'throws an error when comparing two identical revisions for a page' do
|
test 'throws an error when comparing two identical revisions for a page' do
|
||||||
get '/gollum/compare/A.md/fc66539528eb96f21b2bbdbf557788fe8a1196ac...fc66539528eb96f21b2bbdbf557788fe8a1196ac'
|
get '/gollum/compare/A.md/fc66539528eb96f21b2bbdbf557788fe8a1196ac...fc66539528eb96f21b2bbdbf557788fe8a1196ac'
|
||||||
assert last_response.ok?
|
assert last_response.ok?
|
||||||
|
|||||||
Reference in New Issue
Block a user