public void CanMapMultiSelectParam() { var repDefn = this.MakeTestReportDefn(); var choiceColl = new CrcParameterChoiceCollection(); var multiSelect = new CrcParameterChoice(); multiSelect.Name = "PretendMultiSelect"; multiSelect.Values = new List <string>() { "M2", "M3" }; choiceColl.ParameterChoiceList.Add(multiSelect); var mapper = new CrcParameterChoiceMapper(); var mapResult = mapper.MapParameterChoices(repDefn, choiceColl); Assert.IsTrue(mapResult.MappingValid); Assert.AreEqual(0, mapResult.Complaints.Count()); var multiParamDefn = repDefn.ParameterDefinitions.FirstOrDefault(p => p.Name == "PretendMultiSelect"); Assert.IsNotNull(multiParamDefn); Assert.IsNotNull(multiParamDefn.ParameterChoice); Assert.AreEqual(2, multiParamDefn.ParameterChoice.Values.Count()); Assert.IsNotNull(multiParamDefn.ParameterChoice.Values.FirstOrDefault(v => v == "M2")); Assert.IsNotNull(multiParamDefn.ParameterChoice.Values.FirstOrDefault(v => v == "M3")); }
public void CanMapDetectWrongName() { var repDefn = this.MakeTestReportDefn(); var choiceColl = new CrcParameterChoiceCollection(); var multiSelect = new CrcParameterChoice(); multiSelect.Name = "WrongName"; multiSelect.Values = new List <string>() { "M2", "M3" }; choiceColl.ParameterChoiceList.Add(multiSelect); var mapper = new CrcParameterChoiceMapper(); var mapResult = mapper.MapParameterChoices(repDefn, choiceColl); Assert.IsFalse(mapResult.MappingValid); Assert.IsTrue(mapResult.Complaints.Contains("Param WrongName not found")); }
public void CanMapDateParam() { var repDefn = this.MakeTestReportDefn(); var choiceColl = new CrcParameterChoiceCollection(); var dateChoice = new CrcParameterChoice(); dateChoice.Name = "PretendDateParam"; dateChoice.SingleValue = "2010-06-02"; choiceColl.ParameterChoiceList.Add(dateChoice); var mapper = new CrcParameterChoiceMapper(); var mapResult = mapper.MapParameterChoices(repDefn, choiceColl); Assert.IsTrue(mapResult.MappingValid); Assert.AreEqual(0, mapResult.Complaints.Count()); var dateParamDefn = repDefn.ParameterDefinitions.FirstOrDefault(p => p.Name == "PretendDateParam"); Assert.IsNotNull(dateParamDefn); Assert.IsNotNull(dateParamDefn.ParameterChoice); Assert.AreEqual("2010-06-02", dateParamDefn.ParameterChoice.SingleValue); }
public void CanMapSingleSelectParam() { var repDefn = this.MakeTestReportDefn(); var choiceColl = new CrcParameterChoiceCollection(); var singleSelect = new CrcParameterChoice(); singleSelect.Name = "PretendSingleSelect"; singleSelect.SingleValue = "S2"; choiceColl.ParameterChoiceList.Add(singleSelect); var mapper = new CrcParameterChoiceMapper(); var mapResult = mapper.MapParameterChoices(repDefn, choiceColl); Assert.IsTrue(mapResult.MappingValid); Assert.AreEqual(0, mapResult.Complaints.Count()); var singleParamDefn = repDefn.ParameterDefinitions.FirstOrDefault(p => p.Name == "PretendSingleSelect"); Assert.IsNotNull(singleParamDefn); Assert.IsNotNull(singleParamDefn.ParameterChoice); Assert.AreEqual("S2", singleParamDefn.ParameterChoice.SingleValue); }
public void CanRefreshDependantParameters_Simple() { // make report defn var repDefn = new CrcReportDefinition(); repDefn.ReportPath = "Test/Report"; var pd1 = new CrcParameterDefinition(); pd1.Name = "ParamOne"; pd1.ValidValues.Add(new CrcValidValue() { Label = "Label1", Value = "Value1" }); pd1.ValidValues.Add(new CrcValidValue() { Label = "Label2", Value = "Value2" }); pd1.ValidValues.Add(new CrcValidValue() { Label = "Label3", Value = "Value3" }); pd1.DependantParameterNames.Add("ParamTwo"); var pd2 = new CrcParameterDefinition(); pd2.Name = "ParamTwo"; pd2.ValidValues.Add(new CrcValidValue() { Label = "SubLabel1_1", Value = "SubValue1_1" }); pd2.ValidValues.Add(new CrcValidValue() { Label = "SubLabel1_2", Value = "SubValue1_2" }); pd2.ValidValues.Add(new CrcValidValue() { Label = "SubLabel2_1", Value = "SubValue2_1" }); pd2.ValidValues.Add(new CrcValidValue() { Label = "SubLabel2_2", Value = "SubValue2_2" }); pd2.ValidValues.Add(new CrcValidValue() { Label = "SubLabel3_1", Value = "SubValue3_1" }); repDefn.ParameterDefinitions.Add(pd1); repDefn.ParameterDefinitions.Add(pd2); // make choice collection var choiceCollection = new CrcParameterChoiceCollection(); var paramChoice = new CrcParameterChoice("ParamOne"); paramChoice.Values.Add("Value2"); choiceCollection.ParameterChoiceList.Add(paramChoice); // make server side params to return ItemParameter p1 = new ItemParameter(); p1.Name = "ParamOne"; p1.ValidValues = new ValidValue[] { new ValidValue() { Label = "Label1", Value = "Value1" }, new ValidValue() { Label = "Label2", Value = "Value2" }, new ValidValue() { Label = "Label3", Value = "Value3" } }; p1.DefaultValues = new string[] { }; ItemParameter p2 = new ItemParameter(); p2.Name = "ParamTwo"; p2.ValidValues = new ValidValue[] { new ValidValue() { Label = "SubLabel2_1", Value = "SubValue2_1" }, new ValidValue() { Label = "SubLabel2_2", Value = "SubValue2_2" } }; p2.DefaultValues = new string[] { }; ItemParameter[] paramArrayToReturn = new ItemParameter[] { p1, p2 }; // make mocks for ccs var mf = new TestDoubles.MockSsrsWebServiceFactory(); var soapClientFactory = mf.MakeMockSoapClientFactory( mf.MakeMockReportingService2010Soap("Value2", paramArrayToReturn)); var cacheMock = MockRepository.GenerateMock <CrcCacheManager>(); var configMock = MockRepository.GenerateMock <CrcExtraConfiguration>(); // make ccs var ccs = new CrissCrossServices(soapClientFactory, cacheMock, configMock, null); ccs.RefreshDependantParameters(repDefn, choiceCollection); Assert.AreEqual(2, repDefn.ParameterDefinitions.Count()); var pd1check = repDefn.ParameterDefinitions.FirstOrDefault(p => p.Name == "ParamOne"); Assert.IsNotNull(pd1check); Assert.AreEqual("Value2", pd1check.ParameterChoice.SingleValue); var pd2check = repDefn.ParameterDefinitions.FirstOrDefault(p => p.Name == "ParamTwo"); Assert.IsNotNull(pd2check); Assert.AreEqual(2, pd2check.ValidValues.Count()); Assert.IsNotNull(pd2check.ValidValues.FirstOrDefault(vv => vv.Value == "SubValue2_1")); Assert.IsNotNull(pd2check.ValidValues.FirstOrDefault(vv => vv.Value == "SubValue2_2")); }