예제 #1
0
 def __init__(self) -> None:
     super().__init__()
     userPiecesRepository = Repository()
     aiPiecesRepository = Repository()
     validator = Validator(userPiecesRepository, aiPiecesRepository)
     userPiecesService = UserService(userPiecesRepository, validator)
     aiPiecesService = AIService(aiPiecesRepository, userPiecesRepository,
                                 validator)
     gameService = GameService(userPiecesService, aiPiecesService)
     self.console = Console(userPiecesService, aiPiecesService, gameService)
 def test_add(self):
     repositoryMock = Repository()
     repositoryMock.add(5)
     repositoryMock.add(Piece(5, 7))
     self.assertEqual(repositoryMock.getList(), [5, Piece(5, 7)])
     with self.assertRaises(RepositoryException):
         repositoryMock.add(5)
 def test_addBestPlayPiece(self):
     userPiecesRepository = Repository()
     aiPiecesRepository = Repository()
     aiPiecesRepository.add(Piece(0, 0))
     aiPiecesRepository.add(Piece(1, 1))
     validator = Validator(userPiecesRepository, aiPiecesRepository)
     aiPiecesService = AIService(aiPiecesRepository, userPiecesRepository,
                                 validator)
     aiPiecesService.addPiece()
     self.assertEqual(
         aiPiecesService.getList(),
         [Piece(0, 0), Piece(1, 1), Piece(2, 2)])
예제 #4
0
    def start(self):
        github = Github(args.token, args.months)
        repositories = github.get_projects()

        with ThreadPoolExecutor(len(repositories)) as executor:
            repository = Repository()
            func = partial(repository.start)
            executor.map(func, repositories)
 def test_winner(self):
     userPiecesRepository = Repository()
     userPiecesRepository.add(Piece(0, 0))
     userPiecesRepository.add(Piece(1, 1))
     userPiecesRepository.add(Piece(2, 2))
     userPiecesRepository.add(Piece(3, 3))
     userPiecesRepository.add(Piece(4, 4))
     aiPiecesRepository = Repository()
     validator = Validator(userPiecesRepository, aiPiecesRepository)
     userPiecesService = UserService(userPiecesRepository, validator)
     aiPiecesService = AIService(aiPiecesRepository, userPiecesRepository,
                                 validator)
     gameService = GameService(userPiecesService, aiPiecesService)
     self.assertEqual(gameService.winner(), 0)
 def test_addPieceToBlock(self):
     userPiecesRepository = Repository()
     userPiecesRepository.add(Piece(0, 0))
     userPiecesRepository.add(Piece(1, 1))
     userPiecesRepository.add(Piece(2, 2))
     userPiecesRepository.add(Piece(3, 3))
     aiPiecesRepository = Repository()
     validator = Validator(userPiecesRepository, aiPiecesRepository)
     aiPiecesService = AIService(aiPiecesRepository, userPiecesRepository,
                                 validator)
     aiPiecesService.addPiece()
     self.assertEqual(aiPiecesService.getList(), [Piece(4, 4)])
 def test_isValid(self):
     repository1 = Repository()
     repository1.add(Piece(0, 0))
     repository1.add(Piece(1, 1))
     repository2 = Repository()
     repository2.add(Piece(13, 13))
     repository2.add(Piece(14, 14))
     validator = Validator(repository1, repository2)
     self.assertTrue(validator.isValid(Piece(3, 3)))
     self.assertTrue(validator.isValid(Piece(3, 8)))
     self.assertFalse(validator.isValid(Piece(-1, 5)))
     self.assertFalse(validator.isValid(Piece(-1, -9)))
     self.assertFalse(validator.isValid(Piece(21, 5)))
     self.assertFalse(validator.isValid(Piece(1, 55)))
     self.assertFalse(validator.isValid(Piece(0, 0)))
     self.assertFalse(validator.isValid(Piece(14, 14)))
 def test_addPiece(self):
     repository1 = Repository()
     repository1.add(Piece(0, 0))
     repository1.add(Piece(1, 1))
     repository2 = Repository()
     repository2.add(Piece(13, 13))
     repository2.add(Piece(14, 14))
     validator = Validator(repository1, repository2)
     userService = UserService(repository1, validator)
     userService.addPiece(5, 5)
     self.assertEqual(
         userService.getList(),
         [Piece(0, 0), Piece(1, 1), Piece(5, 5)])
     with self.assertRaises(ValidException):
         userService.addPiece(0, 0)
     with self.assertRaises(ValidException):
         userService.addPiece(13, 13)
     with self.assertRaises(ValidException):
         userService.addPiece(-1, 0)
     with self.assertRaises(ValidException):
         userService.addPiece(0, 199)
예제 #9
0
import matplotlib

from src.Controller import Controller
from src.Repository import Repository
import matplotlib.pyplot as plt
if __name__ == '__main__':
    # repo = Repository("../data/2c.dat")
    repo = Repository("../data/3c.dat")

    ctrl = Controller(repo)

    total_accuracy = []
    total_runs = 1000
    total_sets = 0.15
    for run in range(total_runs):
        accuracy = ctrl.run(total_sets)
        total_accuracy.append(accuracy)
        print("Accuracy for run {0} = {1}".format(run, accuracy))

    print("Accuracy for {0} runs with {1} sets is: {2}".format(total_runs, total_sets, sum(total_accuracy)/total_runs))

    plt.plot(range(total_runs), total_accuracy)
    plt.show()
예제 #10
0
from src.Controller import Controller
from src.Repository import Repository
from src.View import View

temperature_filename = "../data/temperature.dat"
humidity_filename = "../data/humidity.dat"
time_filename = "../data/time.dat"
table_filename = "../data/table.dat"

if __name__ == '__main__':
    temperature_repository = Repository(temperature_filename)

    controller = Controller(Repository(temperature_filename),
                            Repository(humidity_filename),
                            Repository(time_filename), table_filename)

    view = View(controller)

    view.run()