@@ -11,103 +11,124 @@ def setup
1111 end
1212
1313 def test_log_max_count_default
14- assert_equal ( 30 , @git . log . size )
14+ # Default max_count is 30
15+ commits = @git . log . execute
16+ assert_equal ( 30 , commits . size )
1517 end
1618
1719 # In these tests, note that @git.log(n) is equivalent to @git.log.max_count(n)
1820 def test_log_max_count_twenty
19- assert_equal ( 20 , @git . log ( 20 ) . size )
20- assert_equal ( 20 , @git . log . max_count ( 20 ) . size )
21+ max_count = 20
22+ commits = @git . log ( max_count ) . execute
23+ assert_equal ( 20 , commits . size )
24+ commits = @git . log . max_count ( max_count ) . execute
25+ assert_equal ( 20 , commits . size )
2126 end
2227
2328 def test_log_max_count_nil
24- assert_equal ( 72 , @git . log ( nil ) . size )
25- assert_equal ( 72 , @git . log . max_count ( nil ) . size )
29+ # nil should return all commits
30+ max_count = nil
31+ commits = @git . log ( max_count ) . execute
32+ assert_equal ( 72 , commits . size )
33+ commits = @git . log . max_count ( max_count ) . execute
34+ assert_equal ( 72 , commits . size )
2635 end
2736
2837 def test_log_max_count_all
29- assert_equal ( 72 , @git . log ( :all ) . size )
30- assert_equal ( 72 , @git . log . max_count ( :all ) . size )
38+ max_count = :all
39+ commits = @git . log ( max_count ) . execute
40+ assert_equal ( 72 , commits . size )
41+ commits = @git . log . max_count ( max_count ) . execute
42+ assert_equal ( 72 , commits . size )
3143 end
3244
3345 # Note that @git.log.all does not control the number of commits returned. For that,
3446 # use @git.log.max_count(n)
3547 def test_log_all
36- assert_equal ( 72 , @git . log ( 100 ) . size )
37- assert_equal ( 76 , @git . log ( 100 ) . all . size )
48+ commits = @git . log ( 100 ) . execute
49+ assert_equal ( 72 , commits . size )
50+ commits = @git . log ( 100 ) . all . execute
51+ assert_equal ( 76 , commits . size )
3852 end
3953
4054 def test_log_non_integer_count
41- assert_raises ( ArgumentError ) { @git . log ( 'foo' ) . size }
55+ assert_raises ( ArgumentError ) do
56+ commits = @git . log ( 'foo' ) . execute
57+ commits . size
58+ end
4259 end
4360
4461 def test_get_first_and_last_entries
4562 log = @git . log
46- assert ( log . first . is_a? ( Git ::Object ::Commit ) )
47- assert_equal ( '46abbf07e3c564c723c7c039a43ab3a39e5d02dd' , log . first . objectish )
63+ commits = log . execute
64+ assert ( commits . first . is_a? ( Git ::Object ::Commit ) )
65+ assert_equal ( '46abbf07e3c564c723c7c039a43ab3a39e5d02dd' , commits . first . objectish )
4866
49- assert ( log . last . is_a? ( Git ::Object ::Commit ) )
50- assert_equal ( 'b03003311ad3fa368b475df58390353868e13c91' , log . last . objectish )
67+ assert ( commits . last . is_a? ( Git ::Object ::Commit ) )
68+ assert_equal ( 'b03003311ad3fa368b475df58390353868e13c91' , commits . last . objectish )
5169 end
5270
5371 def test_get_log_entries
54- assert_equal ( 30 , @git . log . size )
55- assert_equal ( 50 , @git . log ( 50 ) . size )
56- assert_equal ( 10 , @git . log ( 10 ) . size )
72+ assert_equal ( 30 , @git . log . execute . size )
73+ assert_equal ( 50 , @git . log ( 50 ) . execute . size )
74+ assert_equal ( 10 , @git . log ( 10 ) . execute . size )
5775 end
5876
5977 def test_get_log_to_s
60- assert_equal ( @git . log . to_s . split ( "\n " ) . first , @git . log . first . sha )
78+ commits = @git . log . execute
79+ first_line = commits . to_s . split ( "\n " ) . first
80+ first_sha = commits . first . sha
81+ assert_equal ( first_line , first_sha )
6182 end
6283
6384 def test_log_skip
64- three1 = @git . log ( 3 ) . to_a [ -1 ]
65- three2 = @git . log ( 2 ) . skip ( 1 ) . to_a [ -1 ]
66- three3 = @git . log ( 1 ) . skip ( 2 ) . to_a [ -1 ]
85+ three1 = @git . log ( 3 ) . execute . to_a [ -1 ]
86+ three2 = @git . log ( 2 ) . skip ( 1 ) . execute . to_a [ -1 ]
87+ three3 = @git . log ( 1 ) . skip ( 2 ) . execute . to_a [ -1 ]
6788 assert_equal ( three2 . sha , three3 . sha )
6889 assert_equal ( three1 . sha , three2 . sha )
6990 end
7091
7192 def test_get_log_since
72- l = @git . log . since ( '2 seconds ago' )
73- assert_equal ( 0 , l . size )
93+ commits = @git . log . since ( '2 seconds ago' ) . execute
94+ assert_equal ( 0 , commits . size )
7495
75- l = @git . log . since ( "#{ Date . today . year - 2006 } years ago" )
76- assert_equal ( 30 , l . size )
96+ commits = @git . log . since ( "#{ Date . today . year - 2006 } years ago" ) . execute
97+ assert_equal ( 30 , commits . size )
7798 end
7899
79100 def test_get_log_grep
80- l = @git . log . grep ( 'search' )
81- assert_equal ( 2 , l . size )
101+ commits = @git . log . grep ( 'search' ) . execute
102+ assert_equal ( 2 , commits . size )
82103 end
83104
84105 def test_get_log_author
85- l = @git . log ( 5 ) . author ( 'chacon' )
86- assert_equal ( 5 , l . size )
87- l = @git . log ( 5 ) . author ( 'lazySusan' )
88- assert_equal ( 0 , l . size )
106+ commits = @git . log ( 5 ) . author ( 'chacon' ) . execute
107+ assert_equal ( 5 , commits . size )
108+ commits = @git . log ( 5 ) . author ( 'lazySusan' ) . execute
109+ assert_equal ( 0 , commits . size )
89110 end
90111
91112 def test_get_log_since_file
92- l = @git . log . path ( 'example.txt' )
93- assert_equal ( 30 , l . size )
113+ commits = @git . log . path ( 'example.txt' ) . execute
114+ assert_equal ( 30 , commits . size )
94115
95- l = @git . log . between ( 'v2.5' , 'test' ) . path ( 'example.txt' )
96- assert_equal ( 1 , l . size )
116+ commits = @git . log . between ( 'v2.5' , 'test' ) . path ( 'example.txt' ) . execute
117+ assert_equal ( 1 , commits . size )
97118 end
98119
99120 def test_get_log_path
100- log = @git . log . path ( 'example.txt' )
101- assert_equal ( 30 , log . size )
102- log = @git . log . path ( 'example*' )
103- assert_equal ( 30 , log . size )
104- log = @git . log . path ( [ 'example.txt' , 'scott/text.txt' ] )
105- assert_equal ( 30 , log . size )
121+ commits = @git . log . path ( 'example.txt' ) . execute
122+ assert_equal ( 30 , commits . size )
123+ commits = @git . log . path ( 'example*' ) . execute
124+ assert_equal ( 30 , commits . size )
125+ commits = @git . log . path ( [ 'example.txt' , 'scott/text.txt' ] ) . execute
126+ assert_equal ( 30 , commits . size )
106127 end
107128
108129 def test_log_file_noexist
109130 assert_raise Git ::FailedError do
110- @git . log . object ( 'no-exist.txt' ) . size
131+ @git . log . object ( 'no-exist.txt' ) . execute
111132 end
112133 end
113134
@@ -117,20 +138,22 @@ def test_log_with_empty_commit_message
117138 expected_message = 'message'
118139 git . commit ( expected_message , { allow_empty : true } )
119140 git . commit ( '' , { allow_empty : true , allow_empty_message : true } )
120- log = git . log
121- assert_equal ( 2 , log . to_a . size )
122- assert_equal ( '' , log [ 0 ] . message )
123- assert_equal ( expected_message , log [ 1 ] . message )
141+ commits = git . log . execute
142+ assert_equal ( 2 , commits . size )
143+ assert_equal ( '' , commits [ 0 ] . message )
144+ assert_equal ( expected_message , commits [ 1 ] . message )
124145 end
125146 end
126147
127148 def test_log_cherry
128- l = @git . log . between ( 'master' , 'cherry' ) . cherry
129- assert_equal ( 1 , l . size )
149+ commits = @git . log . between ( 'master' , 'cherry' ) . cherry . execute
150+ assert_equal ( 1 , commits . size )
130151 end
131152
132153 def test_log_merges
133154 expected_command_line = [ 'log' , '--no-color' , '--max-count=30' , '--pretty=raw' , '--merges' , { chdir : nil } ]
134- assert_command_line_eq ( expected_command_line ) { |git | git . log . merges . size }
155+ assert_command_line_eq ( expected_command_line ) do |git |
156+ git . log . merges . execute
157+ end
135158 end
136159end
0 commit comments