Exemplo n.º 1
0
TEST(ActivitySetTest, TestEnd)
{
	MockActivityService		service;
	MockBusClient			busClient;

	busClient.AddMockService(service);

	ActivityPtr activity = Activity::PrepareAdoptedActivity(1);

	MojRefCountedPtr<ActivitySet> actSet(new ActivitySet(busClient));
	actSet->AddActivity(activity);

	Start(busClient, actSet);
	End(busClient, actSet);
}
TEST(BufferedEmailParserTest, TestBodies)
{
	MojRefCountedPtr<BufferedEmailParser> parser(new BufferedEmailParser());
	MockBusClient busClient;
	FileCacheClient fileCacheClient(busClient);

	// Setup filecache
	MockFileCacheService fcService;
	busClient.AddMockService(fcService);

	// Setup channel factory
	boost::shared_ptr<MockAsyncIOChannelFactory> factory(new MockAsyncIOChannelFactory());

	parser->SetChannelFactory(factory);
	parser->EnableHeaderParsing();
	parser->EnableBodyParsing(fileCacheClient, 0);
	parser->Begin();
	FeedParser(parser, "From: [email protected]\r\n");
	FeedParser(parser, "Subject: Test bodies\r\n");
	FeedParser(parser, "Content-type: multipart/alternative; boundary=BOUNDARY\r\n");
	FeedParser(parser, "\r\n");
	FeedParser(parser, "--BOUNDARY\r\n");
	FeedParser(parser, "Content-type: text/plain\r\n");
	FeedParser(parser, "\r\n");
	FeedParser(parser, "BODY A LINE 1\r\n");
	FeedParser(parser, "BODY A LINE 2\r\n");
	FeedParser(parser, "--BOUNDARY\r\n");
	FeedParser(parser, "Content-type: text/html\r\n");
	FeedParser(parser, "\r\n");
	FeedParser(parser, "BODY B LINE 1\r\n");
	FeedParser(parser, "BODY B LINE 2\r\n");
	FeedParser(parser, "--BOUNDARY--\r\n");
	parser->End();

	busClient.ProcessRequests();

	string dataA = factory->GetWrittenData(fcService.GetPathFor(0));
	EXPECT_EQ( "BODY A LINE 1\r\nBODY A LINE 2\r\n", dataA );

	string dataB = factory->GetWrittenData(fcService.GetPathFor(1));
	EXPECT_EQ( "BODY B LINE 1\r\nBODY B LINE 2\r\n", dataB );
}
Exemplo n.º 3
0
TEST(ActivitySetTest, TestEndOrder)
{
	MockActivityService		service;
	MockBusClient			busClient;

	busClient.AddMockService(service);
	MojRefCountedPtr<ActivitySet> actSet(new ActivitySet(busClient));

	ActivityPtr activity1 = Activity::PrepareAdoptedActivity(1);
	actSet->AddActivity(activity1);

	ActivityPtr activity2 = Activity::PrepareAdoptedActivity(2);
	actSet->AddActivity(activity2);

	Start(busClient, actSet);

	activity1->SetEndOrder(Activity::EndOrder_Last);

	End(busClient, actSet);

	// TODO check order ended
	ASSERT_TRUE(activity1->IsEnded());
	ASSERT_TRUE(activity2->IsEnded());
}