@@ -110,26 +110,41 @@ def test_including_enumerable
110110 assert_includes ( DuckDB ::Result . ancestors , Enumerable )
111111 end
112112
113- def test_rows_changed
114- DuckDB ::Database . open do |db |
115- db . connect do |con |
116- r = con . query ( 'CREATE TABLE t2 (id INT)' )
113+ def test_rows_changed_create
114+ r = @con . query ( 'CREATE TABLE rows_changed_test_create (id INT)' )
117115
118- assert_equal ( 0 , r . rows_changed )
119- r = con . query ( 'INSERT INTO t2 VALUES (1), (2), (3)' )
116+ assert_equal ( 0 , r . rows_changed )
117+ end
120118
121- assert_equal ( 3 , r . rows_changed )
122- r = con . query ( 'UPDATE t2 SET id = id + 1 WHERE id > 1' )
119+ def test_rows_changed_insert
120+ @con . query ( 'CREATE TABLE rows_changed_test_insert (id INT)' )
121+ r = @con . query ( 'INSERT INTO rows_changed_test_insert VALUES (1), (2), (3)' )
123122
124- assert_equal ( 2 , r . rows_changed )
125- r = con . query ( 'DELETE FROM t2 WHERE id = 0' )
123+ assert_equal ( 3 , r . rows_changed )
124+ end
126125
127- assert_equal ( 0 , r . rows_changed )
128- r = con . query ( 'DELETE FROM t2 WHERE id = 4' )
126+ def test_rows_changed_update
127+ @con . query ( 'CREATE TABLE rows_changed_test_update (id INT)' )
128+ @con . query ( 'INSERT INTO rows_changed_test_update VALUES (1), (2), (3)' )
129+ r = @con . query ( 'UPDATE rows_changed_test_update SET id = id + 1 WHERE id > 1' )
129130
130- assert_equal ( 1 , r . rows_changed )
131- end
132- end
131+ assert_equal ( 2 , r . rows_changed )
132+ end
133+
134+ def test_rows_changed_delete_no_match
135+ @con . query ( 'CREATE TABLE rows_changed_test_delete_no_match (id INT)' )
136+ @con . query ( 'INSERT INTO rows_changed_test_delete_no_match VALUES (1), (2), (3)' )
137+ r = @con . query ( 'DELETE FROM rows_changed_test_delete_no_match WHERE id = 0' )
138+
139+ assert_equal ( 0 , r . rows_changed )
140+ end
141+
142+ def test_rows_changed_delete
143+ @con . query ( 'CREATE TABLE rows_changed_test_delete (id INT)' )
144+ @con . query ( 'INSERT INTO rows_changed_test_delete VALUES (1), (2), (3)' )
145+ r = @con . query ( 'DELETE FROM rows_changed_test_delete WHERE id = 3' )
146+
147+ assert_equal ( 1 , r . rows_changed )
133148 end
134149
135150 def test_column_count
0 commit comments