(t *testing.T)
| 287 | } |
| 288 | |
| 289 | func TestEditBook(t *testing.T) { |
| 290 | t.Run("name flag", func(t *testing.T) { |
| 291 | _, opts := setupTestEnv(t) |
| 292 | |
| 293 | // Setup |
| 294 | db, dbPath := database.InitTestFileDB(t) |
| 295 | testutils.Setup1(t, db) |
| 296 | |
| 297 | // Execute |
| 298 | testutils.RunDnoteCmd(t, opts, binaryName, "--dbPath", dbPath, "edit", "js", "-n", "js-edited") |
| 299 | |
| 300 | // Test |
| 301 | var noteCount, bookCount int |
| 302 | database.MustScan(t, "counting books", db.QueryRow("SELECT count(*) FROM books"), &bookCount) |
| 303 | database.MustScan(t, "counting notes", db.QueryRow("SELECT count(*) FROM notes"), ¬eCount) |
| 304 | |
| 305 | assert.Equalf(t, bookCount, 2, "book count mismatch") |
| 306 | assert.Equalf(t, noteCount, 1, "note count mismatch") |
| 307 | |
| 308 | var b1, b2 database.Book |
| 309 | var n1 database.Note |
| 310 | database.MustScan(t, "getting b1", |
| 311 | db.QueryRow("SELECT uuid, label, usn, dirty FROM books WHERE uuid = ?", "js-book-uuid"), &b1.UUID, &b1.Label, &b1.USN, &b1.Dirty) |
| 312 | database.MustScan(t, "getting b2", |
| 313 | db.QueryRow("SELECT uuid, label, usn, dirty FROM books WHERE uuid = ?", "linux-book-uuid"), &b2.UUID, &b2.Label, &b2.USN, &b2.Dirty) |
| 314 | database.MustScan(t, "getting n1", |
| 315 | db.QueryRow("SELECT uuid, body, added_on, deleted, dirty, usn FROM notes WHERE book_uuid = ? AND uuid = ?", "js-book-uuid", "43827b9a-c2b0-4c06-a290-97991c896653"), |
| 316 | &n1.UUID, &n1.Body, &n1.AddedOn, &n1.Deleted, &n1.Dirty, &n1.USN) |
| 317 | |
| 318 | assert.Equal(t, b1.UUID, "js-book-uuid", "b1 should have UUID") |
| 319 | assert.Equal(t, b1.Label, "js-edited", "b1 Label mismatch") |
| 320 | assert.Equal(t, b1.USN, 0, "b1 USN mismatch") |
| 321 | assert.Equal(t, b1.Dirty, true, "b1 Dirty mismatch") |
| 322 | |
| 323 | assert.Equal(t, b2.UUID, "linux-book-uuid", "b2 should have UUID") |
| 324 | assert.Equal(t, b2.Label, "linux", "b2 Label mismatch") |
| 325 | assert.Equal(t, b2.USN, 0, "b2 USN mismatch") |
| 326 | assert.Equal(t, b2.Dirty, false, "b2 Dirty mismatch") |
| 327 | |
| 328 | assert.Equal(t, n1.UUID, "43827b9a-c2b0-4c06-a290-97991c896653", "n1 UUID mismatch") |
| 329 | assert.Equal(t, n1.Body, "Booleans have toString()", "n1 Body mismatch") |
| 330 | assert.Equal(t, n1.AddedOn, int64(1515199943), "n1 AddedOn mismatch") |
| 331 | assert.Equal(t, n1.Deleted, false, "n1 Deleted mismatch") |
| 332 | assert.Equal(t, n1.Dirty, false, "n1 Dirty mismatch") |
| 333 | assert.Equal(t, n1.USN, 0, "n1 USN mismatch") |
| 334 | }) |
| 335 | } |
| 336 | |
| 337 | func TestRemoveNote(t *testing.T) { |
| 338 | testCases := []struct { |
nothing calls this directly
no test coverage detected