mirror of
https://github.com/vrtmrz/obsidian-livesync.git
synced 2026-05-14 03:21:17 +00:00
Fixed: No longer credentials are broken during object storage configuration (related: #852).
Co-authored-by: Copilot <copilot@github.com>
This commit is contained in:
@@ -0,0 +1,83 @@
|
||||
import { describe, expect, it } from "vitest";
|
||||
import { DEFAULT_SETTINGS, REMOTE_COUCHDB, REMOTE_MINIO } from "../../../lib/src/common/types";
|
||||
import { syncActivatedRemoteSettings } from "./remoteConfigBuffer";
|
||||
|
||||
describe("syncActivatedRemoteSettings", () => {
|
||||
it("should copy active MinIO credentials into the editing buffer", () => {
|
||||
const target = {
|
||||
...DEFAULT_SETTINGS,
|
||||
remoteType: REMOTE_COUCHDB,
|
||||
activeConfigurationId: "old-remote",
|
||||
accessKey: "",
|
||||
secretKey: "",
|
||||
endpoint: "",
|
||||
bucket: "",
|
||||
region: "",
|
||||
encrypt: true,
|
||||
};
|
||||
const source = {
|
||||
...DEFAULT_SETTINGS,
|
||||
remoteType: REMOTE_MINIO,
|
||||
activeConfigurationId: "remote-s3",
|
||||
accessKey: "access",
|
||||
secretKey: "secret",
|
||||
endpoint: "https://minio.example.test",
|
||||
bucket: "vault",
|
||||
region: "sz-hq",
|
||||
bucketPrefix: "folder/",
|
||||
useCustomRequestHandler: false,
|
||||
forcePathStyle: true,
|
||||
bucketCustomHeaders: "",
|
||||
};
|
||||
|
||||
syncActivatedRemoteSettings(target, source);
|
||||
|
||||
expect(target.remoteType).toBe(REMOTE_MINIO);
|
||||
expect(target.activeConfigurationId).toBe("remote-s3");
|
||||
expect(target.accessKey).toBe("access");
|
||||
expect(target.secretKey).toBe("secret");
|
||||
expect(target.endpoint).toBe("https://minio.example.test");
|
||||
expect(target.bucket).toBe("vault");
|
||||
expect(target.region).toBe("sz-hq");
|
||||
expect(target.bucketPrefix).toBe("folder/");
|
||||
expect(target.encrypt).toBe(true);
|
||||
});
|
||||
|
||||
it("should clear stale dirty values from a different remote type", () => {
|
||||
const target = {
|
||||
...DEFAULT_SETTINGS,
|
||||
remoteType: REMOTE_MINIO,
|
||||
activeConfigurationId: "remote-s3",
|
||||
accessKey: "access",
|
||||
secretKey: "secret",
|
||||
endpoint: "https://minio.example.test",
|
||||
bucket: "vault",
|
||||
region: "sz-hq",
|
||||
couchDB_URI: "https://edited.invalid",
|
||||
couchDB_USER: "edited-user",
|
||||
couchDB_PASSWORD: "edited-pass",
|
||||
couchDB_DBNAME: "edited-db",
|
||||
};
|
||||
const source = {
|
||||
...DEFAULT_SETTINGS,
|
||||
remoteType: REMOTE_MINIO,
|
||||
activeConfigurationId: "remote-s3",
|
||||
accessKey: "access",
|
||||
secretKey: "secret",
|
||||
endpoint: "https://minio.example.test",
|
||||
bucket: "vault",
|
||||
region: "sz-hq",
|
||||
couchDB_URI: "https://current.example.test",
|
||||
couchDB_USER: "current-user",
|
||||
couchDB_PASSWORD: "current-pass",
|
||||
couchDB_DBNAME: "current-db",
|
||||
};
|
||||
|
||||
syncActivatedRemoteSettings(target, source);
|
||||
|
||||
expect(target.couchDB_URI).toBe("https://current.example.test");
|
||||
expect(target.couchDB_USER).toBe("current-user");
|
||||
expect(target.couchDB_PASSWORD).toBe("current-pass");
|
||||
expect(target.couchDB_DBNAME).toBe("current-db");
|
||||
});
|
||||
});
|
||||
Reference in New Issue
Block a user