// --------------------------------------------------------[] private static void TestReadFeedStatus( MipFeedType mipFeedType, MipFeedSubmissionOverallStatus mipFeedSubmissionOverallStatus, IMipConnector mipConnector) { var wasTested = false; var feed = new MipFeedDescriptor( mipFeedType ); MipConnectorTestInitializer.TestRequestIds( feed.Type, mipFeedSubmissionOverallStatus ) .ForEach( reqId => { var request = new MipFeedSubmissionDescriptor( feed, reqId ); var response = mipConnector.GetFeedSubmissionOverallStatus( request ); var testInfo = "{0}.{1} checking status".SafeFormat( feed.Type, reqId ); wasTested = true; Assert.That( response.IsSuccessful, testInfo ); Assert.AreEqual( mipFeedSubmissionOverallStatus, response.Result.Status, testInfo ); } ); Assert.AreEqual( true, wasTested, "{0}.{1} was not tested".SafeFormat( mipFeedType, mipFeedSubmissionOverallStatus ) ); }
// --------------------------------------------------------[] private static void ProceedSubmissionTask( EbaySubmissionTask task ) { task.AssertCanBeProceeded(); Response< MipGetFeedSubmissionOverallStatusResult > statusResponse = null; try { var args = task.Args; var submission = new MipFeedSubmissionDescriptor( args.MipFeedDescriptor, task.EbaySubmissionResponse.Result.MipSubmissionId ); statusResponse = MipConnector.Instance.GetFeedSubmissionOverallStatus( submission ); statusResponse.Check(); task.MipFeedSubmissionOverallStatus = statusResponse.Result.Status; task.EbaySubmissionResponse.Result.MipItemId = statusResponse.Result.MipItemId; task.AddProceedInfo( GetProceedInfo( statusResponse ) ); } catch { task.MipFeedSubmissionOverallStatus = MipFeedSubmissionOverallStatus.Failure; task.AddProceedInfo( GetProceedInfo( statusResponse ) ); } task.WasUpdatedNow(); }
// --------------------------------------------------------[] private Response<MipFindRemoteFileResult> FindSubmissionInFolder_Inprocess( MipFeedSubmissionDescriptor mipFeedSubmissionDescriptor) { var remoteDir = RemoteFeedInprocessFolderPath( mipFeedSubmissionDescriptor.MipFeedDescriptor.GetName() ); var prefix = mipFeedSubmissionDescriptor.FileNamePrefix(); return SftpHelper.FindRemoteFile( prefix, remoteDir ); }
// --------------------------------------------------------[] private Response<MipFindRemoteFileResult> FindSubmissionInFolder_Output( MipFeedSubmissionDescriptor mipFeedSubmissionDescriptor) { var remoteDirs = RemoteFeedOutputFolderPathes( mipFeedSubmissionDescriptor.MipFeedDescriptor.GetName() ); var prefix = mipFeedSubmissionDescriptor.FileNamePrefix(); return SftpHelper.FindRemoteFile( prefix, remoteDirs ); }
// --------------------------------------------------------[] private Response<MipGetFeedSubmissionOverallStatusResult> GetSubmissionOverallStatusFromOutput( MipFeedType feedType, Response< MipFindSubmissionResult > response, MipFeedSubmissionDescriptor mipFeedSubmissionDescriptor) { return new Response< MipGetFeedSubmissionOverallStatusResult > { ArgsInfo = MakeSubmissionStatusArgsInfo( mipFeedSubmissionDescriptor ), Result = ReadSubmissionOverallStatus( feedType, response ) }; }
// --------------------------------------------------------[] private static void _TestReadItemId( MipFeedType mipFeedType, IMipConnector mipConnector ) { var feed = new MipFeedDescriptor( mipFeedType ); var request = new MipFeedSubmissionDescriptor( feed, MipConnectorTestInitializer.ItemRequestId ); var response = mipConnector.GetFeedSubmissionOverallStatus( request ); Console.WriteLine( response ); Assert.IsNotNull( response.Result ); Assert.AreEqual( MipConnectorTestInitializer.ProductItemId, response.Result.MipItemId, "{0}.ItemId".SafeFormat( feed.Type ) ); }
public void FindRequest_Inprocess_Unknown() { var feed = new MipFeedDescriptor( MipFeedType.Product ); var request = new MipFeedSubmissionDescriptor( feed, MipFeedSubmissionDescriptor.GenerateId() ); var findResponse = MipConnector.Instance.FindSubmission( request, MipFeedSubmissionProcessingStatus.InProgress ); Console.WriteLine( findResponse ); Assert.IsFalse( findResponse.IsSuccessful ); Assert.IsNull( findResponse.Result ); Assert_That_Text_Contains( findResponse, @"not found in [store/product/inprocess]" ); }
public void FindRequest_Inprocess_Wrong() { var feed = new MipFeedDescriptor( MipFeedType.None ); var request = new MipFeedSubmissionDescriptor( feed, MipFeedSubmissionDescriptor.GenerateId() ); var findResponse = MipConnector.Instance.FindSubmission( request, MipFeedSubmissionProcessingStatus.InProgress ); Console.WriteLine( findResponse ); Assert.IsFalse( findResponse.IsSuccessful ); Assert.IsNull( findResponse.Result ); Assert.IsTrue( findResponse.ToString().Contains( "Exception" ) ); }
public void FindRequest_Inprocess() { var feed = new MipFeedDescriptor( MipFeedType.Product ); var sendResponse = MipConnector.Instance.SubmitFeed( feed ); IgnoreMipQueueDepthErrorMessage( sendResponse ); Console.WriteLine( sendResponse ); Assert.IsNotNull( sendResponse.Result, "Result" ); Assert.IsNotNull( sendResponse.InnerResponses, "InnerResponses" ); var request = new MipFeedSubmissionDescriptor( feed, sendResponse.Result.FeedSubmissionId ); var findResponse = MipConnector.Instance.FindSubmission( request, MipFeedSubmissionProcessingStatus.InProgress ); Console.WriteLine(); Console.WriteLine( findResponse ); Assert.That( findResponse.IsSuccessful ); Assert.IsNotNull( findResponse.Result.RemoteFileName ); Assert.IsNotNull( findResponse.Result.RemoteDir ); Assert.IsTrue( findResponse.Result.RemoteFileName.Length > 1 ); }
public void FindRequest_Output() { var fakeMipConnector = EbayMockHelper.GetMipConnectorSendingTestFeed(); var feed = new MipFeedDescriptor( MipFeedType.Product ); var sendResponse = fakeMipConnector.SubmitFeed( feed ); IgnoreMipQueueDepthErrorMessage( sendResponse ); Console.WriteLine( sendResponse ); Assert.IsNotNull( sendResponse.Result ); var request = new MipFeedSubmissionDescriptor( feed, sendResponse.Result.FeedSubmissionId ); var findResponse = MipConnector.Instance.FindSubmission( request, MipFeedSubmissionProcessingStatus.Complete ); Console.WriteLine( findResponse ); Assert.That( findResponse.IsSuccessful ); Assert.IsNotNull( findResponse.Result.RemoteFileName ); Assert.IsNotNull( findResponse.Result.RemoteDir ); Assert.IsTrue( findResponse.Result.RemoteFileName.Length > 1 ); Assert.IsTrue( findResponse.Result.RemoteDir.Length > 1 ); }
public void Response_Contains_ArgsInfo() { var feed = new MipFeedDescriptor( MipFeedType.None ); var request = new MipFeedSubmissionDescriptor( feed, MipFeedSubmissionDescriptor.GenerateId() ); var response = MipConnector.Instance.GetFeedSubmissionOverallStatus( request ); Console.WriteLine( response ); Assert_That_Text_Contains( response, "ArgsInfo" ); }
public void GetRequestStatus_Success() { var fakeMipConnector = EbayMockHelper.GetMipConnectorIgnoringInprocessAndSendingTestFeed(); var feed = new MipFeedDescriptor( MipFeedType.Availability ); var sendResponse = fakeMipConnector.SubmitFeed( feed ); IgnoreMipQueueDepthErrorMessage( sendResponse ); Console.WriteLine( sendResponse ); Assert.IsNotNull( sendResponse.Result ); var request = new MipFeedSubmissionDescriptor( feed, sendResponse.Result.FeedSubmissionId ); var submissionStatusResponse = fakeMipConnector.GetFeedSubmissionOverallStatus( request ); Console.WriteLine( submissionStatusResponse ); if( submissionStatusResponse.Result.Status != MipFeedSubmissionOverallStatus.Success ) { Console.WriteLine( "\n\nIt can be 'cause your tests have been not started for a logn period (2-3 days)\n\n" ); } Assert.That( submissionStatusResponse.IsSuccessful ); Assert.AreEqual( MipFeedSubmissionOverallStatus.Success, submissionStatusResponse.Result.Status ); }
public void GetRequestStatus_Unknown() { var feed = new MipFeedDescriptor( MipFeedType.Product ); var request = new MipFeedSubmissionDescriptor( feed, MipFeedSubmissionDescriptor.GenerateId() ); var submissionStatusResponse = MipConnector.Instance.GetFeedSubmissionOverallStatus( request ); Console.WriteLine( submissionStatusResponse ); Assert.That( submissionStatusResponse.IsSuccessful ); Assert.AreEqual( MipFeedSubmissionOverallStatus.Unknown, submissionStatusResponse.Result.Status ); }
public void FindRequest_Output_Unknown() { var feed = new MipFeedDescriptor( MipFeedType.Product ); var request = new MipFeedSubmissionDescriptor( feed, MipFeedSubmissionDescriptor.GenerateId() ); var findResponse = MipConnector.Instance.FindSubmission( request, MipFeedSubmissionProcessingStatus.Complete ); Console.WriteLine( findResponse ); Assert.IsFalse( findResponse.IsSuccessful ); Assert.IsNull( findResponse.Result ); }
public void GetRequestStatus_Inproc() { var feed = new MipFeedDescriptor( MipFeedType.Product ); var sendResponse = MipConnector.Instance.SubmitFeed( feed ); IgnoreMipQueueDepthErrorMessage( sendResponse ); var request = new MipFeedSubmissionDescriptor( feed, sendResponse.Result.FeedSubmissionId ); var response = MipConnector.Instance.GetFeedSubmissionOverallStatus( request ); Console.WriteLine( response ); Assert.That( response.IsSuccessful ); Assert.AreEqual( MipFeedSubmissionOverallStatus.InProgress, response.Result.Status ); }
// --------------------------------------------------------[] private Response<MipFindSubmissionResult> _FindSubmission( MipFeedSubmissionDescriptor mipFeedSubmissionDescriptor, MipFeedSubmissionProcessingStatus processingStatus) { Response< MipFindRemoteFileResult > findResponse; try { switch( processingStatus ) { case MipFeedSubmissionProcessingStatus.InProgress : findResponse = FindSubmissionInFolder_Inprocess( mipFeedSubmissionDescriptor ); break; case MipFeedSubmissionProcessingStatus.Complete : findResponse = FindSubmissionInFolder_Output( mipFeedSubmissionDescriptor ); break; default : throw new SpreadbotException( "Wrong processing status {0}", processingStatus ); } findResponse.Check(); } catch( Exception exception ) { return new Response< MipFindSubmissionResult >( exception ); } return new Response< MipFindSubmissionResult > { Result = new MipFindSubmissionResult { RemoteDir = findResponse.Result.RemoteDir, RemoteFileName = findResponse.Result.RemoteFileName }, InnerResponses = { findResponse } }; }
// --------------------------------------------------------[] private Response<MipGetFeedSubmissionOverallStatusResult> _GetFeedSubmissionOverallStatus( MipFeedSubmissionDescriptor mipFeedSubmissionDescriptor) { try { var response = FindSubmission( mipFeedSubmissionDescriptor, MipFeedSubmissionProcessingStatus.InProgress ); if( response.IsSuccessful ) { return new Response< MipGetFeedSubmissionOverallStatusResult > { ArgsInfo = MakeSubmissionStatusArgsInfo( mipFeedSubmissionDescriptor ), Result = new MipGetFeedSubmissionOverallStatusResult { Status = MipFeedSubmissionOverallStatus.InProgress } }; } response = FindSubmission( mipFeedSubmissionDescriptor, MipFeedSubmissionProcessingStatus.Complete ); if( response.IsSuccessful ) { return GetSubmissionOverallStatusFromOutput( mipFeedSubmissionDescriptor.MipFeedDescriptor.Type, response, mipFeedSubmissionDescriptor ); } return new Response< MipGetFeedSubmissionOverallStatusResult > { ArgsInfo = MakeSubmissionStatusArgsInfo( mipFeedSubmissionDescriptor ), Result = new MipGetFeedSubmissionOverallStatusResult { Status = MipFeedSubmissionOverallStatus.Unknown }, InnerResponses = { response } }; } catch( Exception exception ) { return new Response< MipGetFeedSubmissionOverallStatusResult >( exception ) { ArgsInfo = MakeSubmissionStatusArgsInfo( mipFeedSubmissionDescriptor ) }; } }
// --------------------------------------------------------[] public Response<MipGetFeedSubmissionOverallStatusResult> GetFeedSubmissionOverallStatus( MipFeedSubmissionDescriptor mipFeedSubmissionDescriptor) { return _GetFeedSubmissionOverallStatus( mipFeedSubmissionDescriptor ); }
// --------------------------------------------------------[] public Response<MipFindSubmissionResult> FindSubmission( MipFeedSubmissionDescriptor mipFeedSubmissionDescriptor, MipFeedSubmissionProcessingStatus processingStatus) { return _FindSubmission( mipFeedSubmissionDescriptor, processingStatus ); }
// --------------------------------------------------------[] private static string MakeSubmissionStatusArgsInfo( MipFeedSubmissionDescriptor mipFeedSubmissionDescriptor ) { return "(MipSubmissionId = {0})".SafeFormat( mipFeedSubmissionDescriptor.FeedSubmissionId ); }