Beispiel #1
0
def test_retrieve_untrained_definition_list():
    definition_list = [{
        'type': 'a'
    }, {
        'type': 'b',
        'untrainedCategory': True
    }, {
        'type': 'c',
        'untrainedColor': True
    }, {
        'type': 'd',
        'untrainedCombination': True
    }, {
        'type': 'e',
        'untrainedShape': True
    }, {
        'type': 'f',
        'untrainedSize': True
    }, {
        'type': 'g',
        'untrainedCategory': True,
        'untrainedColor': True,
        'untrainedCombination': True,
        'untrainedShape': True,
        'untrainedSize': True
    }, {
        'type': 'h'
    }]

    actual_1 = retrieve_untrained_definition_list([definition_list],
                                                  'untrainedShape')[0]
    assert len(actual_1) == 1
    assert actual_1[0]['type'] == 'e'

    actual_2 = retrieve_untrained_definition_list([definition_list],
                                                  'untrainedSize')[0]
    assert len(actual_2) == 1
    assert actual_2[0]['type'] == 'f'
def test_intuitive_physics_move_across_all_objects_untrained_shapes():
    definition_list = util.retrieve_complete_definition_list(
        [objects.get_intuitive_physics(False)]
    )[0]
    trained_list = util.retrieve_trained_definition_list([definition_list])[0]
    untrained_list = util.retrieve_untrained_definition_list(
        [definition_list],
        tags.SCENE.UNTRAINED_SHAPE
    )[0]

    for definition_1 in trained_list:
        option_list = [
            definition_2 for definition_2 in untrained_list
            if util.is_similar_except_in_shape(definition_1, definition_2,
                                               True)
        ]
        assert len(option_list) >= 2
def test_intuitive_physics_fall_down_complex_objects_untrained_sizes():
    definition_list = util.retrieve_complete_definition_list(
        [objects.get_intuitive_physics(True, False, True)]
    )[0]
    trained_list = util.retrieve_trained_definition_list([definition_list])[0]
    untrained_list = util.retrieve_untrained_definition_list(
        [definition_list],
        tags.SCENE.UNTRAINED_SIZE
    )[0]

    for definition_1 in trained_list:
        option_list = [
            definition_2 for definition_2 in untrained_list
            if util.is_similar_except_in_size(definition_1, definition_2,
                                              True)
        ]
        # We want at least two possible untrained objects.
        assert len(option_list) >= 2
Beispiel #4
0
def test_retrieve_untrained_definition_list_occluder_objects():
    assert len(retrieve_untrained_definition_list(
        objects.get(objects.ObjectDefinitionList.OCCLUDERS),
        'untrainedShape'
    )) > 0
Beispiel #5
0
def test_retrieve_untrained_definition_list_obstacle_objects():
    assert len(retrieve_untrained_definition_list(
        objects.get(objects.ObjectDefinitionList.OBSTACLES),
        'untrainedShape'
    )) > 0
Beispiel #6
0
def test_retrieve_untrained_definition_list_container_objects():
    assert len(retrieve_untrained_definition_list(
        objects.get(objects.ObjectDefinitionList.CONTAINERS),
        'untrainedShape'
    )) > 0
Beispiel #7
0
def test_retrieve_untrained_definition_list_all_objects():
    assert len(retrieve_untrained_definition_list(
        objects.get(objects.ObjectDefinitionList.ALL),
        'untrainedShape'
    )) > 0