aboutsummaryrefslogtreecommitdiff
path: root/challenge-280/roger-bell-west/python/ch-2.py
blob: c03eba6bab9926c42cc5deed64fe35a7ed7bbb31 (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
#! /usr/bin/python3

def countasterisks(a):
  out = 0
  active = True
  for c in a:
    match c:
      case '|':
        active = not active
      case '*':
        if active:
          out += 1
  return out

import unittest

class TestCountasterisks(unittest.TestCase):

  def test_ex1(self):
    self.assertEqual(countasterisks("p|*e*rl|w**e|*ekly|"), 2, 'example 1')

  def test_ex2(self):
    self.assertEqual(countasterisks("perl"), 0, 'example 2')

  def test_ex3(self):
    self.assertEqual(countasterisks("th|ewe|e**|k|l***ych|alleng|e"), 5, 'example 3')

unittest.main()