tests

package
v1.11.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Dec 17, 2023 License: Apache-2.0 Imports: 3 Imported by: 0

Documentation

Overview

Package tests exports shared frames and signatures for use by the other bytematcher packages

Index

Constants

This section is empty.

Variables

View Source
var TestBumper = []byte{} /* 447 elements not displayed */

ShortBumper is an sd2 file that breaks sf - this test is for the new machine pattern

View Source
var TestFmts = map[int]Signature{
	134: {
		{0, 0, BOF, patterns.Sequence{255, 254}},
		{0, 0, PREV, patterns.Choice{patterns.Sequence{16}, patterns.Sequence{17}, patterns.Sequence{18}, patterns.Sequence{19}, patterns.Sequence{20}}},
		{46, 1439, PREV, patterns.Sequence{255, 254}},
		{0, 0, PREV, patterns.Choice{patterns.Sequence{16}, patterns.Sequence{17}, patterns.Sequence{18}, patterns.Sequence{19}, patterns.Sequence{20}}},
		{46, 1439, PREV, patterns.Sequence{255, 254}},
		{0, 0, PREV, patterns.Choice{patterns.Sequence{16}, patterns.Sequence{17}, patterns.Sequence{18}, patterns.Sequence{19}, patterns.Sequence{20}}},
		{46, 1439, PREV, patterns.Sequence{255, 254}},
		{0, 0, PREV, patterns.Choice{patterns.Sequence{16}, patterns.Sequence{17}, patterns.Sequence{18}, patterns.Sequence{19}, patterns.Sequence{20}}},
		{46, 1439, PREV, patterns.Sequence{255, 254}},
		{0, 0, PREV, patterns.Choice{patterns.Sequence{16}, patterns.Sequence{17}, patterns.Sequence{18}, patterns.Sequence{19}, patterns.Sequence{20}}},
		{46, 1439, PREV, patterns.Sequence{255, 254}},
		{0, 0, PREV, patterns.Choice{patterns.Sequence{16}, patterns.Sequence{17}, patterns.Sequence{18}, patterns.Sequence{19}, patterns.Sequence{20}}},
		{46, 1439, PREV, patterns.Sequence{255, 254}},
		{0, 0, PREV, patterns.Choice{patterns.Sequence{16}, patterns.Sequence{17}, patterns.Sequence{18}, patterns.Sequence{19}, patterns.Sequence{20}}},
		{46, 1439, PREV, patterns.Sequence{255, 254}},
		{0, 0, PREV, patterns.Choice{patterns.Sequence{16}, patterns.Sequence{17}, patterns.Sequence{18}, patterns.Sequence{19}, patterns.Sequence{20}}},
	},
	13401: {
		{0, 0, SUCC, patterns.Sequence{255, 251}},
		{46, 1439, SUCC, patterns.Choice{patterns.Sequence{16}, patterns.Sequence{17}, patterns.Sequence{18}, patterns.Sequence{19}, patterns.Sequence{20}, patterns.Sequence{125}}},
		{0, 0, SUCC, patterns.Sequence{255, 251}},
		{46, 1439, SUCC, patterns.Choice{patterns.Sequence{16}, patterns.Sequence{17}, patterns.Sequence{18}, patterns.Sequence{19}, patterns.Sequence{20}, patterns.Sequence{125}}},
		{0, 0, SUCC, patterns.Sequence{255, 251}},
		{46, 1439, SUCC, patterns.Choice{patterns.Sequence{16}, patterns.Sequence{17}, patterns.Sequence{18}, patterns.Sequence{19}, patterns.Sequence{20}, patterns.Sequence{125}}},
		{0, 0, SUCC, patterns.Sequence{255, 251}},
		{46, 1439, SUCC, patterns.Choice{patterns.Sequence{16}, patterns.Sequence{17}, patterns.Sequence{18}, patterns.Sequence{19}, patterns.Sequence{20}, patterns.Sequence{125}}},
		{0, 0, SUCC, patterns.Sequence{255, 251}},
		{46, 1439, SUCC, patterns.Choice{patterns.Sequence{16}, patterns.Sequence{17}, patterns.Sequence{18}, patterns.Sequence{19}, patterns.Sequence{20}, patterns.Sequence{125}}},
		{0, 0, SUCC, patterns.Sequence{255, 251}},
		{46, 1439, SUCC, patterns.Choice{patterns.Sequence{16}, patterns.Sequence{17}, patterns.Sequence{18}, patterns.Sequence{19}, patterns.Sequence{20}, patterns.Sequence{125}}},
		{0, 0, SUCC, patterns.Sequence{255, 251}},
		{47, 1795, EOF, patterns.Choice{patterns.Sequence{16}, patterns.Sequence{17}, patterns.Sequence{18}, patterns.Sequence{19}, patterns.Sequence{20}, patterns.Sequence{125}}},
	},
	13405: {
		{0, 0, BOF, patterns.Sequence{255, 251}},
		{0, 0, PREV, patterns.Choice{patterns.Sequence{16}, patterns.Sequence{17}, patterns.Sequence{18}, patterns.Sequence{19}, patterns.Sequence{20}, patterns.Sequence{125}}},
		{46, 1439, PREV, patterns.Sequence{255, 251}},
		{0, 0, PREV, patterns.Choice{patterns.Sequence{16}, patterns.Sequence{17}, patterns.Sequence{18}, patterns.Sequence{19}, patterns.Sequence{20}, patterns.Sequence{125}}},
		{46, 1439, PREV, patterns.Sequence{255, 251}},
		{0, 0, PREV, patterns.Choice{patterns.Sequence{16}, patterns.Sequence{17}, patterns.Sequence{18}, patterns.Sequence{19}, patterns.Sequence{20}, patterns.Sequence{125}}},
		{46, 1439, PREV, patterns.Sequence{255, 251}},
		{0, 0, PREV, patterns.Choice{patterns.Sequence{16}, patterns.Sequence{17}, patterns.Sequence{18}, patterns.Sequence{19}, patterns.Sequence{20}, patterns.Sequence{125}}},
		{46, 1439, PREV, patterns.Sequence{255, 251}},
		{0, 0, PREV, patterns.Choice{patterns.Sequence{16}, patterns.Sequence{17}, patterns.Sequence{18}, patterns.Sequence{19}, patterns.Sequence{20}, patterns.Sequence{125}}},
		{46, 1439, PREV, patterns.Sequence{255, 251}},
		{0, 0, PREV, patterns.Choice{patterns.Sequence{16}, patterns.Sequence{17}, patterns.Sequence{18}, patterns.Sequence{19}, patterns.Sequence{20}, patterns.Sequence{125}}},
		{46, 1439, PREV, patterns.Sequence{255, 251}},
		{0, 0, PREV, patterns.Choice{patterns.Sequence{16}, patterns.Sequence{17}, patterns.Sequence{18}, patterns.Sequence{19}, patterns.Sequence{20}, patterns.Sequence{125}}},
		{46, 1439, PREV, patterns.Sequence{255, 251}},
		{0, 0, PREV, patterns.Choice{patterns.Sequence{16}, patterns.Sequence{17}, patterns.Sequence{18}, patterns.Sequence{19}, patterns.Sequence{20}, patterns.Sequence{125}}},
	},
	418: {
		{0, 0, BOF, patterns.Sequence("%!PS-Adobe-2.0")},
		{16, 512, PREV, patterns.Sequence("%%DocumentNeededResources:")},
		{1, 512, PREV, patterns.Sequence("%%+ procset Adobe_Illustrator")},
		{0, 0, PREV, patterns.Choice{patterns.Sequence("_AI3"), patterns.Sequence("A_AI3")}},
	},
	363: {
		{0, 320, BOF, patterns.Sequence("@@@@@@@@@@@@@@@@@@@@@@")},
		{3200, 3200, BOF, patterns.Sequence{0, 0}},
		{15, 15, PREV, patterns.Not{patterns.Sequence{0}}},
		{3, 3, PREV, patterns.Not{patterns.Sequence{0}}},
		{2, 2, PREV, patterns.Choice{
			patterns.Sequence{1, 0},
			patterns.List{
				patterns.Sequence{0},
				patterns.Sequence{8},
			},
		},
		},
	},
	704: {
		{0, 0, BOF, patterns.Sequence("RIFF")},
		{4, 4, PREV, patterns.Sequence("WAVE")},
		{0, -1, PREV, patterns.Sequence("fmt ")},
		{4, 4, PREV, patterns.Sequence{1, 0}},
		{0, -1, PREV, patterns.Sequence("bext")},
		{350, 350, PREV, patterns.Sequence{1, 0}},
	},
}

TestFmts tests some particularly problematic formats.

View Source
var TestFrames = []Frame{
	{0, 0, BOF, TestSequences[0]},
	{0, 0, BOF, TestSequences[1]},
	{0, 0, SUCC, TestSequences[2]},
	{0, 0, PREV, TestSequences[3]},
	{1, 1, SUCC, TestSequences[0]},
	{0, 5, BOF, TestSequences[0]},
	{10, 20, PREV, TestChoices[2]},
	{10, 20, EOF, TestChoices[0]},
	{0, 1, PREV, TestSequences[3]},
	{0, -1, BOF, TestSequences[0]},
	{0, -1, SUCC, TestChoices[0]},
	{5, -1, BOF, TestSequences[0]},
	{5, -1, EOF, TestSequences[0]},
	{0, 5, BOF, TestChoices[4]},
	{0, -1, PREV, TestSequences[0]},
	{0, -1, BOF, TestSequences[0]},
	{0, -1, BOF, TestSequences[16]},
	{0, 0, EOF, TestSequences[17]},
	{0, 0, BOF, TestLists[0]},
	{0, 0, BOF, TestChoices[6]},
	{0, 0, PREV, TestChoices[2]},
	{5, 5, PREV, TestSequences[0]},
}

TestFrames are exported so they can be used by the other bytematcher packages.

View Source
var TestMP3 = []byte{} /* 6708 elements not displayed */

Test 5th fmt/134 signature - taken from skeleton suite

View Source
var TestMultiLen = []byte("TESTYNESS")

MultiLen is a test for the multi-length Pattern issue: Patterns can have varying lengths, but return longest match only

View Source
var TestSignatures = []Signature{
	{TestFrames[0], TestFrames[6], TestFrames[10], TestFrames[2], TestFrames[7]},
	{TestFrames[1], TestFrames[6], TestFrames[8], TestFrames[2], TestFrames[10], TestFrames[17]},
	{TestFrames[13], TestFrames[14]},
	{TestFrames[1], TestFrames[6], TestFrames[15]},
	{TestFrames[16]},
	{TestFrames[18]},
	{TestFrames[19], TestFrames[20]},
	{TestFrames[0], TestFrames[21], TestFrames[10], TestFrames[2], TestFrames[17]},
}

TestSignatures are exported so they can be used by the other bytematcher packages.

Functions

This section is empty.

Types

This section is empty.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL