// getNarrativeSection will just print the narrative section text. No need to print the section header since it was specified. func getNarrativeSection(text string, justification models.Verification, component base.Component, specifiedSections *set.Set) string { // Add the component name. text = fmt.Sprintf("%s%s\n", text, component.GetName()) // Use generic []base.Section handler. return getSpecificGenericSections(justification.SatisfiesData.GetNarratives(), text, specifiedSections) }
func (openControl *OpenControlGitBook) getCoveredByVerification(text string, component base.Component, coveredBy common.CoveredBy) string { if component != nil { verification := component.GetVerifications().Get(coveredBy.VerificationKey) text += exportLink( fmt.Sprintf("%s - %s", component.GetName(), verification.Name), filepath.Join("..", "components", component.GetKey()+".md"), ) } return text }
// getResponsibleRoleInfo will just print the responsible role if it exists. func getResponsibleRoleInfo(text string, component base.Component) string { // Add the component name. text = fmt.Sprintf("%s%s: ", text, component.GetName()) // Print out the component name and the responsible for that component. if component.GetResponsibleRole() != "" { return fmt.Sprintf("%s%s\n", text, component.GetResponsibleRole()) } // Else, print warning indicating there was no info. return fmt.Sprintf("%s%s\n", text, constants.WarningNoInformationAvailable) }
func testSet(example base.Component, actual base.Component, t *testing.T) { // Check that the key was loaded if example.GetKey() != actual.GetKey() { t.Errorf("Expected %s, Actual: %s", example.GetKey(), actual.GetKey()) } // Check that the name was loaded if example.GetName() != actual.GetName() { t.Errorf("Expected %s, Actual: %s", example.GetName(), actual.GetName()) } // Check that the schema version was loaded if example.GetVersion().NE(actual.GetVersion()) { t.Errorf("Expected %f, Actual: %f", example.GetVersion(), actual.GetVersion()) } // Check that the references were loaded if example.GetReferences().Len() != actual.GetReferences().Len() { t.Errorf("Expected %d, Actual: %d", example.GetReferences().Len(), actual.GetReferences().Len()) } // Check that the satisfies data was loaded if len(example.GetAllSatisfies()) != len(actual.GetAllSatisfies()) { t.Errorf("Expected %d, Actual: %d", len(example.GetAllSatisfies()), len(actual.GetAllSatisfies())) } // Check Narratives and Parameters. for idx, _ := range actual.GetAllSatisfies() { assert.Equal(t, (example.GetAllSatisfies())[idx].GetNarratives(), (actual.GetAllSatisfies())[idx].GetNarratives()) assert.Equal(t, (example.GetAllSatisfies())[idx].GetParameters(), (actual.GetAllSatisfies())[idx].GetParameters()) } // Check the responsible role. assert.Equal(t, example.GetResponsibleRole(), actual.GetResponsibleRole()) // Check that the verifications were loaded if example.GetVerifications().Len() != actual.GetVerifications().Len() { t.Errorf("Expected %d, Actual: %d", example.GetVerifications().Len(), actual.GetVerifications()) } }
// getAllNarrativeSection will print both the section header and the section text for all narrative sections. func getAllNarrativeSections(text string, justification models.Verification, component base.Component) string { // Add the component name. text = fmt.Sprintf("%s%s\n", text, component.GetName()) for _, section := range justification.SatisfiesData.GetNarratives() { // If we want to print out all the sections... // If section header exists, let's print it. Key could be empty, in that case // just print the text for the section. if section.GetKey() != "" { text = fmt.Sprintf("%s%s:\n", text, section.GetKey()) } text = fmt.Sprintf("%s%s\n", text, section.GetText()) // Automatically assume foundText is true as long as the length of // justification.SatisfiesData.Narrative is > 0, which is implied if we reach here. // Also, in case the section in the YAML is explicitly "", we accept empty string here too. } return text }