|
1 | | -import { encodePngRgba, fillPixel } from "openclaw/plugin-sdk/media-runtime"; |
2 | | - |
3 | 1 | export const MATRIX_QA_IMAGE_ATTACHMENT_FILENAME = "red-top-blue-bottom.png"; |
4 | 2 | |
5 | 3 | export type MatrixQaMediaTypeCoverageCase = { |
@@ -14,21 +12,13 @@ export type MatrixQaMediaTypeCoverageCase = {
|
14 | 12 | }; |
15 | 13 | |
16 | 14 | const MATRIX_QA_IMAGE_COLOR_GROUPS = [["red"], ["blue"]] as const; |
| 15 | +const MATRIX_QA_SPLIT_COLOR_PNG_BASE64 = |
| 16 | +"iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAHElEQVR4nGP4z8DwnxLMMGrAsDCAQv2jBgwPAwAxtf4Q24P5oAAAAABJRU5ErkJggg=="; |
17 | 17 | const MATRIX_QA_ONE_PIXEL_JPEG_BASE64 = |
18 | 18 | "/9j/4AAQSkZJRgABAQAAAQABAAD/2wCEAAkGBxAQEBUQEBAVFRUVFRUVFRUVFRUVFRUVFRUXFhUVFRUYHSggGBolHRUVITEhJSkrLi4uFx8zODMsNygtLisBCgoKDg0OGhAQGi0fHyUtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLf/AABEIAAEAAQMBIgACEQEDEQH/xAAXAAEBAQEAAAAAAAAAAAAAAAAAAQID/8QAFhEBAQEAAAAAAAAAAAAAAAAAAAER/9oADAMBAAIQAxAAAAH2AP/EABgQAQEAAwAAAAAAAAAAAAAAAAEAEQIS/9oACAEBAAEFAk1o7//EABYRAQEBAAAAAAAAAAAAAAAAAAABEf/aAAgBAwEBPwGn/8QAFhEBAQEAAAAAAAAAAAAAAAAAABEB/9oACAECAQE/AYf/xAAaEAACAgMAAAAAAAAAAAAAAAABEQAhMUFh/9oACAEBAAY/AjK9cY2f/8QAGhABAQACAwAAAAAAAAAAAAAAAAERITFBUf/aAAgBAQABPyGQk7W5jVYkA//Z"; |
19 | 19 | |
20 | 20 | export function createMatrixQaSplitColorImagePng() { |
21 | | -const width = 16; |
22 | | -const height = 16; |
23 | | -const rgba = Buffer.alloc(width * height * 4); |
24 | | -for (let y = 0; y < height; y += 1) { |
25 | | -const isTopHalf = y < height / 2; |
26 | | -for (let x = 0; x < width; x += 1) { |
27 | | -const [red, green, blue] = isTopHalf ? [255, 0, 0] : [0, 0, 255]; |
28 | | -fillPixel(rgba, x, y, width, red, green, blue); |
29 | | -} |
30 | | -} |
31 | | -return encodePngRgba(rgba, width, height); |
| 21 | +return Buffer.from(MATRIX_QA_SPLIT_COLOR_PNG_BASE64, "base64"); |
32 | 22 | } |
33 | 23 | |
34 | 24 | function createMatrixQaOnePixelJpeg() { |
|