public void TestVMAPAdBreaksSetSerializerSerializeAdBreaksSet() { ISerializeAdBreaksSet vmapSerializer = new VMAPAdBreaksSetSerializer(); var timeOffsets = testContextInstance.DataRow["TimeOffsets"].ToString().Split(new string[] { "|" }, StringSplitOptions.None); var positionTypes = testContextInstance.DataRow["PositionTypes"].ToString().Split(new string[] { "|" }, StringSplitOptions.None); var positionIds = testContextInstance.DataRow["PositionIds"].ToString().Split(new string[] { "|" }, StringSplitOptions.None); var vastVersions = testContextInstance.DataRow["VASTVersions"].ToString().Split(new string[] { "|" }, StringSplitOptions.None); var inputDatas = testContextInstance.DataRow["InputDatas"].ToString().Split(new string[] { "|" }, StringSplitOptions.None); var events = testContextInstance.DataRow["events"].ToString().Split(new string[] { "|" }, StringSplitOptions.None); var extensionStrings = testContextInstance.DataRow["Extensions"].ToString().Split(new string[] { "|" }, StringSplitOptions.None); var adBreaks = new Dictionary <DataModels.AdPositionReleaseInfo, string>(); for (int i = 0; i < timeOffsets.Length; i++) { var timeOffset = timeOffsets[i]; var positionType = positionTypes[i]; var positionId = positionIds[i]; var vastVersion = vastVersions[i]; var inputData = inputDatas[i]; var trackingEventStrings = events[i].Split(new string[] { ";" }, StringSplitOptions.RemoveEmptyEntries); var trackingEvents = new Dictionary <string, string>(); foreach (var trackingEventString in trackingEventStrings) { var keyValuePair = trackingEventString.Split(new string[] { "\\" }, StringSplitOptions.RemoveEmptyEntries); trackingEvents[keyValuePair[0]] = keyValuePair[1]; } adBreaks.Add(new DataModels.AdPositionReleaseInfo() { TimeOffset = timeOffset, PositionType = (Lorn.ADSP.Common.DataModels.AdPositionType) int.Parse(positionType), AdPositionId = new Guid(positionId), VASTVersion = float.Parse(vastVersion), TrackingEvents = trackingEvents }, inputData); } var extensions = new Dictionary <string, string>(); foreach (var extensionString in extensionStrings) { var keyValuePair = extensionString.Split(new string[] { ":" }, StringSplitOptions.RemoveEmptyEntries); extensions[keyValuePair[0]] = keyValuePair[1]; } var output = vmapSerializer.SerializeAdBreaksSet(adBreaks, extensions); Assert.AreEqual(testContextInstance.DataRow["Output"], output); }
public void TestVMAPAdBreaksSetSerializerSerializeAdBreaksSet() { ISerializeAdBreaksSet vmapSerializer = new VMAPAdBreaksSetSerializer(); var timeOffsets = testContextInstance.DataRow["TimeOffsets"].ToString().Split(new string[] { "|" }, StringSplitOptions.None); var positionTypes = testContextInstance.DataRow["PositionTypes"].ToString().Split(new string[] { "|" }, StringSplitOptions.None); var positionIds = testContextInstance.DataRow["PositionIds"].ToString().Split(new string[] { "|" }, StringSplitOptions.None); var vastVersions = testContextInstance.DataRow["VASTVersions"].ToString().Split(new string[] { "|" }, StringSplitOptions.None); var inputDatas = testContextInstance.DataRow["InputDatas"].ToString().Split(new string[] { "|" }, StringSplitOptions.None); var events = testContextInstance.DataRow["events"].ToString().Split(new string[] { "|" }, StringSplitOptions.None); var extensionStrings = testContextInstance.DataRow["Extensions"].ToString().Split(new string[] { "|" }, StringSplitOptions.None); var adBreaks = new Dictionary<DataModels.AdPositionReleaseInfo, string>(); for (int i = 0; i < timeOffsets.Length; i++) { var timeOffset = timeOffsets[i]; var positionType = positionTypes[i]; var positionId = positionIds[i]; var vastVersion = vastVersions[i]; var inputData = inputDatas[i]; var trackingEventStrings = events[i].Split(new string[] { ";" }, StringSplitOptions.RemoveEmptyEntries); var trackingEvents = new Dictionary<string, string>(); foreach (var trackingEventString in trackingEventStrings) { var keyValuePair = trackingEventString.Split(new string[] { "\\" }, StringSplitOptions.RemoveEmptyEntries); trackingEvents[keyValuePair[0]] = keyValuePair[1]; } adBreaks.Add(new DataModels.AdPositionReleaseInfo() { TimeOffset = timeOffset, PositionType = (Lorn.ADSP.Common.DataModels.AdPositionType)int.Parse(positionType), AdPositionId = new Guid(positionId), VASTVersion = float.Parse(vastVersion), TrackingEvents = trackingEvents }, inputData); } var extensions = new Dictionary<string, string>(); foreach (var extensionString in extensionStrings) { var keyValuePair = extensionString.Split(new string[] { ":" }, StringSplitOptions.RemoveEmptyEntries); extensions[keyValuePair[0]] = keyValuePair[1]; } var output = vmapSerializer.SerializeAdBreaksSet(adBreaks, extensions); Assert.AreEqual(testContextInstance.DataRow["Output"], output); }