MCPcopy Index your code
hub / github.com/dnote/dnote / TestEditBook

Function TestEditBook

pkg/cli/main_test.go:289–335  ·  view source on GitHub ↗
(t *testing.T)

Source from the content-addressed store, hash-verified

287}
288
289func 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"), &noteCount)
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
337func TestRemoveNote(t *testing.T) {
338 testCases := []struct {

Callers

nothing calls this directly

Calls 8

InitTestFileDBFunction · 0.92
Setup1Function · 0.92
RunDnoteCmdFunction · 0.92
MustScanFunction · 0.92
EqualfFunction · 0.92
EqualFunction · 0.92
setupTestEnvFunction · 0.70
QueryRowMethod · 0.65

Tested by

no test coverage detected