Esempio n. 1
0
def test_read_csv():
    # TODO: Is there a reason to replace " " in the activity name with "_"?
    event_stream_test = read_csv("demo/Detail_Supplier_IW-Frozen.csv")

    assert isinstance(event_stream_test, obj.EventStream)
    assert len(event_stream_test) == 5000

    first_event = event_stream_test[0]
    assert first_event["case:concept:name"] == "Case 496"
    assert first_event["concept:name"] == "Process Creation"
    assert isinstance(first_event["time:timestamp"], datetime)
    assert first_event["time:timestamp"] == datetime(2010, 9, 21, 9, 0, 13)

    second_event = event_stream_test[1]
    assert second_event["case:concept:name"] == "Case 12186"
    assert second_event["concept:name"] == "Process Creation"
    assert isinstance(second_event["time:timestamp"], datetime)
    assert second_event["time:timestamp"] == datetime(2010, 9, 21, 9, 0, 21)

    second_to_last_event = event_stream_test[-2]
    assert second_to_last_event["case:concept:name"] == "Case 8848"
    assert second_to_last_event["concept:name"] == "ME Fabrication Checker"
    assert isinstance(second_to_last_event["time:timestamp"], datetime)
    assert second_to_last_event["time:timestamp"] == datetime(
        2011, 4, 27, 8, 0, 59)

    last_event = event_stream_test[-1]
    assert last_event["case:concept:name"] == "Case 10634"
    assert last_event["concept:name"] == "ME Fabrication Checker"
    assert isinstance(last_event["time:timestamp"], datetime)
    assert last_event["time:timestamp"] == datetime(2011, 4, 27, 9, 0, 0)
Esempio n. 2
0
    def test_run(self, process):
        dir_path = 'demo'
        filename = 'Detail_Supplier_IW-Frozen.csv'
        stream = read_csv(f'{dir_path}/{filename}')
        process.run(stream)

        assert process.initialized
        assert path.isfile(f'./metrics/{process.name}_process_model_graphs/process_model_graph_{process.cp_count}.json')
Esempio n. 3
0
    def test_run(self, process):
        stream = read_csv("demo/Detail_Supplier_IW-Frozen.csv")
        process.run(stream)

        assert process.initialized
        assert path.isfile(
            f"output/metrics/{process.name}_process_model_graphs/process_model_graph_{process.cp_count}.json"
        )
Esempio n. 4
0
def test_pipeline():
    event_stream_test = read_csv(f"demo/sudden_trace_noise20_500_cb.csv")
    cdesf = CDESF(
        name="sudden_trace_noise20_500_cb",
        time_horizon=259200,
        lambda_=0.05,
        beta=0.2,
        epsilon=0.6,
        mu=4,
        stream_speed=100,
        gen_metrics=True,
        gen_plot=False,
    )
    cdesf.run(event_stream_test)
Esempio n. 5
0
def test_attributed_pipeline():
    event_stream_test = read_csv(
        f"demo/sudden_trace_noise20_500_cb_attributed.csv")
    cdesf = CDESF(
        name="sudden_trace_noise20_500_cb_attributed",
        time_horizon=259200,
        lambda_=0.05,
        beta=0.2,
        epsilon=0.6,
        mu=4,
        stream_speed=100,
        gen_metrics=True,
        gen_plot=False,
        additional_attributes=["first", "second", "country"],
    )
    cdesf.run(event_stream_test)
Esempio n. 6
0
def test_pipeline():
    path = 'demo'
    filename = 'sudden_trace_noise20_500_cb.csv'

    event_stream_test = read_csv(f'{path}/{filename}')
    cdesf = CDESF(name='sudden_trace_noise20_500_cb',
                  time_horizon=259200,
                  lambda_=0.05,
                  beta=0.2,
                  epsilon=0.6,
                  mu=4,
                  stream_speed=100,
                  n_features=2,
                  gen_metrics=True,
                  gen_plot=False)
    cdesf.run(event_stream_test)
Esempio n. 7
0
def test_read_csv():
    path = 'demo'
    filename = 'Detail_Supplier_IW-Frozen.csv'

    event_stream_test = read_csv(f'{path}/{filename}')

    assert isinstance(event_stream_test, np.ndarray)
    assert len(event_stream_test) == 5000

    first_event = event_stream_test[0]
    assert first_event[0] == 'Case 496'
    assert first_event[1] == 'Process_Creation'
    assert isinstance(first_event[2], datetime)
    assert first_event[2] == datetime(2010, 9, 21, 9, 0, 13)

    second_event = event_stream_test[1]
    assert second_event[0] == 'Case 12186'
    assert second_event[1] == 'Process_Creation'
    assert isinstance(second_event[2], datetime)
    assert second_event[2] == datetime(2010, 9, 21, 9, 0, 21)

    second_to_last_event = event_stream_test[4998]
    assert second_to_last_event[0] == 'Case 8848'
    assert second_to_last_event[1] == 'ME_Fabrication_Checker'
    assert isinstance(second_to_last_event[2], datetime)
    assert second_to_last_event[2] == datetime(2011, 4, 27, 8, 0, 59)

    last_event = event_stream_test[4999]
    assert last_event[0] == 'Case 10634'
    assert last_event[1] == 'ME_Fabrication_Checker'
    assert isinstance(last_event[2], datetime)
    assert last_event[2] == datetime(2011, 4, 27, 9, 0, 0)

    event_stream = pd.read_csv(f'{path}/{filename}',
                               usecols=['case', 'activity', 'timestamp'],
                               parse_dates=['timestamp'],
                               infer_datetime_format=True,
                               memory_map=True)
    event_stream['activity'].replace(' ', '_', regex=True, inplace=True)

    assert np.all(event_stream.values == event_stream_test)