|
10 | 10 |
|
11 | 11 | @patch('pytorch_lightning.loggers.neptune.neptune')
|
12 | 12 | def test_neptune_online(neptune):
|
13 |
| - logger = NeptuneLogger(api_key='test', offline_mode=False, project_name='project') |
14 |
| - neptune.init.assert_called_once_with(api_token='test', project_qualified_name='project') |
| 13 | + logger = NeptuneLogger(api_key='test', project_name='project') |
15 | 14 |
|
16 |
| - assert logger.name == neptune.create_experiment().name |
17 |
| - assert logger.version == neptune.create_experiment().id |
| 15 | + created_experiment = neptune.Session.with_default_backend().get_project().create_experiment() |
| 16 | + |
| 17 | + # It's important to check if the internal variable _experiment was initialized in __init__. |
| 18 | + # Calling logger.experiment would cause a side-effect of initializing _experiment, |
| 19 | + # if it wasn't already initialized. |
| 20 | + assert logger._experiment == created_experiment |
| 21 | + assert logger.name == created_experiment.name |
| 22 | + assert logger.version == created_experiment.id |
18 | 23 |
|
19 | 24 |
|
20 | 25 | @patch('pytorch_lightning.loggers.neptune.neptune')
|
21 |
| -def test_neptune_additional_methods(neptune): |
| 26 | +def test_neptune_offline(neptune): |
22 | 27 | logger = NeptuneLogger(offline_mode=True)
|
23 | 28 |
|
| 29 | + neptune.Session.assert_called_once_with(backend=neptune.OfflineBackend()) |
| 30 | + assert logger.experiment == neptune.Session().get_project().create_experiment() |
| 31 | + |
| 32 | + |
| 33 | +@patch('pytorch_lightning.loggers.neptune.neptune') |
| 34 | +def test_neptune_additional_methods(neptune): |
| 35 | + logger = NeptuneLogger(api_key='test', project_name='project') |
| 36 | + |
| 37 | + created_experiment = neptune.Session.with_default_backend().get_project().create_experiment() |
| 38 | + |
24 | 39 | logger.log_metric('test', torch.ones(1))
|
25 |
| - neptune.create_experiment().log_metric.assert_called_once_with('test', torch.ones(1)) |
26 |
| - neptune.create_experiment().log_metric.reset_mock() |
| 40 | + created_experiment.log_metric.assert_called_once_with('test', torch.ones(1)) |
| 41 | + created_experiment.log_metric.reset_mock() |
27 | 42 |
|
28 | 43 | logger.log_metric('test', 1.0)
|
29 |
| - neptune.create_experiment().log_metric.assert_called_once_with('test', 1.0) |
30 |
| - neptune.create_experiment().log_metric.reset_mock() |
| 44 | + created_experiment.log_metric.assert_called_once_with('test', 1.0) |
| 45 | + created_experiment.log_metric.reset_mock() |
31 | 46 |
|
32 | 47 | logger.log_metric('test', 1.0, step=2)
|
33 |
| - neptune.create_experiment().log_metric.assert_called_once_with('test', x=2, y=1.0) |
34 |
| - neptune.create_experiment().log_metric.reset_mock() |
| 48 | + created_experiment.log_metric.assert_called_once_with('test', x=2, y=1.0) |
| 49 | + created_experiment.log_metric.reset_mock() |
35 | 50 |
|
36 | 51 | logger.log_text('test', 'text')
|
37 |
| - neptune.create_experiment().log_metric.assert_called_once_with('test', 'text') |
38 |
| - neptune.create_experiment().log_metric.reset_mock() |
| 52 | + created_experiment.log_metric.assert_called_once_with('test', 'text') |
| 53 | + created_experiment.log_metric.reset_mock() |
39 | 54 |
|
40 | 55 | logger.log_image('test', 'image file')
|
41 |
| - neptune.create_experiment().log_image.assert_called_once_with('test', 'image file') |
42 |
| - neptune.create_experiment().log_image.reset_mock() |
| 56 | + created_experiment.log_image.assert_called_once_with('test', 'image file') |
| 57 | + created_experiment.log_image.reset_mock() |
43 | 58 |
|
44 | 59 | logger.log_image('test', 'image file', step=2)
|
45 |
| - neptune.create_experiment().log_image.assert_called_once_with('test', x=2, y='image file') |
46 |
| - neptune.create_experiment().log_image.reset_mock() |
| 60 | + created_experiment.log_image.assert_called_once_with('test', x=2, y='image file') |
| 61 | + created_experiment.log_image.reset_mock() |
47 | 62 |
|
48 | 63 | logger.log_artifact('file')
|
49 |
| - neptune.create_experiment().log_artifact.assert_called_once_with('file', None) |
| 64 | + created_experiment.log_artifact.assert_called_once_with('file', None) |
50 | 65 |
|
51 | 66 | logger.set_property('property', 10)
|
52 |
| - neptune.create_experiment().set_property.assert_called_once_with('property', 10) |
| 67 | + created_experiment.set_property.assert_called_once_with('property', 10) |
53 | 68 |
|
54 | 69 | logger.append_tags('one tag')
|
55 |
| - neptune.create_experiment().append_tags.assert_called_once_with('one tag') |
56 |
| - neptune.create_experiment().append_tags.reset_mock() |
| 70 | + created_experiment.append_tags.assert_called_once_with('one tag') |
| 71 | + created_experiment.append_tags.reset_mock() |
57 | 72 |
|
58 | 73 | logger.append_tags(['two', 'tags'])
|
59 |
| - neptune.create_experiment().append_tags.assert_called_once_with('two', 'tags') |
| 74 | + created_experiment.append_tags.assert_called_once_with('two', 'tags') |
60 | 75 |
|
61 | 76 |
|
62 | 77 | def test_neptune_leave_open_experiment_after_fit(tmpdir):
|
|
0 commit comments