verbs 2.3.1 → 3.0.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: cbdce4813c2a5b0f03af2fb7ec38baabc6eb64bd4394cc94fa4c330cbfbb5ab1
4
- data.tar.gz: acf35a43147e32c004af60c591ae4070752856a108f11436fcb3faf9af955d11
3
+ metadata.gz: e723eb9d358a2b674c497f70192e6172ba18d20fa472e588e38adcbf9f318a54
4
+ data.tar.gz: 8f88abec47d56529a4ec23c1b45b58d940fc1b7c6b6ceaf3f86d46b75c3591a8
5
5
  SHA512:
6
- metadata.gz: c6a4752df14975eddac3c03a21e89e707078b0768ab2b177b6021be8e8d0cc2a80f6622b68397a100cd88232bcfce199b585da9c0e72f7bb5a190346a5b939c6
7
- data.tar.gz: bc648fd9cf599de7a9743ac2810f0e26b6c4f677e238ef9b65ef827ad9d325057ead500227ea2a292358cfd9a607ba93366fa2f249818da7f6ef6e7e0fa8fcef
6
+ metadata.gz: 708d985dffabeee18e46906f1e976dc988a92c85e12db77a04f0319b0f73f8e25c03d884fee19393b4909160c8a631abc12dfcdbef80c739217e67cfb1becf5c
7
+ data.tar.gz: 64cab548cb88b306788ac88f05ee26628cbd60c72d7b7a9987b54ab988b03ca24782fb84870917ee06c6790abefea4a1029e6fdb8f0710a9f27dd2a9f9b464d9
@@ -31,7 +31,7 @@ Either <tt>:singular</tt> or <tt>:plural</tt>. Defaults to <tt>:singular</tt>.
31
31
 
32
32
  === <tt>:aspect</tt>
33
33
 
34
- One of <tt>:habitual</tt>, <tt>:perfect</tt>, <tt>:perfective</tt>, <tt>:progressive</tt>, or <tt>:prospective</tt>. Defaults to <tt>:habitual</tt>.
34
+ One of <tt>:habitual</tt>, <tt>:perfect</tt>, <tt>:perfective</tt>, <tt>:progressive</tt>, or <tt>:prospective</tt>. Defaults to <tt>:habitual</tt> (<tt>:perfective</tt> for past tense).
35
35
 
36
36
  See below for a guide to verb aspect.
37
37
 
@@ -1,10 +1,10 @@
1
1
  # The program conjugates most common english verbs with the following option:
2
- # * :tense => :past or :present or :future
3
- # * :person => :first or :second or :third
4
- # * :plurality => :singular or :plural
5
- # * :aspect => :habitual or :perfect or :perfective or :progressive or :prospective
6
- # * :mood => :indicative or :imperative or :subjunctive
7
- # Respective defaults are :present, :third, :singular, :habitual, and :indicative
2
+ # * :tense => :past or :present or :future (default: :present)
3
+ # * :person => :first or :second or :third (default: :third)
4
+ # * :plurality => :singular or :plural (default: :singular)
5
+ # * :aspect => :habitual or :perfect or :perfective or :progressive or :prospective (default: :habitual, or :perfective for past tense)
6
+ # * :mood => :indicative or :imperative or :subjunctive (default: :indicative)
7
+ # * :diathesis => :active or :passive (default: :active)
8
8
  #
9
9
  # Author:: Andy Rossmeissl
10
10
  # Copyright:: Copyright (c) 2009 Andy Rossmeissl
@@ -77,7 +77,7 @@ module Verbs
77
77
  plurality = options[:plurality] || :singular # singular, plural
78
78
  diathesis = options[:diathesis] || :active # active, passive
79
79
  mood = options[:mood] || :indicative # imperative, subjunctive
80
- aspect = options[:aspect] || :habitual # perfective, habitual, progressive, perfect, prospective
80
+ aspect = options[:aspect] || default_aspect(options) # perfective, habitual, progressive, perfect, prospective
81
81
 
82
82
  check_for_improper_constructions(infinitive, tense, person, mood, diathesis) # find incompatabilities
83
83
  form = form_for(tense, aspect, diathesis) # find form array based on tense and aspect
@@ -328,5 +328,9 @@ module Verbs
328
328
  raise Verbs::ImproperConstruction, 'There is no passive diathesis for the copula'
329
329
  end
330
330
  end
331
+
332
+ def default_aspect(options)
333
+ options[:tense] == :past ? :perfective : :habitual
334
+ end
331
335
  end
332
336
  end
@@ -1,3 +1,3 @@
1
1
  module Verbs
2
- VERSION = "2.3.1"
2
+ VERSION = "3.0.0"
3
3
  end
@@ -9,6 +9,9 @@ class TestVerbs < Test::Unit::TestCase
9
9
  assert_equal 'are', Verbs::Conjugator.conjugate(:be, :tense => :present, :person => :first, :plurality => :plural, :aspect => :habitual)
10
10
  assert_equal 'are', Verbs::Conjugator.conjugate(:be, :tense => :present, :person => :third, :plurality => :plural, :aspect => :habitual)
11
11
 
12
+ # past
13
+ assert_equal 'was', Verbs::Conjugator.conjugate(:be, :tense => :past)
14
+
12
15
  # past habitual
13
16
  assert_equal 'used to be', Verbs::Conjugator.conjugate(:be, :tense => :past, :person => :first, :plurality => :singular, :aspect => :habitual)
14
17
  assert_equal 'used to be', Verbs::Conjugator.conjugate(:be, :tense => :past, :person => :second, :plurality => :singular, :aspect => :habitual)
@@ -40,6 +43,7 @@ class TestVerbs < Test::Unit::TestCase
40
43
  assert_equal 'has', Verbs::Conjugator.conjugate(:have, :tense => :present, :person => :third, :plurality => :singular, :aspect => :habitual)
41
44
  end
42
45
  def test_know
46
+ assert_equal 'knew', Verbs::Conjugator.conjugate(:know, :tense => :past)
43
47
  assert_equal 'had known', Verbs::Conjugator.conjugate(:know, :tense => :past, :person => :third, :plurality => :singular, :aspect => :perfect)
44
48
  assert_equal 'knew', Verbs::Conjugator.conjugate(:know, :tense => :past, :person => :third, :plurality => :singular, :aspect => :perfective)
45
49
  assert_equal 'was knowing', Verbs::Conjugator.conjugate(:know, :tense => :past, :person => :third, :plurality => :singular, :aspect => :progressive)
@@ -113,7 +117,7 @@ class TestVerbs < Test::Unit::TestCase
113
117
  end
114
118
  def test_aspects
115
119
  Verbs::Conjugator.with_options :person => :first, :plurality => :singular, :subject => true do |standard|
116
- assert_equal 'I used to accept', standard.conjugate(:accept, :tense => :past, :aspect => :habitual)
120
+ assert_equal 'I used to accept', standard.conjugate(:accept, :tense => :past, :aspect => :habitual)
117
121
  assert_equal 'I had accepted', standard.conjugate(:accept, :tense => :past, :aspect => :perfect)
118
122
  assert_equal 'I accepted', standard.conjugate(:accept, :tense => :past, :aspect => :perfective)
119
123
  assert_equal 'I was accepting', standard.conjugate(:accept, :tense => :past, :aspect => :progressive)
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: verbs
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.3.1
4
+ version: 3.0.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Andy Rossmeissl
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2020-12-14 00:00:00.000000000 Z
11
+ date: 2020-12-16 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: test-unit