Skip to content

Commit c29269d

Browse files
authored
Merge pull request #114 from dessa-oss/am-atlas-installer-version-fix
[AM] Use a release version that strips ".dev#"
2 parents f2c93f5 + 053cc04 commit c29269d

File tree

2 files changed

+73
-59
lines changed

2 files changed

+73
-59
lines changed
Lines changed: 70 additions & 57 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,8 @@
1-
21
from foundations_spec import *
32
from foundations.job_parameters import flatten_parameter_dictionary
43

5-
class TestFlattenParameterDictionary(Spec):
64

5+
class TestFlattenParameterDictionary(Spec):
76
@let
87
def random_key(self):
98
return self.faker.word()
@@ -24,15 +23,20 @@ def random_literal_list_value(self):
2423

2524
@let
2625
def random_literal_dict_value(self):
27-
return {key: value for key, value in zip(self.random_literal_list(), self.random_literal_list())}
26+
return {
27+
key: value
28+
for key, value in zip(
29+
self.random_literal_list(), self.random_literal_list()
30+
)
31+
}
2832

2933
@let
3034
def random_length(self):
3135
return self.faker.random_int(1, 10)
32-
36+
3337
@let
3438
def random_int(self):
35-
return self.faker.random_int(1,1000)
39+
return self.faker.random_int(1, 1000)
3640

3741
@let
3842
def random_float(self):
@@ -41,21 +45,31 @@ def random_float(self):
4145
def test_flatten_empty_dictionary_returns_empty_dictionary(self):
4246
parameter_input = {}
4347
flattened_parameter_input = flatten_parameter_dictionary(parameter_input)
44-
48+
4549
self.assertEqual({}, flattened_parameter_input)
4650

4751
def test_key_and_value_returns_key_and_value(self):
4852
parameter_input = {self.random_key: self.random_string_literal}
4953
flattened_parameter_input = flatten_parameter_dictionary(parameter_input)
5054

51-
self.assertEqual({self.random_key: self.random_string_literal}, flattened_parameter_input)
55+
self.assertEqual(
56+
{self.random_key: self.random_string_literal}, flattened_parameter_input
57+
)
5258

53-
def test_key_with_value_of_list_of_literals_returns_key_concatenated_with_list_index(self):
59+
def test_key_with_value_of_list_of_literals_returns_key_concatenated_with_list_index(
60+
self,
61+
):
5462
parameter_input = {self.random_key: self.random_literal_list_value}
5563
flattened_parameter_input = flatten_parameter_dictionary(parameter_input)
5664

57-
list_of_keys = map(lambda list_index: '{}_{}'.format(self.random_key, list_index), range(self.random_length))
58-
expected_output = {key: value for key, value in zip(list_of_keys, self.random_literal_list_value)}
65+
list_of_keys = map(
66+
lambda list_index: f"{self.random_key}_{list_index}",
67+
range(self.random_length),
68+
)
69+
expected_output = {
70+
key: value
71+
for key, value in zip(list_of_keys, self.random_literal_list_value)
72+
}
5973

6074
self.assertEqual(expected_output, flattened_parameter_input)
6175

@@ -69,8 +83,10 @@ def test_key_with_value_float_returns_key_and_value(self):
6983
parameter_input = {self.random_key: self.random_float}
7084
flattened_parameter_input = flatten_parameter_dictionary(parameter_input)
7185

72-
self.assertEqual({self.random_key: self.random_float}, flattened_parameter_input)
73-
86+
self.assertEqual(
87+
{self.random_key: self.random_float}, flattened_parameter_input
88+
)
89+
7490
def test_key_with_value_none_returns_key_and_value(self):
7591
parameter_input = {self.random_key: None}
7692
flattened_parameter_input = flatten_parameter_dictionary(parameter_input)
@@ -89,49 +105,53 @@ def test_key_with_value_empty_list_turns_value_dict_into_none(self):
89105

90106
self.assertEqual({self.random_key: None}, flattened_parameter_input)
91107

92-
def test_key_with_value_of_dict_of_literals_returns_key_concatenated_with_nested_dict_keys(self):
108+
def test_key_with_value_of_dict_of_literals_returns_key_concatenated_with_nested_dict_keys(
109+
self,
110+
):
93111
parameter_input = {self.random_key: self.random_literal_dict_value}
94112
flattened_parameter_input = flatten_parameter_dictionary(parameter_input)
95113

96-
expected_output = {'{}_{}'.format(self.random_key, nested_key): nested_value for nested_key, nested_value in self.random_literal_dict_value.items()}
114+
expected_output = {
115+
f"{self.random_key}_{nested_key}": nested_value
116+
for nested_key, nested_value in self.random_literal_dict_value.items()
117+
}
97118
self.assertEqual(expected_output, flattened_parameter_input)
98119

99120
def test_multiple_keys_with_at_most_singly_nested_values(self):
100-
none_literal_key = self.faker.word()
101-
int_literal_key = self.faker.word()
102-
float_literal_key = self.faker.word()
103-
string_literal_key = self.faker.word()
104-
non_empty_dictionary_key = self.faker.word()
105-
non_empty_list_key = self.faker.word()
106-
empty_dictionary_key = self.faker.word()
107-
empty_list_key = self.faker.word()
108-
109121
parameter_input = {
110-
none_literal_key: None,
111-
int_literal_key: self.random_int,
112-
float_literal_key: self.random_float,
113-
string_literal_key: self.random_string_literal,
114-
empty_dictionary_key: {},
115-
empty_list_key: [],
116-
non_empty_list_key: self.random_literal_list_value,
117-
non_empty_dictionary_key: self.random_literal_dict_value
122+
"none_literal_key": None,
123+
"int_literal_key": self.random_int,
124+
"float_literal_key": self.random_float,
125+
"string_literal_key": self.random_string_literal,
126+
"empty_dictionary_key": {},
127+
"empty_list_key": [],
128+
"non_empty_list_key": self.random_literal_list_value,
129+
"non_empty_dictionary_key": self.random_literal_dict_value,
118130
}
119131

120132
expected_output = {
121-
none_literal_key: None,
122-
int_literal_key: self.random_int,
123-
float_literal_key: self.random_float,
124-
string_literal_key: self.random_string_literal,
125-
empty_dictionary_key: None,
126-
empty_list_key: None
133+
"none_literal_key": None,
134+
"int_literal_key": self.random_int,
135+
"float_literal_key": self.random_float,
136+
"string_literal_key": self.random_string_literal,
137+
"empty_dictionary_key": None,
138+
"empty_list_key": None,
127139
}
128140

129-
list_of_keys = map(lambda list_index: '{}_{}'.format(non_empty_list_key, list_index), range(self.random_length))
130-
list_output = {key: value for key, value in zip(list_of_keys, self.random_literal_list_value)}
141+
list_of_keys = map(
142+
lambda list_index: f"non_empty_list_key_{list_index}",
143+
range(self.random_length),
144+
)
145+
list_output = {
146+
key: value
147+
for key, value in zip(list_of_keys, self.random_literal_list_value)
148+
}
131149

132150
expected_output.update(list_output)
133-
134-
expected_dict_output = {'{}_{}'.format(non_empty_dictionary_key, nested_key): nested_value for nested_key, nested_value in self.random_literal_dict_value.items()}
151+
expected_dict_output = {
152+
f"non_empty_dictionary_key_{nested_key}": nested_value
153+
for nested_key, nested_value in self.random_literal_dict_value.items()
154+
}
135155

136156
expected_output.update(expected_dict_output)
137157

@@ -140,29 +160,22 @@ def test_multiple_keys_with_at_most_singly_nested_values(self):
140160
def test_value_is_list_of_lists_flattens_correctly(self):
141161
parameter_input = {self.random_key: [[0, 1], [2, 3]]}
142162
expected_output = {
143-
self.random_key + '_0_0': 0,
144-
self.random_key + '_0_1': 1,
145-
self.random_key + '_1_0': 2,
146-
self.random_key + '_1_1': 3
163+
self.random_key + "_0_0": 0,
164+
self.random_key + "_0_1": 1,
165+
self.random_key + "_1_0": 2,
166+
self.random_key + "_1_1": 3,
147167
}
148168

149169
self.assertEqual(expected_output, flatten_parameter_dictionary(parameter_input))
150170

151171
def test_value_is_dict_of_dicts_flattens_correctly(self):
152172
parameter_input = {
153-
self.random_key: {
154-
'key_zero': {
155-
'hello': 'there'
156-
},
157-
'key_one': {
158-
'bye': 'bye'
159-
}
160-
}
173+
self.random_key: {"key_zero": {"hello": "there"}, "key_one": {"bye": "bye"}}
161174
}
162-
175+
163176
expected_output = {
164-
self.random_key + '_key_zero_hello': 'there',
165-
self.random_key + '_key_one_bye': 'bye'
177+
self.random_key + "_key_zero_hello": "there",
178+
self.random_key + "_key_one_bye": "bye",
166179
}
167180

168-
self.assertEqual(expected_output, flatten_parameter_dictionary(parameter_input))
181+
self.assertEqual(expected_output, flatten_parameter_dictionary(parameter_input))

atlas_installer/build.sh

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,16 @@
11
#!/bin/bash
22

33
export build_version=$(python get_version.py)
4+
release_version=$(echo $build_version | sed "s/.dev[0-9]*//")
45
root_dir="$(pwd)"
56
base_dir="${root_dir}/atlas_installer"
67
working_dir="${base_dir}/dist"
78

89
rm -rf $working_dir \
910
&& mkdir -p $working_dir \
1011
&& echo "Building atlas installer script..." \
11-
&& echo "Copying the current atlas version (${build_version}) into the installer file" \
12-
&& sed "s/There is no version information available./${build_version}/g" \
12+
&& echo "Copying the current atlas version (${release_version}) into the installer file" \
13+
&& sed "s/There is no version information available./${release_version}/g" \
1314
$base_dir/atlas_installer.py > $working_dir/atlas_installer_before_notice.py \
1415
&& echo "Compressing the notice into a tar file" \
1516
&& tar -zcvf $working_dir/licenses.tgz NOTICE.md > /dev/null 2>&1 \

0 commit comments

Comments
 (0)