Skip to content

Commit 10e9c9f

Browse files
committed
changes during review and testing
1 parent 07b2fb5 commit 10e9c9f

3 files changed

Lines changed: 14 additions & 9 deletions

File tree

app.js

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,8 @@ if(process.env.OPEN_API_CORS !== "false") {
3939
'X-HTTP-Method-Override',
4040
'Origin',
4141
'Referrer',
42-
'User-Agent'
42+
'User-Agent',
43+
'If-Overwritten-Version'
4344
],
4445
"exposedHeaders" : "*",
4546
"origin" : "*",

routes/__tests__/overwrite.test.js

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11

22
import { jest } from "@jest/globals"
3-
process.env.RERUM_ID_PATTERN = "https://devstore.rerum.io/v1/id/"
43
import express from "express"
54
import request from "supertest"
65
import overwriteRoute from "../overwrite.js"

routes/overwrite.js

Lines changed: 12 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,10 @@
11
import express from "express"
2+
import checkAccessToken from "../tokens.js"
23
const router = express.Router()
4+
import rerumPropertiesWasher from "../preprocessor.js"
35

46
/* PUT an overwrite to the thing. */
5-
router.put('/', async (req, res, next) => {
7+
router.put('/', checkAccessToken, rerumPropertiesWasher, async (req, res, next) => {
68

79
try {
810

@@ -16,22 +18,21 @@ router.put('/', async (req, res, next) => {
1618
method: 'PUT',
1719
body: JSON.stringify(overwriteBody),
1820
headers: {
19-
'user-agent': 'TinyPen',
20-
'Origin': process.env.ORIGIN,
21+
'user-agent': 'Tiny-Things/1.0',
2122
'Authorization': `Bearer ${process.env.ACCESS_TOKEN}`,
2223
'Content-Type' : "application/json;charset=utf-8"
2324
}
2425
}
2526

2627
// Pass through If-Overwritten-Version header if present
27-
const ifOverwrittenVersion = req.headers['if-overwritten-version']
28-
if (ifOverwrittenVersion) {
28+
const ifOverwrittenVersion = req.headers.hasOwnProperty('if-overwritten-version') ? req.headers['if-overwritten-version'] : null
29+
if (ifOverwrittenVersion !== null) {
2930
overwriteOptions.headers['If-Overwritten-Version'] = ifOverwrittenVersion
3031
}
3132

3233
// Check for __rerum.isOverwritten in body and use as If-Overwritten-Version header
33-
const isOverwrittenValue = req.body?.__rerum?.isOverwritten
34-
if (isOverwrittenValue) {
34+
const isOverwrittenValue = req.body?.__rerum?.hasOwnProperty("isOverwritten") ? req.body.__rerum.isOverwritten : null
35+
if (isOverwrittenValue !== null) {
3536
overwriteOptions.headers['If-Overwritten-Version'] = isOverwrittenValue
3637
}
3738

@@ -63,4 +64,8 @@ router.put('/', async (req, res, next) => {
6364
}
6465
})
6566

67+
router.all('/', (req, res, next) => {
68+
res.status(405).send("Method Not Allowed")
69+
})
70+
6671
export default router

0 commit comments

Comments
 (0)