(t *testing.T)
| 181 | } |
| 182 | |
| 183 | func TestEditNote(t *testing.T) { |
| 184 | t.Run("content flag", func(t *testing.T) { |
| 185 | _, opts := setupTestEnv(t) |
| 186 | |
| 187 | // Setup |
| 188 | db, dbPath := database.InitTestFileDB(t) |
| 189 | testutils.Setup4(t, db) |
| 190 | |
| 191 | // Execute |
| 192 | testutils.RunDnoteCmd(t, opts, binaryName, "--dbPath", dbPath, "edit", "2", "-c", "foo bar") |
| 193 | |
| 194 | // Test |
| 195 | var noteCount, bookCount int |
| 196 | database.MustScan(t, "counting books", db.QueryRow("SELECT count(*) FROM books"), &bookCount) |
| 197 | database.MustScan(t, "counting notes", db.QueryRow("SELECT count(*) FROM notes"), ¬eCount) |
| 198 | |
| 199 | assert.Equalf(t, bookCount, 1, "book count mismatch") |
| 200 | assert.Equalf(t, noteCount, 2, "note count mismatch") |
| 201 | |
| 202 | var n1, n2 database.Note |
| 203 | database.MustScan(t, "getting n1", |
| 204 | db.QueryRow("SELECT uuid, body, added_on, dirty FROM notes where book_uuid = ? AND uuid = ?", "js-book-uuid", "43827b9a-c2b0-4c06-a290-97991c896653"), &n1.UUID, &n1.Body, &n1.AddedOn, &n1.Dirty) |
| 205 | database.MustScan(t, "getting n2", |
| 206 | db.QueryRow("SELECT uuid, body, added_on, dirty FROM notes where book_uuid = ? AND uuid = ?", "js-book-uuid", "f0d0fbb7-31ff-45ae-9f0f-4e429c0c797f"), &n2.UUID, &n2.Body, &n2.AddedOn, &n2.Dirty) |
| 207 | |
| 208 | assert.Equal(t, n1.UUID, "43827b9a-c2b0-4c06-a290-97991c896653", "n1 should have UUID") |
| 209 | assert.Equal(t, n1.Body, "Booleans have toString()", "n1 body mismatch") |
| 210 | assert.Equal(t, n1.Dirty, false, "n1 dirty mismatch") |
| 211 | |
| 212 | assert.Equal(t, n2.UUID, "f0d0fbb7-31ff-45ae-9f0f-4e429c0c797f", "Note should have UUID") |
| 213 | assert.Equal(t, n2.Body, "foo bar", "Note body mismatch") |
| 214 | assert.Equal(t, n2.Dirty, true, "n2 dirty mismatch") |
| 215 | assert.NotEqual(t, n2.EditedOn, 0, "Note edited_on mismatch") |
| 216 | }) |
| 217 | |
| 218 | t.Run("book flag", func(t *testing.T) { |
| 219 | _, opts := setupTestEnv(t) |
| 220 | |
| 221 | // Setup |
| 222 | db, dbPath := database.InitTestFileDB(t) |
| 223 | testutils.Setup5(t, db) |
| 224 | |
| 225 | // Execute |
| 226 | testutils.RunDnoteCmd(t, opts, binaryName, "--dbPath", dbPath, "edit", "2", "-b", "linux") |
| 227 | |
| 228 | // Test |
| 229 | var noteCount, bookCount int |
| 230 | database.MustScan(t, "counting books", db.QueryRow("SELECT count(*) FROM books"), &bookCount) |
| 231 | database.MustScan(t, "counting notes", db.QueryRow("SELECT count(*) FROM notes"), ¬eCount) |
| 232 | |
| 233 | assert.Equalf(t, bookCount, 2, "book count mismatch") |
| 234 | assert.Equalf(t, noteCount, 2, "note count mismatch") |
| 235 | |
| 236 | var n1, n2 database.Note |
| 237 | database.MustScan(t, "getting n1", |
| 238 | db.QueryRow("SELECT uuid, book_uuid, body, added_on, dirty FROM notes where uuid = ?", "f0d0fbb7-31ff-45ae-9f0f-4e429c0c797f"), &n1.UUID, &n1.BookUUID, &n1.Body, &n1.AddedOn, &n1.Dirty) |
| 239 | database.MustScan(t, "getting n2", |
| 240 | db.QueryRow("SELECT uuid, book_uuid, body, added_on, dirty FROM notes where uuid = ?", "43827b9a-c2b0-4c06-a290-97991c896653"), &n2.UUID, &n2.BookUUID, &n2.Body, &n2.AddedOn, &n2.Dirty) |
nothing calls this directly
no test coverage detected