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
| File | Structure | MIME | Size |
|---|---|---|---|
| Sample presentation PPTXsample-presentation.pptx | 1 slide | application/vnd.openxmlformats-officedocument.presentationml.presentation | 30 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.
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'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'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");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")