Skip to content

Commit

Permalink
armstrong-numbers: sync with problem-specifications (exercism#1762)
Browse files Browse the repository at this point in the history
  • Loading branch information
sukovanej committed May 1, 2019
1 parent 93ceb8f commit 09e61f9
Show file tree
Hide file tree
Showing 3 changed files with 15 additions and 12 deletions.
2 changes: 1 addition & 1 deletion exercises/armstrong-numbers/armstrong_numbers.py
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
def is_armstrong(number):
def is_armstrong_number(number):
pass
23 changes: 13 additions & 10 deletions exercises/armstrong-numbers/armstrong_numbers_test.py
Original file line number Diff line number Diff line change
@@ -1,35 +1,38 @@
import unittest

from armstrong_numbers import is_armstrong
from armstrong_numbers import is_armstrong_number


# Tests adapted from `problem-specifications//canonical-data.json` @ v1.0.0
# Tests adapted from `problem-specifications//canonical-data.json` @ v1.1.0

class ArmstrongNumbersTest(unittest.TestCase):

def test_zero_is_an_armstrong_number(self):
self.assertIs(is_armstrong_number(0), True)

def test_single_digit_numbers_are_armstrong_numbers(self):
self.assertIs(is_armstrong(5), True)
self.assertIs(is_armstrong_number(5), True)

def test_there_are_no_two_digit_armstrong_numbers(self):
self.assertIs(is_armstrong(10), False)
self.assertIs(is_armstrong_number(10), False)

def test_three_digit_number_that_is_an_armstrong_number(self):
self.assertIs(is_armstrong(153), True)
self.assertIs(is_armstrong_number(153), True)

def test_three_digit_number_that_is_not_an_armstrong_number(self):
self.assertIs(is_armstrong(100), False)
self.assertIs(is_armstrong_number(100), False)

def test_four_digit_number_that_is_an_armstrong_number(self):
self.assertIs(is_armstrong(9474), True)
self.assertIs(is_armstrong_number(9474), True)

def test_four_digit_number_that_is_not_an_armstrong_number(self):
self.assertIs(is_armstrong(9475), False)
self.assertIs(is_armstrong_number(9475), False)

def test_seven_digit_number_that_is_an_armstrong_number(self):
self.assertIs(is_armstrong(9926315), True)
self.assertIs(is_armstrong_number(9926315), True)

def test_seven_digit_number_that_is_not_an_armstrong_number(self):
self.assertIs(is_armstrong(9926314), False)
self.assertIs(is_armstrong_number(9926314), False)


if __name__ == '__main__':
Expand Down
2 changes: 1 addition & 1 deletion exercises/armstrong-numbers/example.py
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
def is_armstrong(number):
def is_armstrong_number(number):
return sum(pow(int(d), len(str(number))) for d in str(number)) == number

0 comments on commit 09e61f9

Please sign in to comment.