application/vnd.openxmlformats-officedocument.presentationml.presentation

PPTX sample presentation files for testing

Download a verified PPTX fixture for presentation uploads, package detection, slide metadata, conversion, and downloads.

Verified . ZIP signature, Office MIME, package entries, slide count, exact bytes, SHA-256, and download behavior are verified.

Identify PPTX files

Magic signature
50 4B 03 04 (ZIP package)
Registered MIME
application/vnd.openxmlformats-officedocument.presentationml.presentation

PPTX is a ZIP-based OPC package. Confirm presentation and ppt/ entries before treating it as a slide deck.

Choosing PPTX

PPTX is an Office Open XML package. Browser previews normally require converted images or PDF derivatives.

Keep the original package while generating previews.

Show metadata and a download fallback when conversion fails.

Common test cases

  • Presentation upload validation
  • Slide preview conversion
  • Office package inspection

Invalid and boundary cases

  • Missing slide relationships
  • External media links
  • Generic ZIP renamed to PPTX

PPTX fixture matrix

FileStructureMIMESize
Sample presentation PPTXsample-presentation.pptx1 slideapplication/vnd.openxmlformats-officedocument.presentationml.presentation30 KB

Verify the representative fixture

Each command downloads sample-presentation.pptx and uses its published URL. The Node.js and Python examples also verify the exact byte count and SHA-256 digest.

curl

Download the published fixture and inspect its response headers before saving the exact bytes.

curl --fail --location --silent --show-error \
  --output sample-presentation.pptx \
  --write-out 'status=%{http_code}\ncontent_type=%{content_type}\nbytes=%{size_download}\n' \
  'https://assets.testfiles.dev/documents/sample-presentation.pptx'
wget

Save the stable fixture URL without changing the published byte stream.

wget --output-document='sample-presentation.pptx' 'https://assets.testfiles.dev/documents/sample-presentation.pptx'
Node.js

Verify the downloaded byte count and SHA-256 digest in a Node.js workflow.

import assert from "node:assert/strict";
import { createHash } from "node:crypto";

const response = await fetch("https://assets.testfiles.dev/documents/sample-presentation.pptx");
assert.equal(response.ok, true);
assert.match(response.headers.get("content-type") ?? "", /application\/vnd.openxmlformats-officedocument.presentationml.presentation/i);

const bytes = Buffer.from(await response.arrayBuffer());
assert.equal(bytes.length, 31189);
assert.equal(createHash("sha256").update(bytes).digest("hex"), "01ffdf3a49b5fefe20ca1d8441f11925cf1fbf83df429d7135734046e1a85c62");
console.log("Verified sample-presentation.pptx", bytes.length, "bytes");
Python Requests

Verify the same fixture from a Python test or processing pipeline.

import hashlib
import requests

url = "https://assets.testfiles.dev/documents/sample-presentation.pptx"
response = requests.get(url, timeout=30)
response.raise_for_status()

assert "application/vnd.openxmlformats-officedocument.presentationml.presentation" in response.headers.get("content-type", "")
assert len(response.content) == 31189
assert hashlib.sha256(response.content).hexdigest() == "01ffdf3a49b5fefe20ca1d8441f11925cf1fbf83df429d7135734046e1a85c62"
print("Verified sample-presentation.pptx", len(response.content), "bytes")

Continue testing

Related formats

Copied