<commit_before>package org.granchi.hollywood;

import org.junit.Test;
import org.junit.runner.RunWith;
import org.mockito.junit.MockitoJUnitRunner;

import static com.google.common.truth.Truth.assertThat;

@RunWith(MockitoJUnitRunner.class)
public class ModelTest {
    @Test
    public void testGetSubmodelsOfSameType() throws Exception {
        ParentModel model = new ParentModel();

        assertThat(model.getSubmodelsOfType(ParentModel.class)).containsExactly(model);
    }

    @Test
    public void testGetSubmodelsOfParentType() throws Exception {
        ChildModel model = new ChildModel();

        assertThat(model.getSubmodelsOfType(ParentModel.class)).containsExactly(model);
    }

    @Test
    public void testGetSubmodelsOfChildType() throws Exception {
        ParentModel model = new ParentModel();

        assertThat(model.getSubmodelsOfType(ChildModel.class)).isEmpty();
    }

    @Test
    public void testGetSubmodelsOfUnrelatedType() throws Exception {
        ParentModel model = new ParentModel();

        assertThat(model.getSubmodelsOfType(OtherParentModel.class)).isEmpty();
    }

    private class ParentModel extends Model {
        @Override
        protected Model actUpon(Action action) {
            return null;
        }
    }

    private class ChildModel extends ParentModel {
        @Override
        protected Model actUpon(Action action) {
            return null;
        }
    }

    public class OtherParentModel extends Model {
        @Override
        protected Model actUpon(Action action) {
            return null;
        }
    }
}<commit_msg>Make test inner classes static<commit_after>package org.granchi.hollywood;

import org.junit.Test;
import org.junit.runner.RunWith;
import org.mockito.junit.MockitoJUnitRunner;

import static com.google.common.truth.Truth.assertThat;

@RunWith(MockitoJUnitRunner.class)
public class ModelTest {
    @Test
    public void testGetSubmodelsOfSameType() throws Exception {
        ParentModel model = new ParentModel();

        assertThat(model.getSubmodelsOfType(ParentModel.class)).containsExactly(model);
    }

    @Test
    public void testGetSubmodelsOfParentType() throws Exception {
        ChildModel model = new ChildModel();

        assertThat(model.getSubmodelsOfType(ParentModel.class)).containsExactly(model);
    }

    @Test
    public void testGetSubmodelsOfChildType() throws Exception {
        ParentModel model = new ParentModel();

        assertThat(model.getSubmodelsOfType(ChildModel.class)).isEmpty();
    }

    @Test
    public void testGetSubmodelsOfUnrelatedType() throws Exception {
        ParentModel model = new ParentModel();

        assertThat(model.getSubmodelsOfType(OtherParentModel.class)).isEmpty();
    }

    private static class ParentModel extends Model {
        @Override
        protected Model actUpon(Action action) {
            return null;
        }
    }

    private static class ChildModel extends ParentModel {
        @Override
        protected Model actUpon(Action action) {
            return null;
        }
    }

    public static class OtherParentModel extends Model {
        @Override
        protected Model actUpon(Action action) {
            return null;
        }
    }
}
{'fraction_non_alphanumeric': 0.07948243992606285, 'fraction_numerical': 0.0, 'mean_word_length': 2.969437652811736, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '4936005', 'n_tokens_mistral': 866, 'n_tokens_neox': 838, 'n_words': 197}