public async Task WhenAddingANewFileWithLongFilename_ItShouldTruncateAndUpdateTheDatabase() { await this.DatabaseTestAsync(async testDatabase => { this.target = new AddNewFileDbStatement(testDatabase); await this.CreateUserAsync(testDatabase); await testDatabase.TakeSnapshotAsync(); await this.target.ExecuteAsync(FileId, UserId, ChannelId, LongFileNameWithoutExtension, LongFileExtension, Purpose, TimeStamp); var expectedFile = new File( FileId.Value, UserId.Value, ChannelId.Value, FileState.WaitingForUpload, TimeStamp, null, null, null, null, LongFileNameWithoutExtension.Substring(0, File.MaximumFileNameLength), LongFileExtension.Substring(0, File.MaximumFileExtensionLength), 0, Purpose, null, null); return(new ExpectedSideEffects { Insert = expectedFile }); }); }
public async Task WhenAddingANewFileTwice_ItShouldHaveNoEffect() { await this.DatabaseTestAsync(async testDatabase => { this.target = new AddNewFileDbStatement(testDatabase); await this.CreateUserAsync(testDatabase); await this.target.ExecuteAsync(FileId, UserId, ChannelId, FileNameWithoutExtension, FileExtension, Purpose, TimeStamp); await testDatabase.TakeSnapshotAsync(); await target.ExecuteAsync(FileId, UserId, ChannelId, FileNameWithoutExtension, FileExtension, Purpose, TimeStamp); return(ExpectedSideEffects.None); }); }
public void Initialize() { this.target = new AddNewFileDbStatement(new Mock <IFifthweekDbConnectionFactory>(MockBehavior.Strict).Object); }