Part of lp.archivepublisher.tests.test_indices View In Hierarchy
Method | setUp | Setup global attributes. |
Method | write_stanza_and_reparse | Helper method to return the apt_pkg parser for the stanza. |
Method | test_binary_stanza | Check a binary stanza with APT parser. |
Method | test_source_stanza | Check a source stanza with APT parser. |
Method | test_source_with_corrupt_dsc_binaries | Ensure corrupt binary fields are written correctly to indexes. |
Method | test_source_with_correct_dsc_binaries | Ensure correct binary fields are written correctly to indexes. |
Inherited from TestNativePublishingBase:
Method | __init__ | Undocumented |
Method | tearDown | Tear down blows the pool dirs away. |
Method | getPubSource | Overrides SoyuzTestPublisher.getPubSource . |
Method | getPubBinaries | Overrides SoyuzTestPublisher.getPubBinaries . |
Method | checkPublication | Assert the publication has the given status. |
Method | checkPublications | Assert the given publications have the given status. |
Method | checkPastDate | Assert given date is older than 'now'. |
Method | checkSuperseded | Undocumented |
Inherited from TestCaseWithFactory (via TestNativePublishingBase):
Method | getUserBrowser | Return a Browser logged in as a fresh user, maybe opened at url . |
Method | getNonRedirectingBrowser | Undocumented |
Method | createBranchAtURL | Create a branch at the supplied URL. |
Method | create_branch_and_tree | Create a database branch, bzr branch and bzr checkout. |
Method | createBzrBranch | Create a bzr branch for a database branch. |
Static Method | getBranchPath | Return the path of the branch in the mirrored area. |
Method | useTempBzrHome | Undocumented |
Method | useBzrBranches | Prepare for using bzr branches. |
Inherited from TestCase (via TestNativePublishingBase, TestCaseWithFactory):
Method | becomeDbUser | Commit, then log into the database as dbuser . |
Method | __str__ | The string representation of a test is its id. |
Method | useContext | Use the supplied context in this test. |
Method | makeTemporaryDirectory | Create a temporary directory, and return its path. |
Method | installKarmaRecorder | Set up and return a KarmaRecorder . |
Method | assertProvides | Assert 'obj' correctly provides 'interface'. |
Method | assertNotifies | Assert that a callable performs a given notification. |
Method | assertNoNotification | Assert that no notifications are generated by the callable. |
Method | assertSqlAttributeEqualsDate | Fail unless the value of the attribute is equal to the date. |
Method | assertTextMatchesExpressionIgnoreWhitespace | Undocumented |
Method | assertIsInstance | Assert that an instance is an instance of assert_class. |
Method | assertIsNot | Assert that expected is not the same object as observed . |
Method | assertContentEqual | Assert that 'iter1' has the same content as 'iter2'. |
Method | assertRaisesWithContent | Check if the given exception is raised with given content. |
Method | assertBetween | Assert that 'variable' is strictly between two boundaries. |
Method | assertVectorEqual | Apply assertEqual to all given pairs in one go. |
Method | expectedLog | Expect a log to be written that matches the regex. |
Method | pushConfig | Push some key-value pairs into a section of the config. |
Method | attachOopses | Undocumented |
Method | attachLibrarianLog | Include the logChunks from fixture in the test details. |
Method | assertStatementCount | Assert that the expected number of SQL statements occurred. |
Method | useTempDir | Use a temporary directory for this test. |
Method | assertEmailHeadersEqual | Assert that two email headers are equal. |
Method | assertStartsWith | Undocumented |
Method | assertEndsWith | Asserts that s ends with suffix. |
Method | checkPermissions | Check if the used_permissions match expected_permissions. |
Method | assertEmailQueueLength | Pop the email queue, assert its length, and return it. |
Method | _unfoldEmailHeader | Unfold a multiline email header. |
Inherited from SoyuzTestPublisher (via TestNativePublishingBase):
Method | setUpDefaultDistroSeries | Set up a distroseries that will be used by default. |
Method | prepareBreezyAutotest | Prepare ubuntutest/breezy-autotest for publications. |
Method | addFakeChroots | Add fake chroots for all the architectures in distroseries. |
Method | regetBreezyAutotest | Undocumented |
Method | addMockFile | Add a mock file in Librarian. |
Method | addPackageUpload | Undocumented |
Method | uploadBinaryForBuild | Return the corresponding BinaryPackageRelease . |
Method | publishBinaryInArchive | Return the corresponding BinaryPackagePublishingHistory. |
Method | createSource | Create source with meaningful '.changes' file. |
Method | makeSourcePackageSummaryData | Make test data for SourcePackage.summary. |
Method | updatePackageCache | Undocumented |
Method | _findChangesFile | File with given name fragment in directory tree starting at top. |
Ensure corrupt binary fields are written correctly to indexes. This is a regression test for bug 436182. During upload, our custom parser at: lp.archiveuploader.tagfiles.parse_tagfile_lines strips leading spaces from subsequent lines of fields with values spanning multiple lines, such as the binary field, and in addition leaves a trailing ' ' (which results in a blank line after the Binary field). The second issue causes apt_pkg.TagFile() to error during germination when it attempts to parse the generated Sources index. But the first issue will also cause apt_pkg.TagFile to skip each newline of a multiline field that is not preceded with a space. This test ensures that binary fields saved as such will continue to be written correctly to index files. This test can be removed if the parser is fixed and the corrupt data has been cleaned.
Ensure correct binary fields are written correctly to indexes. During upload, our custom parser at: lp.archiveuploader.tagfiles.parse_tagfile_lines strips leading spaces from subsequent lines of fields with values spanning multiple lines, such as the binary field, and in addition leaves a trailing ' ' (which results in a blank line after the Binary field). This test ensures that when our parser is updated to store the binary field in the same way that apt_pkg.TagFile would, that it will continue to be written correctly to index files.