1
0
Fork 0
mirror of https://github.com/nix-community/home-manager.git synced 2025-11-08 11:36:05 +01:00
home-manager/tests/modules/programs/khal/config.nix
Malik 58d90d298d tests: khal: add testcase
for singlefile
2025-10-29 16:14:04 +01:00

113 lines
2.6 KiB
Nix

{
programs.khal = {
enable = true;
settings = {
default.timedelta = "5d";
view.agenda_event_format = "{calendar-color}{cancelled}{start-end-time-style} {title}{repeat-symbol}{reset}";
};
};
accounts.calendar = {
basePath = "$XDG_CONFIG_HOME/cal";
accounts = {
test = {
primary = true;
primaryCollection = "test";
khal = {
enable = true;
readOnly = true;
color = "#ff0000";
type = "calendar";
};
local.type = "filesystem";
local.fileExt = ".ics";
name = "test";
remote = {
type = "http";
url = "https://example.com/events.ical";
};
};
testWithAddresss = {
khal = {
enable = true;
addresses = [ "john.doe@email.com" ];
};
local = {
type = "filesystem";
fileExt = ".ics";
};
remote = {
type = "http";
url = "https://example.com/events.ical";
};
};
testWithMultipleAddresss = {
khal = {
enable = true;
addresses = [
"john.doe@email.com"
"another.brick@on.the.wall"
];
};
local = {
type = "filesystem";
fileExt = ".ics";
};
remote = {
type = "http";
url = "https://example.com/events.ical";
};
};
testSinglefile = {
khal = {
enable = true;
readOnly = true;
addresses = [ "study@university.edu" ];
};
local = {
type = "singlefile";
path = "$XDG_CONFIG_HOME/cal/timetable.ics";
};
};
};
};
accounts.contact = {
basePath = "$XDG_CONFIG_HOME/card";
accounts = {
testcontacts = {
khal = {
enable = true;
collections = [
"default"
"automaticallyCollected"
];
};
local.type = "filesystem";
local.fileExt = ".vcf";
name = "testcontacts";
remote = {
type = "http";
url = "https://example.com/contacts.vcf";
};
};
testcontactsNoCollections = {
khal.enable = true;
local.type = "filesystem";
local.fileExt = ".vcf";
name = "testcontactsNoCollections";
remote = {
type = "http";
url = "https://example.com/contacts.vcf";
};
};
};
};
nmt.script = ''
configFile=home-files/.config/khal/config
assertFileExists $configFile
assertFileContent $configFile ${./khal-config-expected}
'';
}