Exemple #1
0
 def test_converts_undefined_properties_to_empty_string(self):
     features = [
         fake_feature(name="alice", status="pending", priority=1, properties={'x': "10", 'y': "20"}),
         fake_feature(name="bob", status="pending", priority=2, properties={'y': "999"})]
     
     assert_that(cli.features_to_table(features, property_names=["x", "y"]),
                 equal_to([("pending", 1, "alice", "10", "20"),
                           ("pending", 2, "bob", "", "999")]))
Exemple #2
0
 def test_converts_list_of_features_to_list_of_tuples_with_selected_properties(self):
     features = [
         fake_feature(name="alice", status="pending", priority=1, properties={'x': "10", 'y': "20"}),
         fake_feature(name="bob", status="pending", priority=2, properties={'x': "99", 'y': "999"})]
     
     assert_that(cli.features_to_table(features, property_names=["x", "y"]),
                 equal_to([("pending", 1, "alice", "10", "20"),
                           ("pending", 2, "bob", "99", "999")]))
Exemple #3
0
 def test_converts_list_of_features_to_list_of_tuples(self):
     features = [
         fake_feature(name="alice", status="pending", priority=1),
         fake_feature(name="bob", status="pending", priority=2),
         fake_feature(name="carol", status="active", priority=8),
         fake_feature(name="dave", status="active", priority=9),
         fake_feature(name="eve", status="active", priority=10)]
     
     assert_that(cli.features_to_table(features),
                 equal_to([("pending", 1, "alice"),
                           ("pending", 2, "bob"),
                           ("active", 8, "carol"),
                           ("active", 9, "dave"),
                           ("active", 10, "eve")]))
Exemple #4
0
 def test_appending_a_feature_to_empty_bucket_sets_its_priority_to_1(self):
     bucket = Bucket([])
     
     d = fake_feature(priority=99)
     
     bucket.append(d)
     assert_that(d.priority, equal_to(1))
Exemple #5
0
 def writes_features_in_csv(self):
     features = [
         fake_feature(name="alice", status="pending", priority=1),
         fake_feature(name="bob", status="pending", priority=2),
         fake_feature(name="carol", status="active", priority=8),
         fake_feature(name="dave", status="active", priority=9),
         fake_feature(name="eve", status="active", priority=10)]
     
     output = StringIO()
     
     cli.write_features_as_csv(features, output, dialect="excel")
     
     csv_lines = output.getvalue().splitlines()
     assert_that(csv_lines, equal_to([
                 "pending,1,alice",
                 "pending,2,bob",
                 "active,8,carol",
                 "active,9,dave",
                 "active,10,eve"]))
Exemple #6
0
 def test_formats_features_as_aligned_columns(self):
     features = [
         fake_feature(name="alice", status="pending", priority=1),
         fake_feature(name="bob", status="pending", priority=2),
         fake_feature(name="carol", status="active", priority=8),
         fake_feature(name="dave", status="active", priority=9),
         fake_feature(name="eve", status="active", priority=10)]
     
     output = StringIO()
     
     cli.write_features_as_text(features, output)
     
     formatted_lines = output.getvalue().splitlines()
     
     assert_that(formatted_lines, equal_to([
                 "pending  1 alice",
                 "pending  2 bob",
                 "active   8 carol",
                 "active   9 dave",
                 "active  10 eve"]))
Exemple #7
0
 def test_inserting_a_feature_respects_its_current_priority_and_inserts_above_existing_feature_with_same_priority(self):
     a, b, c = make_features(3)
     bucket = Bucket([a,b,c])
     
     x = fake_feature(priority=2)
     
     bucket.insert(x)
     
     assert_that(bucket[0], same_instance(a))
     assert_that(bucket[1], same_instance(x))
     assert_that(bucket[2], same_instance(b))
     assert_that(bucket[3], same_instance(c))
     
     assert_that(a.priority, equal_to(1))
     assert_that(x.priority, equal_to(2))
     assert_that(b.priority, equal_to(3))
     assert_that(c.priority, equal_to(4))