def test_create_chart_save_folder(self, monkeypatch,
                                      test_original_location):
        mkdir_mock, move_chart_save_folder_mock = {
            'called': False
        }, {
            'called': False
        }
        test_new_save_folder_path = Path('somewhere else')

        def mocked_move_chart_save_folder(original_location, new_location):
            assert test_original_location  # Should not be called if no original location.
            assert (original_location,
                    new_location) == (test_original_location,
                                      test_new_save_folder_path)
            move_chart_save_folder_mock['called'] = True

        def mocked_mkdir(path_arg, **kwargs):
            assert path_arg == test_new_save_folder_path
            assert kwargs['parents'] and kwargs['exist_ok']
            mkdir_mock['called'] = True

        monkeypatch.setattr(settings_functions, 'move_chart_save_folder',
                            mocked_move_chart_save_folder)
        monkeypatch.setattr(settings_functions.Path, 'mkdir', mocked_mkdir)

        assert create_chart_save_folder(test_new_save_folder_path,
                                        test_original_location) is None

        assert mkdir_mock['called']  # Should always be called.
        if test_original_location:
            assert move_chart_save_folder_mock['called']
        else:
            assert not move_chart_save_folder_mock['called']
Example #2
0
    def test_create_chart_save_folder_no_original(self,
                                                  mocked_mkdir,
                                                  mocked_move_chart_save_folder,
                                                  ):
        assert create_chart_save_folder(self.test_new_location) is None

        mocked_move_chart_save_folder.assert_not_called()
        mocked_mkdir.assert_called_once_with(exist_ok=True, parents=True)
Example #3
0
    def test_create_chart_save_folder_test_correct_argument_passed_to_path(self,
                                                                           mocked_path,
                                                                           mocked_move_chart_save_folder,
                                                                           ):
        """Mocking call to path and mkdir method on Path class didn't work."""
        assert create_chart_save_folder(self.test_new_location) is None

        mocked_move_chart_save_folder.assert_not_called()
        mocked_path.assert_called_once_with(self.test_new_location)