You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
/// Manages file transfer from data collector to test runner service.
28
+
///
29
+
/// Events are handled sequentially so it's not possible have parallel AddAttachment/GetAttachments for the same DataCollectionContext.
30
+
/// DataCollectionContext can be a session context(session start/end) or a test case context(test case start/end).
31
+
///
32
+
/// We have two type of events that will fire a collection of files "session end" and "test case end".
33
+
/// File are sent and copied/moved in parallel using async tasks, for these reason we need to use an async structure ConcurrentDictionary
34
+
/// to be able to handle parallel test case start/end events(if host run tests in parallel).
35
+
///
36
+
/// We could avoid to use ConcurrentDictionary for the list of the attachment sets of a specific DataCollectionContext, but
37
+
/// we don't know how the user will implement the datacollector and they could send file out of events(wrong usage, no more expected sequential access AddAttachment->GetAttachments),
38
+
/// so we prefer protect every collection. This not means that outcome will be "always correct"(file attached in a correct way) but at least we avoid exceptions.
0 commit comments