Commit Graph

438 Commits

Author SHA1 Message Date
Pat Hawks ab3cda6e58 Rubocop: features/support/formatter.rb 2016-05-26 12:00:01 -05:00
Parker Moore 8e939cd86e Add failing test for layout data inheritance bug (#4433) 2016-05-24 18:57:54 -05:00
Parker Moore a99adcafaa Add failing test for layout bug (#4897) 2016-05-24 18:57:53 -05:00
Parker Moore 12deccc513
Only spec.summary is needed... 2016-05-19 14:39:55 -07:00
Andrew Artajos 2d8a228b59 Fixed a typo
Fixed a typo from indend to indent. Just making the code more readable.
2016-05-05 09:14:03 +10:00
jekyllbot 298d56aab2 Merge pull request #4808 from jekyll/fix-collection-defaults-
Merge pull request 4808
2016-04-21 17:20:02 -07:00
Parker Moore d5dd423bfd
Add cucumber specs. 2016-04-21 16:09:23 -07:00
Florian Thomas 46dd5cf5a2
add failing test for scope values in subdirs
ref #4458
2016-04-18 13:55:51 -07:00
Jeff Kolesky 67904e849d Ensures related_posts are only set for a post
Prior to this change, the related posts for the most recently rendered post
stayed set on the `site` object. This could result in pages that showed related
posts even when the page represented an entire collection of posts, such as on
an index page.  This change restores the functionality from Jekyll V2.
2016-03-01 12:05:49 -08:00
Parker Moore 3aa80b7d04 Allow collections to have documents that have no file extension 2016-02-19 13:40:17 -08:00
jekyllbot ccb382679a Merge pull request #4195 from jekyll/pull/cleanup-document__post_read
Merge pull request 4195
2016-01-22 13:13:18 -08:00
Parker Moore 6c40c7f553 collections.feature: check for 0 exit status always 2016-01-22 09:36:37 -08:00
Parker Moore ba1cfab73c step_definitions: fixture collections should copy _thanksgiving 2016-01-22 09:36:25 -08:00
rebornix 1298ba6908 Fix #4188: Extract title from filename successfully when dateless. 2016-01-22 09:09:30 -08:00
Parker Moore 31ae61b419 Drop#[]: only use public_send for keys in the content_methods array 2016-01-21 18:20:35 -08:00
Parker Moore a72629908a Document: throw a useful error when an invalid date is given 2016-01-20 14:19:06 -08:00
Parker Moore be0e951bb0 features: Reorganize step definitions to reduce duplication 2016-01-18 15:35:11 -08:00
Parker Moore d27f1d95d5 features: #run_command should prefix command with $ 2016-01-18 15:34:50 -08:00
Parker Moore cc6e49a389 features/embed_filters: reformat a little 2016-01-18 13:41:41 -08:00
Parker Moore 1d369aada3 features: some under-the-hood enhancements 2016-01-18 12:48:12 -08:00
Parker Moore ae3a71ed0d features: config writing should decode value from string to ruby 2016-01-18 11:53:07 -08:00
Parker Moore 736a800f0e features: validate the exit status of 0 for successful calls 2016-01-18 11:52:31 -08:00
Parker Moore 9a6f4e08b7 features/permalinks: add a permalink feature for non-html extension name for pages
Fixes
https://github.com/mpc-hc/mpc-hc.org/pull/58#issuecomment-172594526
2016-01-18 11:44:00 -08:00
Parker Moore e9c5c45651 features: look for lack of "EXIT STATUS: 0" for non-zero exit status 2016-01-18 11:43:21 -08:00
Parker Moore 2adb70a247 features: writing a configuration file should append if it's already there 2016-01-18 11:42:59 -08:00
Parker Moore dd15e3c368 features: write EXIT STATUS to output so it all prints when we get an exit status we aren't expecting 2016-01-18 11:42:34 -08:00
Jordon Bedwell c5b8b3315f Rearrange Cucumber and add some flair.
* Move step_definitions/jekyll.rb to just step_definitions.rb
* Rename the formatter to Jekyll::Cucumber::Formatter, it's Jekyll's.
* Add some flair; switch to checks!
* Rename env.rb to helpers.rb
2016-01-11 14:55:34 -06:00
Jordon Bedwell 3c9f159fb8 Move Cucumber to using RSpec-Expections and furthering JRuby support.
* Removes posix-spawn in favor of Open3#popen3
* Encapsulates all the paths into a single easy class.
* Moves to %r{} to avoid ambiguious warnings per-Cucumber suggestion.
* Starts passing around Pathname to make some actions faster.
* Clean's up some methods to make them easier to read.
* AUTOMATIC: Add "#" between each method.
2016-01-10 14:41:48 -06:00
Parker Moore a9b80b2f06 features/layout_data: add scenario for inheriting layout data from child to parent
Ref: https://github.com/jekyll/jekyll/pull/4312#discussion_r48781985
2016-01-04 16:21:53 -08:00
Parker Moore e097a15657 Merge pull request #4312 from jekyll/fix-layout-metadata
Merge pull request 4312
2016-01-04 13:05:00 -08:00
Parker Moore 62d7f5ecad Add feature test for layout data
Fixes issue defined here:
https://github.com/jekyll/jekyll/issues/4246#issuecomment-168367510
2016-01-04 12:38:41 -08:00
Parker Moore 2756503e7b features/hooks: use hash syntax to access page 2016-01-04 12:37:19 -08:00
Parker Moore 87978e79f4 features/step_definitions: use $stderr instead of STDERR
Fixes c273d91df1 (commitcomment-15251676)
2016-01-04 12:36:05 -08:00
Parker Moore c273d91df1 cucumber: fix issue where an undefined step would cause an exception 2016-01-04 12:08:02 -08:00
Parker Moore 6a72d4a986 features/post_data: Fix undefined feature step. 2015-12-22 22:44:56 -05:00
Parker Moore 9bb59e9999 features/post_data: do NOT allow page.path to be overridden 2015-12-22 21:36:29 -05:00
Parker Moore 30ceda52ef features/hooks: global payload _is_ global -- not new for each page 2015-12-22 21:36:15 -05:00
Parker Moore 659f0869e0 features/collections: drops don't output like a hash -- update accordingly 2015-12-22 21:35:28 -05:00
rebornix 657a8d7239 Allow users to input multiple variables in include tag 2015-11-25 16:37:08 +08:00
Parker Moore 1bde4ce84a include_tag.feature: double escape 2015-11-24 17:11:47 -08:00
Parker Moore 8a09418083 Allow use of Cucumber 2.1 or greater 2015-11-24 16:28:02 -08:00
Parker Moore c1761bc478 Merge pull request #4120 from rebornix/CacheIncludeTemplate
Merge pull request 4120
2015-11-18 11:53:10 -08:00
rebornix 6a98ab2a15 Make `:title` cased for backwards compability and add `:slug` for uncased usage. 2015-11-18 10:43:13 +08:00
rebornix 87a8695196 Cache include file to save liquid parsing time. 2015-11-10 21:08:37 +08:00
Parker Moore db6103bdee Document: only superdirectories of the collection are categories 2015-11-04 15:18:02 +07:00
Paul Robert Lloyd 9d1641f163 Fix #3371 - kramdown:syntax_highlighter should automatically take value of highlighter 2015-10-31 23:58:49 +00:00
Jordon Bedwell 1c4b4ae271 Add regression tests to Cucumber. 2015-10-29 17:19:03 -05:00
Alfred Xing 2a040fd527 Rename incremental regeneration flag
Rename from `full_rebuild` to disable, to `incremental` to enable
2015-10-26 14:20:44 -07:00
Parker Moore b89f943bf2 collections: posts as collection 2015-10-26 00:29:14 -07:00
Kevin Locke bb9462f12f Whole-post excerpts should match the post content
When a post does not contain an excerpt_separator, meaning the excerpt
includes the entire post, the excerpt should contain exactly the post
content.

This is desirable both from a correctness standpoint, that the excerpt
should not introduce any new content, and more practically to allow fast
and easy detection of whole-post excerpts in Liquid templates using
`post.excerpt == post.content`.  A common use-case is deciding whether
to render "Read More" links on a page containing post excerpts.

This commit does exactly that.  It avoids adding additional newlines to
the excerpt content when the excerpt includes the whole post and adds
tests to ensure that this behavior is correct and preserved going
forward.

Signed-off-by: Kevin Locke <kevin@kevinlocke.name>
2015-10-01 13:58:00 -07:00
Pedro Euko 22b59ae793 Added permalink time variables 2015-09-23 21:51:02 -03:00
Parker Moore 44a43b757d Merge branch 'fniephaus-_includes' into 'master'
* fniephaus-_includes:
  Unify renaming of configuration options to a single method. /cc #3782.
  Make _includes directory configurable; closes #2684
2015-08-16 13:30:45 -04:00
Parker Moore 63a51df909 Fix up test for 'future' flag. /cc #3892 2015-08-16 13:15:47 -04:00
Nate Berkopec 559cd6c7e7 Future should be set to false in the default config 2015-08-16 13:11:08 -04:00
Fabio Niephaus ac56e9dd16 Make _includes directory configurable; closes #2684
and rename `plugins`, `layouts` and `data_source` directories for consistency
2015-08-09 16:20:58 +01:00
Stephen Crosby 736e6a78f1 address code review feedback from #3553
- change site:reset to site:after_reset
- raise an exception when registering uncallable hook
- set default hook priority at the public API level
2015-05-02 15:56:19 -07:00
Stephen Crosby 245d9677d7 Refine hook implementation
- hooks are registered to symbol owners rather than classes directly
- during registration, add the ability to specify owner as an array to
  register the same hook to multiple owners
- add optional priority during registration as a symbol (:low, :normal,
  :high)
- implement hooks for collections as they are in octopress-hooks, aside
  from post_init
2015-05-01 19:00:37 -07:00
Stephen Crosby 6ca9633354 prototype of jekyll hooks, encapsulated 2015-05-01 14:35:15 -07:00
Parker Moore 6a26907495 features: update collections features to match new iteration method 2015-04-29 10:49:06 -07:00
Parker Moore 6597bacee8 features: Update the way we access Minitest assertions
Per https://github.com/cucumber/cucumber/wiki/Using-MiniTest.
2015-04-28 12:49:45 -07:00
Alfred Xing 4f06ba7884 Remove Maruku-specific tests 2015-04-14 10:58:47 -07:00
Arthur Neves 67ba8ad0cb Use rspec-mock instead of rr 2015-03-06 20:13:07 -05:00
Will Norris 669c803912 always include file extension on destination files
This ensures that destination files for HTML posts, pages and
collections always include the proper file extension (as defined by
output_ext) regardless of permalink structure.  This allows for URLs
that contain no extension or trailing slash to still result in proper
destination files with .html extensions.

Because this change relies so heavily on output_ext accurately
identifying the extension of the destination file, this change also
removes the feature test that tested support for permalinks with a .htm
extension.  In order to support alternate file extensions, a future
patch or plugin will need to modify the output_ext value, at which point
everything else should work as expected.
2015-03-02 21:20:54 -08:00
Parker Moore ace1b6b8d2 Migrate the integration tests to minitest, too 2015-02-21 00:31:25 -08:00
Parker Moore a87cda4b12 Add configuration fallback for paginate, and fix tests. 2015-01-31 13:53:17 -08:00
Parker Moore c378f741a8 Merge pull request #3319 from jekyll/split-off-textile 2015-01-17 17:08:15 -08:00
Parker Moore dec27bc166 Fix last feature 2015-01-17 16:52:12 -08:00
Parker Moore 2b29e09177 Fix some cucumber features. 2015-01-17 16:52:12 -08:00
Parker Moore c1da91cf5c Start removing mentions of Textile. 2015-01-17 16:51:28 -08:00
Parker Moore f11837dd7b Fix cucumber failures due to merge of #3134. 2015-01-17 16:48:12 -08:00
Parker Moore 87500addd5 Move the test & fix it. 2015-01-17 15:46:35 -08:00
Mike Callan 5868ba1691 new test to prove permalinks in global config do not respect template variables 2015-01-17 15:28:52 -08:00
Parker Moore 6d9b4c2aba Merge pull request #2774 from dziemian007/formatter_variables_by_relative_path 2015-01-17 15:16:50 -08:00
Parker Moore a312115a5a Merge pull request #3014 from jekyll/revert-3013-revert-2921-post-dest 2015-01-17 15:13:17 -08:00
Parker Moore ba2e1390ad Merge pull request #2571 from yous/patch-mixed-case-category 2015-01-17 14:55:30 -08:00
Parker Moore a098dc80cd Merge pull request #3234 from jekyll/ruby-2-2 2014-12-29 20:49:04 -05:00
Parker Moore 7bcf8d689e Always call Time#localtime to translate to TZ'd time. 2014-12-29 20:12:35 -05:00
Parker Moore f66862c508 Install rake if the lib isn't there; upgrade to cucumber 1.3.18 2014-12-29 18:40:53 -05:00
nitoyon 5e10958faa Unescape Document output path
Document#destination wasn't unescaped properly.

For example, when we have a document named '_langs/c#.md',
we expect its url to be '/langs/c#.html',
but it was actually '/langs/c%23.html'.

We now unecape URL at Document#destination like Post#destination and
Page#destination.
2014-12-29 22:38:50 +09:00
Parker Moore 004f923644 Revert "Revert "Make permalink parsing consistent with pages"" 2014-12-29 00:30:42 -05:00
Alfred Xing 02f281eef3 Add unit and cucumber tests 2014-11-26 21:15:53 -08:00
Parker Moore 8ee1b2a1fd Finish up the plugin manager
And so it shall be.
2014-11-05 19:29:54 -08:00
Parker Moore 519b60d012 Fix 2 syntax errors. 2014-11-05 18:39:54 -08:00
Parker Moore 0ad2c338c4 Reorganize tests for plugins. 2014-11-05 18:39:54 -08:00
Parker Moore 078b2785e4 Revert "Make permalink parsing consistent with pages" 2014-10-18 12:07:44 -07:00
Alfred Xing ccef84a803 Update Cucumber tests to match new permalink parsing 2014-09-24 22:08:25 -07:00
Pat Hawks 5445a1bead Add test for Use per-post permalinks ending in .htm 2014-09-14 11:36:26 -07:00
Parker Moore 943dc27e78 Add a space because regexp. 2014-08-30 22:40:32 -07:00
Parker Moore eea5921856 Fix test for Liquid rendering in Sass. 2014-08-30 21:54:50 -07:00
Parker Moore ca2e291306 prettier exceptions for cucumber. [ci skip] 2014-08-30 19:42:15 -07:00
Parker Moore 106148280d Use POSIX::Spawn instead of system to launch Jekyll 2014-08-30 19:29:01 -07:00
Parker Moore f9bc50e010 Fix the custom Cucumber output. 2014-08-30 19:28:37 -07:00
Parker Moore efd2c17eba Don't print out docstrings. 2014-08-30 18:37:00 -07:00
Chris Frederick 1238ccefcc Fix Cucumber scenario 2014-08-26 22:24:18 +09:00
Kamil Dziemianowicz 3b7091aab7 Find variables in _config.yaml by searching with relative file path. 2014-08-20 00:07:51 +02:00
James Smith 687176e22c Autoload csv files from data directory 2014-08-16 14:54:14 +01:00
Parker Moore 141ce32382 Custom formatter. 2014-08-12 18:06:47 -04:00
ChaYoung You 3768d90278
Use category in downcase only for URL (Resolves #1739) 2014-08-07 11:27:41 +09:00
Ivan Tse 83f726f503 Add tests for include tag with partial variables 2014-08-05 01:04:20 -04:00
Parker Moore 81807cb5af Merge pull request #2615 from alfredxing/collections-static-files 2014-08-02 14:44:45 -04:00
Alfred Xing a902fefed5 Add blank frontmatter to feature test 2014-08-01 13:24:27 -07:00
Alfred Xing 6d62dbbafc Replace deprecated Ruby methods
Replace `Hash#has_key?` and `File.exists?` with `Hash#key?`
and `File.exist?`
2014-07-31 12:50:20 -07:00
ChaYoung You 2716f65010 Add tests for duplicated categories 2014-07-10 18:03:50 +09:00
ChaYoung You 8006024715 Add missed tests for categories 2014-07-10 18:03:41 +09:00
ChaYoung You 2616a4cf5e Replace duplicated `category` feature with `categories` 2014-07-10 17:44:51 +09:00
Ben Hollis cbb4b10ce6 Update Maruku dependency to allow use of the latest version.
All Maruku releases post-0.6 follow semver, so they should be backwards-compatible on minor versions. In this case, the only test that needed to change was one that was asserting buggy behavior that was fixed in 0.7.1.
2014-07-08 19:44:40 -07:00
Ben Balter 05f1fac2a7 Add feature for layouts vuln. 2014-07-01 18:29:01 -04:00
Anatol Broder 880a503094 Add a test 2014-06-24 20:27:01 +02:00
Parker Moore 35ed101651 Add test for the concatenation of categories 2014-06-18 18:19:28 -04:00
Parker Moore d59b2c3ef6 Merge pull request #2419 from jens-na/collection-defaults 2014-06-12 20:38:21 -04:00
Anatol Broder df334e809e Remove coverage reporting with Coveralls 2014-06-09 02:35:55 +02:00
Jens Nazarenus 467945bedb Fixes the extra indentation in cucumber test 2014-06-01 22:21:31 +02:00
Jens Nazarenus e868a8437f Includes tests for frontmatter defaults in documents 2014-06-01 22:21:31 +02:00
Parker Moore 62129d9a2f Output Jekyll output if ENV['DEBUG'] exists 2014-05-26 20:09:13 -04:00
Parker Moore 3c6377d665 Merge pull request #2395 from rdumont/data-subdirectories 2014-05-21 01:09:15 -04:00
Parker Moore 65275e5841 Merge pull request #2431 from jekyll/remove-collections-from-layouts 2014-05-21 01:07:01 -04:00
Parker Moore e37b3ca8e1 Any assets read in as Pages shall not be rendered or layout'd 2014-05-21 00:52:21 -04:00
Mathieu Bruyen 921dbe0547 Override collection url template 2014-05-17 10:40:52 +02:00
Rodrigo Dumont 12a8be0b98 Add scenario for ensuring data folder over file precedence 2014-05-12 13:47:41 -03:00
Rodrigo Dumont 604fb3286c Allow subdirectories in _data 2014-05-11 20:28:49 -03:00
Parker Moore 01c09fd7fa Merge pull request #2345 from penibelst/sort-collection 2014-05-10 15:42:53 -04:00
Ben Balter 5129a3ccc3 add tests for json data 2014-05-09 10:29:37 -04:00
Anatol Broder 5dcd84b71b Resolve conflict 2014-05-09 08:56:04 +02:00
Anatol Broder 6c48e9bbdf Simplify config 2014-05-09 08:53:21 +02:00
Anatol Broder 7f1b916f32 Fix output 2014-05-09 08:53:21 +02:00
Anatol Broder d8e68bc0e1 No output needed 2014-05-09 08:53:07 +02:00
Anatol Broder 9f6965c1b5 Add scenario for sorting by title 2014-05-09 08:51:57 +02:00
Aaron Broder f68098c7fc Add test for using where filter on collections 2014-05-08 12:04:54 -07:00
Matt Rogers 5c109ee8dc Merge pull request #2299 from penibelst/sort-nils 2014-05-06 16:49:40 -05:00
Anatol Broder 7c1709fab4 Change nils argument to string 2014-05-06 21:36:13 +02:00
Parker Moore ea054ef149 Add test for document.output.
Test for ref: 00f21ee93c
Closes #2232.
2014-05-06 15:27:13 -04:00
Parker Moore 3755437d08 Write test for site.documents. 2014-05-06 00:11:35 -04:00
Anatol Broder 12d9f8b02b Add scenario for ordering pages without title last 2014-05-05 10:49:29 +02:00
Anatol Broder 367a818c26 Fallback title based on time 2014-05-05 10:37:21 +02:00
Anatol Broder 3517b9f4e2 Add scenario 2014-05-05 10:35:19 +02:00
Robin Dupret 3a610882f6 Avoid duplicated output using highlight tags
While using Rouge and an `highlight` tag, the output was duplicated
since the `output` variable in the Liquid tag definition was equal to
the highlighter's prefix value and the `<<` method changes its receiver.

Therefore, we should simply define an empty string and append the prefix
if it is present.
2014-04-27 12:22:40 +02:00
Parker Moore 6225073095 Use the 'output' key instead of 'write' for writing out collections' document files. 2014-04-25 19:47:35 -04:00
Parker Moore 2ccf7f1cfb Run jekyll build in features (must give subcommand) 2014-04-25 13:04:56 -04:00
Parker Moore c906dfdf71 TEST THE COLLECTIONS 2014-04-24 14:01:23 -04:00
Martin Charles f9375d5660 Cleaned up cucumbers 2014-04-23 13:40:21 -04:00
Parker Moore 9db5a1a6ce Merge pull request #2205 from jekyll/maul-esel-frontmatter-defaults 2014-04-21 23:01:05 -04:00
Matt Rogers 22f7380abe Change the feature to not use `page.name`
Use `page.description` in the cucumber feature instead. `page.name`
isn't overridable anymore.
2014-04-15 20:15:16 -05:00
Parker Moore 5a6f1d42a9 Fix #filtered_entries so it returns a new Array if the directory doesn't exist 2014-04-14 23:03:19 -04:00
Parker Moore f0e68d7d86 Expose collections as site.<collection_name> in Liquid as array of docs. 2014-04-14 22:46:21 -04:00
Parker Moore 37a7236e20 Homagah it all renders I think. 2014-04-14 22:46:21 -04:00
Parker Moore 75f49a751e OMG COLLECTIONS ARE RENDERING CALL THE POLICE 2014-04-14 22:46:21 -04:00
Parker Moore 7fef0302a7 Strike duplicate methods & :collection_name filler 2014-04-14 22:45:20 -04:00
Parker Moore f082eca791 GUYS failing test for rendering 2014-04-14 22:45:20 -04:00
maul.esel 2804e08908 delete old superfluous tests; extend feature 2014-04-07 16:22:04 +02:00
maul.esel 1997281449 Add feature for the "--unsupported" flag
Also make step definitions a little more generic.
2014-04-07 16:22:04 +02:00