Я пытаюсь создать кучу методов класса для чтения определенных c частей. JSON файлов, и у меня возникают проблемы при передаче информации от одного метода к другому, в данном конкретном случае я пытаюсь получить dask.bag из метода read_files в метод split_to_requests. Я не уверен, где моя ошибка, но выполнение модульных тестов завершается неудачей в тесте test_split_requests. Я добавил тесты в нижней части кода.
import json
import pandas as pd
from dask import bag
class WeatherDataConverter:
def __init__(self, *args, **kwargs):
super(WeatherDataConverter, self).__init__(*args, **kwargs)
self.meteo_bag = bag.Bag
def read_files(self, files):
dask_bag = bag.read_text(files).map(json.loads)
return dask_bag
def split_to_requests(self, dask_bag):
data_pluck = dask_bag.flatten().pluck('data')
request_request = data_pluck.pluck('requests')
return request_request
@staticmethod
def flatten(bag):
print(bag)
////////////////////////////////// ////////////////////////////////////////////////// ///////////
from unittest import TestCase
from weather.WeatherDataConverter import WeatherDataConverter
class TestWeatherDataConverter(TestCase):
def __init__(self, *args, **kwargs):
super(TestWeatherDataConverter, self).__init__(*args, **kwargs)
self.converter = WeatherDataConverter()
def test_read_file(self):
dask_bag = self.converter.read_files('../data/*.json')
assert dask_bag.count().compute() == 5
def test_split_requests(self):
dask_bag = self.converter.read_files('../data/*.json')
dataframe = dask_bag.split_to_requests()
print(dataframe)
это код ошибки:
test_weatherDataConverter.py:35
(TestWeatherDataConverter.test_split_requests)
self = <tests.weather.test_weatherDataConverter.TestWeatherDataConverter
testMethod=test_split_requests>
def test_split_requests(self):
dask_bag = self.converter.read_files('../data/*.json')
> dataframe = dask_bag.split_to_requests()
E AttributeError: 'Bag' object has no attribute
'split_to_requests'
test_weatherDataConverter.py:38: AttributeError
Assertion failed