blob: 99131ddab97fca74dac51879038ca20901562b2a (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
|
# frozen_string_literal: true
require_relative '../../components/storage'
RSpec.describe NanoBot::Components::Storage do
it 'symbolizes keys' do
expect(
described_class.cartridges_path(
components: { home: '/home/aqua', ENV: {}, directory?: ->(_) { true } }
)
).to eq('/home/aqua/.local/share/nano-bots/cartridges')
expect(
described_class.cartridges_path(
components: {
home: '/home/aqua',
ENV: { 'NANO_BOTS_CARTRIDGES_DIRECTORY' => '/home/aqua/my-cartridges' },
directory?: ->(_) { true }
}
)
).to eq('/home/aqua/my-cartridges')
expect(
described_class.cartridges_path(
components: {
home: '/home/aqua',
ENV: {
'NANO_BOTS_CARTRIDGES_DIRECTORY' => '/home/aqua/my-cartridges',
'NANO_BOTS_CARTRIDGES_PATH' => '/home/aqua/lime/my-cartridges'
},
directory?: ->(_) { true }
}
)
).to eq('/home/aqua/lime/my-cartridges:/home/aqua/my-cartridges')
expect(
described_class.cartridges_path(
components: {
home: '/home/aqua',
ENV: {
'NANO_BOTS_CARTRIDGES_DIRECTORY' => '/home/aqua/my-cartridges',
'NANO_BOTS_CARTRIDGES_PATH' => '/home/aqua/lime/my-cartridges:/home/aqua/ivory/my-cartridges'
},
directory?: lambda do |path|
{ '/home/aqua/my-cartridges' => true,
'/home/aqua/lime/my-cartridge' => false,
'/home/aqua/ivory/my-cartridges' => true }[path]
end
}
)
).to eq('/home/aqua/ivory/my-cartridges:/home/aqua/my-cartridges')
end
end
|