github.com/hoffie/larasync@v0.0.0-20151025221940-0384d2bddcef/repository/nib/revision_test.go (about) 1 package nib 2 3 import ( 4 . "gopkg.in/check.v1" 5 ) 6 7 var _ = Suite(&RevisionTests{}) 8 9 type RevisionTests struct { 10 dir string 11 } 12 13 func (t *RevisionTests) TestHasSameContentEmptyMetadata(c *C) { 14 rev1 := &Revision{MetadataID: "123"} 15 rev2 := &Revision{} 16 c.Assert(rev1.HasSameContent(rev2), Equals, false) 17 } 18 19 func (t *RevisionTests) TestHasSameContent(c *C) { 20 rev1 := &Revision{MetadataID: "123", ContentIDs: []string{"34", "45"}} 21 rev2 := &Revision{MetadataID: "123", ContentIDs: []string{"34", "45"}} 22 c.Assert(rev1.HasSameContent(rev2), Equals, true) 23 c.Assert(rev2.HasSameContent(rev1), Equals, true) 24 } 25 26 func (t *RevisionTests) TestHasSameContentSelf(c *C) { 27 rev := &Revision{MetadataID: "ab", ContentIDs: []string{"x"}} 28 c.Assert(rev.HasSameContent(rev), Equals, true) 29 } 30 31 func (t *RevisionTests) TestIsDeletePositive(c *C) { 32 rev := &Revision{MetadataID: "123", ContentIDs: []string{}} 33 c.Assert(rev.IsDeletion(), Equals, true) 34 } 35 36 func (t *RevisionTests) TestIsDeleteNegative(c *C) { 37 rev := &Revision{MetadataID: "123", ContentIDs: []string{"34", "45"}} 38 c.Assert(rev.IsDeletion(), Equals, false) 39 } 40 41 func (t *RevisionTests) TestCopy(c *C) { 42 rev := &Revision{ 43 MetadataID: "123", 44 ContentIDs: []string{"34", "45"}, 45 UTCTimestamp: 100, 46 DeviceID: "asdf", 47 } 48 49 rev2 := rev.Clone() 50 51 c.Assert(rev2.MetadataID, Equals, "123") 52 c.Assert(rev2.ContentIDs, DeepEquals, []string{"34", "45"}) 53 c.Assert(rev2.UTCTimestamp, Equals, int64(100)) 54 c.Assert(rev2.DeviceID, Equals, "asdf") 55 } 56 57 func (t *RevisionTests) TestCopyEmptyContentIDs(c *C) { 58 rev := &Revision{ 59 ContentIDs: []string{}, 60 } 61 62 rev2 := rev.Clone() 63 c.Assert(rev2.ContentIDs, DeepEquals, []string{}) 64 }