public async Task ToTaskInfoShouldReturnTaskInfo()
        {
            SqlTaskStatus         expectedStatus = SqlTaskStatus.Succeeded;
            DatabaseOperationStub operation      = new DatabaseOperationStub();

            operation.TaskResult = new TaskResult
            {
                TaskStatus = expectedStatus
            };
            SqlTask sqlTask = new SqlTask(new TaskMetadata
            {
                ServerName   = "server name",
                DatabaseName = "database name"
            }, operation.FunctionToRun, operation.FunctionToCancel);

            Task taskToVerify = sqlTask.RunAsync().ContinueWith(task =>
            {
                var taskInfo = sqlTask.ToTaskInfo();
                Assert.Equal(taskInfo.TaskId, sqlTask.TaskId.ToString());
                Assert.Equal(taskInfo.ServerName, "server name");
                Assert.Equal(taskInfo.DatabaseName, "database name");
            });

            operation.Stop();
            await taskToVerify;
        }