public void WriteVersion5(string inputResourceName, Type resourceAnchor, byte[] expectedWevt)
        {
            var manifest = TestHelper.LoadManifest(resourceAnchor, inputResourceName);

            using var tempFile = new TempFile();
            using (var writer = new EventTemplateWriter(tempFile.Stream))
                writer.Write(manifest.Providers);

            SequenceAssert.SequenceEqual(expectedWevt, tempFile.Stream.ReadAllBytes());
        }
Exemple #2
0
        public bool EmitEventTemplate()
        {
            if (combinedResGenManifest == null)
            {
                diags.ReportError("Compilation has no manifests for resource generation.");
                return(false);
            }

            var trap = diags.TrapError();

            FileStream output = FileUtilities.TryCreateFile(
                diags, opts.EventTemplateFile, 4096, FileOptions.RandomAccess);

            if (output == null)
            {
                return(false);
            }

            using (output)
                using (var writer = new EventTemplateWriter(output)) {
                    if (opts.CompatibilityLevel != null)
                    {
                        if (opts.CompatibilityLevel <= new Version(8, 1))
                        {
                            writer.UseLegacyTemplateIds = true;
                        }
                        else if (opts.CompatibilityLevel < new Version(10, 0, 16299))
                        {
                            writer.Version = 3;
                        }
                    }
                    writer.Write(combinedResGenManifest.Providers);
                }

            return(!trap.ErrorOccurred);
        }