private static void AssertMediaStatus(MediaTable.MediaStatus status)
        {
            var expectedMediaStatus = _mediaTable.GetMediaStatusIdCodeFromMap(status);
            var actualMediaStatusId = _mediaTable.GetCurrentMediaStatusId(status, _mediaId);

            Assert.True(
                actualMediaStatusId.Equals(expectedMediaStatus),
                "Media status id '" + actualMediaStatusId +
                "' is not equal to the expected one '" + expectedMediaStatus +
                "'. Exhibit id is '" + _exhibitId + "'. Media number is ' " + _mediaDataModel.MediaNumber + "'.");
        }
        private static void WaitAndAssertMediaStatus(MediaTable.MediaStatus status, double maxTimeToWait)
        {
            var error = string.Empty;
            var sw    = new Stopwatch();

            sw.Start();
            while (sw.Elapsed < TimeSpan.FromMinutes(maxTimeToWait))
            {
                try
                {
                    AssertMediaStatus(status);
                    sw.Stop();
                    return;
                }
                catch (AssertionException e)
                {
                    error = e.ToString();
                }
            }
            sw.Stop();
            throw new AssertionException(error);
        }