@@ -56,7 +56,7 @@ class FretPolicyTests(unittest.TestCase):
|
||||
costs = {v: generator.comping.local_cost('acoustic', key, v, 55) for v in (primary, fallback)}
|
||||
# Movement/family wins cannot purchase entry into the four-fret tier.
|
||||
costs[primary] = costs[primary]._replace(effort=100000)
|
||||
path, cost = generator.comping.select_grips(((primary, fallback),), (costs,), 'acoustic', 'tiers', left=fallback, right=fallback)
|
||||
path, cost, hands = generator.comping.select_grips(((primary, fallback),), (costs,), 'acoustic', 'tiers', left=fallback, right=fallback)
|
||||
self.assertEqual(path, (primary,))
|
||||
self.assertEqual(cost.extended_grips, 0)
|
||||
states = [generator.acoustic_voicing.Placement(generator.acoustic_voicing.Cost(), fallback)]
|
||||
@@ -68,7 +68,8 @@ class FretPolicyTests(unittest.TestCase):
|
||||
best = choices[0]
|
||||
self.assertEqual(generator.fretboard.span_penalty(best), 0)
|
||||
self.assertEqual(min(p.string_number for p in best if p.midi == 65), 2)
|
||||
self.assertEqual(max(p.midi for p in best), 65)
|
||||
self.assertIn(65, {p.midi for p in best})
|
||||
self.assertIn(1, {p.string_number for p in best})
|
||||
self.assertTrue(any(generator.fretboard.span_penalty(v) and any(p.midi == 65 and p.string_number == 1 for p in v) for v in choices))
|
||||
primary_cost = generator.guitar.voicing_cost(best, 'electric', melody=(65,)).moved(100000)
|
||||
self.assertTrue(all(primary_cost < generator.guitar.voicing_cost(v, 'electric', melody=(65,)) for v in choices if generator.fretboard.span_penalty(v)))
|
||||
|
||||
Reference in New Issue
Block a user