Example #1
0
 def merge_requested(self, category, names, master):
     self.commit_all_editors_to_container()
     self.add_savepoint(_('Merge files into %s') % self.gui.elided_text(master))
     try:
         merge(current_container(), category, names, master)
     except AbortError:
         self.rewind_savepoint()
         raise
     self.apply_container_update_to_gui()
     if master in editors:
         self.show_editor(master)
Example #2
0
 def merge_requested(self, category, names, master):
     self.commit_all_editors_to_container()
     self.add_savepoint(
         _('Merge files into %s') % self.gui.elided_text(master))
     try:
         merge(current_container(), category, names, master)
     except AbortError:
         self.rewind_savepoint()
         raise
     self.apply_container_update_to_gui()
     if master in editors:
         self.show_editor(master)
Example #3
0
 def merge_requested(self, category, names, master):
     if not self.check_dirtied():
         return
     QApplication.setOverrideCursor(QCursor(Qt.WaitCursor))
     try:
         self.add_savepoint(_('Merge files into %s') % self.gui.elided_text(master))
         try:
             merge(current_container(), category, names, master)
         except AbortError:
             self.rewind_savepoint()
             raise
         self.apply_container_update_to_gui()
         if master in editors:
             self.show_editor(master)
     finally:
         QApplication.restoreOverrideCursor()
Example #4
0
    def test_merge_file(self):
        ' Test merging of files '
        book = get_simple_book()
        c = get_container(book)
        merge(c, 'text', ('index_split_000.html', 'index_split_001.html'),
              'index_split_000.html')
        self.check_links(c)

        book = get_simple_book()
        c = get_container(book)
        one, two = 'one/one.html', 'two/two.html'
        c.add_file(
            one,
            b'<head><link href="../stylesheet.css"><p><a name="one" href="../two/two.html">1</a><a name="two" href="../two/two.html#one">2</a>'
        )  # noqa
        c.add_file(
            two,
            b'<head><link href="../page_styles.css"><p><a name="one" href="two.html#two">1</a><a name="two" href="../one/one.html#one">2</a><a href="#one">3</a>'
        )  # noqa
        merge(c, 'text', (one, two), one)
        self.check_links(c)
        root = c.parsed(one)
        self.assertEqual(1, len(root.xpath('//*[@href="../page_styles.css"]')))

        book = get_simple_book()
        c = get_container(book)
        merge(c, 'styles', ('stylesheet.css', 'page_styles.css'),
              'stylesheet.css')
        self.check_links(c)
Example #5
0
    def test_merge_file(self):
        " Test merging of files "
        book = get_simple_book()
        c = get_container(book)
        merge(c, "text", ("index_split_000.html", "index_split_001.html"), "index_split_000.html")
        self.check_links(c)

        book = get_simple_book()
        c = get_container(book)
        one, two = "one/one.html", "two/two.html"
        c.add_file(
            one,
            b'<head><link href="../stylesheet.css"><p><a name="one" href="../two/two.html">1</a><a name="two" href="../two/two.html#one">2</a>',
        )  # noqa
        c.add_file(
            two,
            b'<head><link href="../page_styles.css"><p><a name="one" href="two.html#two">1</a><a name="two" href="../one/one.html#one">2</a><a href="#one">3</a>',
        )  # noqa
        merge(c, "text", (one, two), one)
        self.check_links(c)
        root = c.parsed(one)
        self.assertEqual(1, len(root.xpath('//*[@href="../page_styles.css"]')))

        book = get_simple_book()
        c = get_container(book)
        merge(c, "styles", ("stylesheet.css", "page_styles.css"), "stylesheet.css")
        self.check_links(c)