sorting.feature 1.99 KB
Newer Older
Sylvester Keil's avatar
Sylvester Keil committed
1 2 3 4
Feature: Sorting BibTeX Bibliographies
  As a scholar who likes to blog
  I want to sort my bibliographies according to configurable parameters

Sylvester Keil's avatar
Sylvester Keil committed
5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69
  @tags @sorting
	Scenario: Sort By Year
    Given I have a scholar configuration with:
  	  | key     | value             |
  	  | sort_by | year              |
		And I have a "_bibliography" directory
	  And I have a file "_bibliography/references.bib":
			"""
			@book{ruby1,
			  title     = {The Ruby Programming Language},
			  author    = {Flanagan, David and Matsumoto, Yukihiro},
			  year      = {2008},
			  publisher = {O'Reilly Media}
			}
			@book{ruby2,
			  title     = {The Ruby Programming Language},
			  author    = {Flanagan, David and Matsumoto, Yukihiro},
			  year      = {2007},
			  publisher = {O'Reilly Media}
			}
			"""
	  And I have a page "scholar.html":
			"""
			---
			---
			{% bibliography references %}
			"""
	  When I run jekyll
	  Then the _site directory should exist
		And the "_site/scholar.html" file should exist
    Then "2007" should come before "2008" in "_site/scholar.html"

  @tags @sorting
	Scenario: Reverse Sort Order
    Given I have a scholar configuration with:
  	  | key     | value             |
  	  | sort_by | year              |
  	  | order   | descending        |
		And I have a "_bibliography" directory
	  And I have a file "_bibliography/references.bib":
			"""
			@book{ruby1,
			  title     = {The Ruby Programming Language},
			  author    = {Flanagan, David and Matsumoto, Yukihiro},
			  year      = {2008},
			  publisher = {O'Reilly Media}
			}
			@book{ruby2,
			  title     = {The Ruby Programming Language},
			  author    = {Flanagan, David and Matsumoto, Yukihiro},
			  year      = {2007},
			  publisher = {O'Reilly Media}
			}
			"""
	  And I have a page "scholar.html":
			"""
			---
			---
			{% bibliography references %}
			"""
	  When I run jekyll
	  Then the _site directory should exist
		And the "_site/scholar.html" file should exist
    Then "2008" should come before "2007" in "_site/scholar.html"