func TestPreservationStorageFileName(t *testing.T) { genericFile := models.GenericFile{} genericFile.URI = "" fileName, err := genericFile.PreservationStorageFileName() if err == nil { t.Errorf("PreservationStorageFileName() should have returned an error") } genericFile.URI = "https://s3.amazonaws.com/aptrust.test.preservation/a58a7c00-392f-11e4-916c-0800200c9a66" fileName, err = genericFile.PreservationStorageFileName() if err != nil { t.Errorf("PreservationStorageFileName() returned an error: %v", err) return } assert.Equal(t, "a58a7c00-392f-11e4-916c-0800200c9a66", fileName) }
func (storer *APTStorer) markFileAsStored(gf *models.GenericFile, sendWhere, storageUrl string) { if sendWhere == "s3" { gf.IngestStoredAt = time.Now().UTC() gf.IngestStorageURL = storageUrl gf.URI = storageUrl events := gf.FindEventsByType(constants.EventIdentifierAssignment) var event *models.PremisEvent for i := range events { existingEvent := events[i] if strings.HasPrefix(existingEvent.OutcomeDetail, "http://") || strings.HasPrefix(existingEvent.OutcomeDetail, "https://") { event = existingEvent break } } if event != nil { event.DateTime = time.Now().UTC() } } else if sendWhere == "glacier" { gf.IngestReplicatedAt = time.Now().UTC() gf.IngestReplicationURL = storageUrl events := gf.FindEventsByType(constants.EventReplication) if events != nil && len(events) > 0 { events[0].DateTime = time.Now().UTC() } } }