public async Task Stamp_Test_StampV2XMLV1Async() { var build = new BuildSettings(); StampV2 stamp = new StampV2(build.Url, build.User, build.Password); var xml = GetXml(build); var response = (StampResponseV1)await stamp.TimbrarV1Async(xml); Assert.True(response.status == "success" && !string.IsNullOrEmpty(response.data.tfd), "El resultado data.tfd viene vacio."); response = (StampResponseV1)await stamp.TimbrarV1Async(xml); Assert.True(response.status == "error" && response.message == "307. El comprobante contiene un timbre previo."); }
public async Task Stamp_Test_ValidateIsUTF8FromXMLAsync() { var resultExpect = "301"; var build = new BuildSettings(); StampV2 stamp = new StampV2(build.Url, build.Token); var xml = Encoding.UTF8.GetString(File.ReadAllBytes("Resources/fileANSI.xml")); var response = await stamp.TimbrarV1Async(xml); Assert.True(response.message.Contains(resultExpect), "Result not expected. Error: " + response.message); }
public async Task Stamp_Test_ValidateEmptyXMLAsync() { var resultExpect = "Xml CFDI33 no proporcionado o viene vacio."; var build = new BuildSettings(); StampV2 stamp = new StampV2(build.Url, build.Token); var xml = File.ReadAllText("Resources/EmptyXML.xml"); var response = await stamp.TimbrarV1Async(xml); Assert.Equal(response.message, (string)resultExpect); }
public async Task Stamp_Test_ValidateExistTokenAsync() { var resultExpect = "401 Unauthorized"; var build = new BuildSettings(); StampV2 stamp = new StampV2(build.Url, ""); var xml = File.ReadAllText("Resources/file.xml"); var response = await stamp.TimbrarV1Async(xml); Assert.True(response.message.Contains("401"), (string)resultExpect); }
public async Task Stamp_Test_ValidateServerErrorAsync() { var resultExpect = "404"; var build = new BuildSettings(); StampV2 stamp = new StampV2(build.Url + "/ot", build.Token); var xml = File.ReadAllText("Resources/file.xml"); var response = await stamp.TimbrarV1Async(xml); Assert.Equal(response.message, (string)resultExpect); }
public async Task Stamp_Test_ValidateSpecialCharactersFromXMLAsync() { var build = new BuildSettings(); StampV2 stamp = new StampV2(build.Url, build.Token); var xml = File.ReadAllText("Resources/SpecialCharacters.xml"); xml = SignTools.SigXml(xml, Convert.FromBase64String(build.Pfx), build.CerPassword); var response = await stamp.TimbrarV1Async(xml); Assert.True(response.status == "success", "Result not expected. Error: " + response.message); Assert.False(string.IsNullOrEmpty(response.data.tfd), "Result not expected. Error: " + response.message); }
public async Task Stamp_Test_MultipleStampV2XMLV1byTokenAsync() { var build = new BuildSettings(); var resultExpect = false; int iterations = 10; StampV2 stamp = new StampV2(build.Url, build.Token); List <StampResponseV1> listXmlResult = new List <StampResponseV1>(); for (int i = 0; i < iterations; i++) { string xml = Encoding.UTF8.GetString(File.ReadAllBytes("Resources/file.xml")); xml = SignTools.SigXml(xml, Convert.FromBase64String(build.Pfx), build.CerPassword); var response = (StampResponseV1)await stamp.TimbrarV1Async(xml); listXmlResult.Add(response); } if (listXmlResult != null) { resultExpect = listXmlResult.FindAll(w => w.status == ResponseType.success.ToString() || w.message.Contains("72 horas")).Count == iterations; } Assert.True((bool)resultExpect); }