-
Notifications
You must be signed in to change notification settings - Fork 68
Open
Labels
Description
Hello,
I am using Allure.Reqnroll
.
Steps to reproduce
Run the following code:
AllureApi.AddAttachment(
"Video Recording",
"video/mp4",
"https://www.browserstack.com/some-video.mp4"
);
Expected outcome
The video is not downloaded but playable in the report
Actual outcome
Received the following error:
System.IO.IOException : The filename, directory name, or volume label syntax is incorrect. : 'C:\my-project\bin\Debug\net8.0\https:\www.browserstack.com\some-video.mp4'
Additional notes
I also tried this:
var attachment = new Attachment
{
name = "Video Recording",
type = "video/mp4",
source = "https://www.browserstack.com/some-video.mp4"
};
AllureLifecycle.Instance.UpdateExecutableItem(
delegate(ExecutableItem item)
{
item.attachments.Add(attachment);
}
);
It worked! When I ran allure generate
though I got the following error:
Exception in thread "main" java.nio.file.InvalidPathException: Illegal char <:> at index 5: https://www.browserstack.com/some-video.mp4
at java.base/sun.nio.fs.WindowsPathParser.normalize(WindowsPathParser.java:182)
at java.base/sun.nio.fs.WindowsPathParser.parse(WindowsPathParser.java:153)
at java.base/sun.nio.fs.WindowsPathParser.parse(WindowsPathParser.java:77)
at java.base/sun.nio.fs.WindowsPath.parse(WindowsPath.java:92)
at java.base/sun.nio.fs.WindowsFileSystem.getPath(WindowsFileSystem.java:232)
at java.base/java.nio.file.Path.resolve(Path.java:515)
at io.qameta.allure.allure2.Allure2Plugin.convert(Allure2Plugin.java:267)
at io.qameta.allure.allure2.Allure2Plugin.lambda$convert$10(Allure2Plugin.java:232)
at java.base/java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:197)
at java.base/java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:179)
at java.base/java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1625)
at java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:509)
at java.base/java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:499)
at java.base/java.util.stream.ReduceOps$ReduceOp.evaluateSequential(ReduceOps.java:921)
at java.base/java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
at java.base/java.util.stream.ReferencePipeline.collect(ReferencePipeline.java:682)
at io.qameta.allure.util.ConvertUtils.convertList(ConvertUtils.java:45)
at io.qameta.allure.util.ConvertUtils.convertList(ConvertUtils.java:36)
at io.qameta.allure.allure2.Allure2Plugin.convert(Allure2Plugin.java:232)
at io.qameta.allure.allure2.Allure2Plugin.lambda$processStages$5(Allure2Plugin.java:159)
at java.base/java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:197)
at java.base/java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1625)
at java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:509)
at java.base/java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:499)
at java.base/java.util.stream.ReduceOps$ReduceOp.evaluateSequential(ReduceOps.java:921)
at java.base/java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
at java.base/java.util.stream.ReferencePipeline.collect(ReferencePipeline.java:682)
at io.qameta.allure.allure2.Allure2Plugin.processStages(Allure2Plugin.java:160)
at io.qameta.allure.allure2.Allure2Plugin.lambda$readResults$1(Allure2Plugin.java:122)
at java.base/java.util.stream.ForEachOps$ForEachOp$OfRef.accept(ForEachOps.java:183)
at java.base/java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:179)
at java.base/java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:197)
at java.base/java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:179)
at java.base/java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:197)
at java.base/java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1625)
at java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:509)
at java.base/java.util.stream.ForEachOps$ForEachTask.compute(ForEachOps.java:290)
at java.base/java.util.concurrent.CountedCompleter.exec(CountedCompleter.java:754)
at java.base/java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:373)
at java.base/java.util.concurrent.ForkJoinTask.invoke(ForkJoinTask.java:686)
at java.base/java.util.stream.ForEachOps$ForEachOp.evaluateParallel(ForEachOps.java:159)
at java.base/java.util.stream.ForEachOps$ForEachOp$OfRef.evaluateParallel(ForEachOps.java:173)
at java.base/java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:233)
at java.base/java.util.stream.ReferencePipeline.forEach(ReferencePipeline.java:596)
at io.qameta.allure.allure2.Allure2Plugin.readResults(Allure2Plugin.java:121)
at io.qameta.allure.ReportGenerator.lambda$readResults$0(ReportGenerator.java:55)
at java.base/java.util.ArrayList.forEach(ArrayList.java:1511)
at io.qameta.allure.ReportGenerator.readResults(ReportGenerator.java:55)
at java.base/java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:197)
at java.base/java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:179)
at java.base/java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1625)
at java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:509)
at java.base/java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:499)
at java.base/java.util.stream.ReduceOps$ReduceOp.evaluateSequential(ReduceOps.java:921)
at java.base/java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
at java.base/java.util.stream.ReferencePipeline.collect(ReferencePipeline.java:682)
at io.qameta.allure.ReportGenerator.generate(ReportGenerator.java:120)
at io.qameta.allure.ReportGenerator.generate(ReportGenerator.java:103)
at io.qameta.allure.Commands.generate(Commands.java:146)
at io.qameta.allure.Commands.generate(Commands.java:174)
at io.qameta.allure.CommandLine.run(CommandLine.java:160)
at java.base/java.util.Optional.orElseGet(Optional.java:364)
at io.qameta.allure.CommandLine.main(CommandLine.java:92)